Inspiration

Our team had this idea while brainstorming possible app ideas a long time ago, long enough that Irma was still relevant to an extent. We never did anything with it because we did not compete at hackathons at the time but it recently came up. How useful would it be to have up-to-date information on what a store still has in stock when preparing to ride out a hurricane? So we decided to dust off the idea and get to work building it here at ShellHacks 2020.

What it does

Crisis Check is a web-app designed to help people preparing to ride out a natural disaster by providing information as to what store still has food, water, or other essentials in stock. During a hurricane prep rush, stores can run out of water in a matter of hours. By crowdsourcing this information from people who have just been at that store, we are able to provide the most up to date information on where is you best bet to secure those much needed supplies for you and your family. Nothing is worse than spending half an hour waiting in line to get into a Publix just to find out they ran out of water an hour ago and you waited for nothing. This is a situation we aim to fix.

How we built it

We leveraged Github in an effort to segment our efforts and have team members working on subjects where they are more effective without bottle-necking each other. By using version control with Github, our front-end developers were able to develop the look and feel of our app without having to wait for the back-end to be completed and vice versa. We used React for the front-end, leveraging the Google Maps libraries and Google Places API hooks to deliver a well built map interface in the restricted time we had available. We used Node.js to run the code for the back-end. Our database ran on Microsoft SQL Server, and we used Sequelize to build the table object on our back-end and migrate them when the SQL Server was complete.

Challenges we ran into

We spent a lot of time wondering how we were going to be able to harvest up to date information on what store has what resource. We thought of maybe referencing Store APIs such as Publix or Sedano's but decided that this was not viable on a bigger scale and the data was only as up-to-date as the same day. Finally we decided to crowdsource that data from our own users. After all, who knows more about what a store has than a customer that was just there?

Deciding how we were going to display the stores that would sell the resources necessary to ride out a hurricane. We shot some ideas back and forth but in the end, the only viable solution was to leverage the google places API which already provides not only the type of store in question, but also a wealth of other important information such as the geographic location of the store and their hours of operation.

Accomplishments that we're proud of

This is the first hackathon where we were able to finish and submit our project to Devpost for judgement. We, as a team, feel very proud of this. We take this as a sure sign that our skills as programmers and our synergy as teammates is improving over time because we definitely would not have been capable of this a couple of months ago.

One point of pride is the database, as it is completely scalable to keep up with a spike of popularity for the application in the case of an active Crisis!

What we learned

Our team definitely picked up some amazing new skills over the course of this hackathon. We implemented the Google Places API which we had never used before. Our front-end developers worked around the clock utilizing everything they knew about React to build our app's User Experience, including some things they picked up on the fly.

What's next for Crisis Check

In terms of Continuous Work, the next couple of things to work on for Crisis Check include: making a more memorable and detailed User Interface, improving security on our application (We hashed the passwords but not much else), and optimizing wait time for the user by creating more efficient paths to query the Google Places API for the store information.

Share this project:

Updates