Inspiration

  • We don't have an idea for this hackathon. But we know what we do best, I and Long good at making bots (I also have a Discord badge xD)

What it does

  • Backend: Scrap data from wordometers and John Hopkins University data and serve to the bot
  • Discord bot: fetch data from my backend and show it to the user!
  • Prediction: Predict how many cases will go up or down tomorrow.

How we built it

  • My backend: John Hopkins: It already on Github and served on the .csv file, I just need to send a request and convert it to JSON.
  • Wordometers: Send GET request using Axios to WOM and then parse to cheerio (same like jQuery) to scrape data.
  • Interval: We set intervals to scrap data every 10 minutes.
  • Prediction: We use matplotlib to draw graph, then we use exponential and logistic growth algorithm to predict!
  • Database: I currently using Mongodb atlas to access data easier.

The database we hosted on the cloud (Mongodb Altas), anything else we will host on Google Cloud VM.

Challenges we ran into

This is the first time we join the hackathon so we are nervous about the projects and code.

  • Backend: I have problems with scraping data (syntax). the JHU .csv file when converting to .json formatted poorly so I need to reformat it.
  • Bot: we are bad at UX/UI so it's hard to design
  • Prediction: We need a lot of research to make that.
  • We work on different projects with different languages so it's hard to keep track progess of teammates!

What we learned

  • Create backend express.js server with routes.
  • Scraping data.
  • Use machine learning to predict using data.

What's next for COV Bot

  • We will focus to redesign to make it more user-friendly and we will make more feature using the API (the API have more endpoints but the bot not using that)
  • Set custom timer and send regularly data for user

How to use the bot

  • Prefix: hk!
  • Search for specific data on a country: hk!country (EX: hk!country us)
  • Search for specific data in US State: hk!state (EX: hk!country texas)
  • Predict next case date on a country: hk!predict (EX: hk!predict US)

Built With

Share this project:

Updates