Due to hoarding by some individuals, there are many people who are stuck in the middle of the corona virus pandemic and have the possibility of being unable to go to their nearby Walmart and pick up a toilet paper roll. At the same time, hospitals are also now requesting supplies and materials from the community. For example, there are several hospitals globally who are accepting 3d printed parts for face masks and even ventilator masks (it's become that serious!). If the community has so many resources, then there should be a proper platform to facilitate the sharing of these resources! The name TP.FLOW comes from the idea that if the community were to spread out the toilet paper, everyone would have a
ToiletPaperOverflowException (haha so funny)!
What it does
By signing in, you're automatically connected to a network of other users that can request or deliver items to you. There are also hospitals on the site that can request materials from the community, and people can accept a request to deliver it! Features include: works across all platforms (Desktop, Mobile), PWA support, integration with Google Maps, sign in with Google account, SMS status notifications on requests and deliveries.
How I built it
I built this entirely on Google's Firebase. The hosting and database are both by Firebase and Firestore, while Firebase functions also help manage the sending of SMS messages. The entire web app is written in React and material-ui, a Material Design component library for React. All of these wonderful libraries and frameworks and services have allowed me to write such a complex program in such a short amount of time!
Challenges I ran into
I definitely had to constantly ditch several fun ideas that I had for this project due to the time constraints, and also given the tight constraints, I could no longer code to the level of perfection that I usually do. But surprisingly, my biggest obstacle is my own body! My mental health was fine and energetic throughout the entire hackathon, but my left forearm is about to break just from typing this right now!
Accomplishments that I'm proud of
I'm very proud of how fast that I got so many UI components of the application actually finished during this short time frame. Usually projects like these take 5 work days, but this only took me one and a half days! I'm also extremely proud of how I used Firestore, because I felt like this is a really good way to organize information in a database without cluttering it while making it even more effective and efficient.
What I learned
I learned how to work even faster (wooow!!) but also learned what I know I have to include for a product to work and what I have to leave out if I wanted to push it out in such a fast deadline. Oh, I also got caught up with new features in React :)
What's next for TP.FLOW
TP.FLOW needs ways to attach like links to the requests, basically making the requests more featureful. It should also be integrated with google maps more closely and the delivery process needs to be developed to be more similar to how many modern food delivery services work. Due to the time constraints, there are also many parts of UX specifically that needs work on, as the app may not feel totally intuitive to use. It also needs more sign-in methods and in general, more quality of life features.
Try It out
firebase, react, twilio