We both have friends with medical workers as parents, and the COVID-19 quarantine has provided ample opportunity for these friends to share insights into both complaints and approvals of healthcare workers. One particular complaint that we heard repeatedly was the lack of an easy method for healthcare and essential workers to access the plethora of resources that the community donates. These take the form of everything from free meals to donated PPE. Thus was born Recharge, an app aims to RECHARGE healthcare workers day after day.
What it does
Recharge synthesizes data about nearby resources for healthcare workers and displays it into an easy-to-view map and list format. Recharge displays the hours, specific benefits, directions, and phone line of each location. Users can also sort by the benefits, allowing them direct access to the things they need most.
How we built it
We utilized the Flutter framework as the mobile frontend. The cross-platform benefit (combined with easy integration with Google’s Cloud Services) was very attractive for us. For our backend, we compiled data into a google sheet, exported it as a JSON file, and directly imported the data to a Firebase Realtime Database. Additionally, Google Cloud’s Maps API was utilized for the map, address, geological coordinates, and distance data.
Challenges we ran into
It came at about T-5 hours, when Google Cloud suddenly decided to cut off our app. Why? We literally just got the 300 dollars worth of free credit! We didn’t know what was going on until we checked the Google Cloud Console: we had about 100K location distance API calls within the span of a few minutes, which meant that we had reached the threshold and all of our free credit went down the drain. It turned out that we had accidentally called the API in a forever loop for about 5 to 6 minutes (OOOFFF). We ended up reinitializing the cloud in a different account and the app worked just as well.
Accomplishments that we're proud of
For both of us, this was our first hackathon. Both of us are very passionate about building and creating, but we’ve never been in a scenario like this. For us to be able to take a wireframe and turn it into a functional app in less than two days when all we’re used to are building apps in the span of months is an incredible feeling. If we can build an app in 36 hours, then there’s no reason that we shouldn’t try to experiment with all the ideas we encounter to solve problems and do our part in making the tech community a better place.
What we learned
On the technical side, we learned about the importance of careful architectural planning before delving into the code. Our simple mental model of the app quickly became useless as we encountered challenges we hadn’t expected, and the codebase became something that we would definitely structure differently, given the chance.
On the practical side however, we learned the importance of planning and contingencies upon contingencies. This being our first hackathon, we planned some rough time blocks and gave ourselves much more breathing room than either of us thought we needed. However, that same breathing turned out to be barely enough to boost us towards successful completion. This experience definitely gave us valuable experience about the margin of error required in the scheduling of future projects.
What's next for Recharge
We look forward to growing Recharge as a tool that can help a lot of people during the coronavirus crisis. Though our data is currently limited to what we gathered manually in OC/Irvine, given more time and resources for purchasing server time and hosting, Recharge can genuinely make a large difference for the better of healthcare workers.
Even past this crisis, we believe there are many paths, both for-profit and nonprofit, for Recharge to pivot towards. For example, given a more advanced profiling feature, we could directly pair users with physical businesses in the area holding sales or events towards specific demographics. This would help not just healthcare workers, but anyone to find discounts, for the better of both the businesses getting more traffic and the users finding better deals.