Meals is the much needed medium between restaurants with excess food and nonprofit organizations that distribute food to the needy. It allows nonprofits to be notified of all the restaurants that have food that will potentially go in the trash if it's not picked up. This will reduce food waste, as well as take a small but crucial step in addressing hunger in our communities.
After noticing that lots of food tend to be thrown out at the end of the day at restaurants we wanted to come up with a solution that addressed this problem whilst helping non-profit organizations to provide meals for lower-income people. Being from LA where poverty is rampant, we believe not enough is being done to address the issue, hence why we created Meals.
What it does 💻
Charities can go on to the system and type their location which will allow them to see restaurants nearby from there they can click the restaurant and see what stock they have available. If it is something beneficial to the charity they can go to the restaurant and pick up the food that would have been wasted instead. Nonprofits can check what food is available and how much is left.
How we built it 🛠
We coded the front end elements in HTML/CSS using a few API libraries. We used the Google Maps, Geocoder, and Geolocation API. Through the Google Maps API, we were able to render the map that is the center point of the program. We save all the restaurant provided data such as available food on a Google Firebase Firestore NoSQL database. Once the volunteer enters their address, we search for available restaurants near them offering food by parsing through the database' entries. We use the Google Maps API to place markers and we have created a CSS sidebar that allows them to click on a restaurant and view the available food.
We learned the importance and power of collaborating in a team. We learned that communication is key and that together we can make projects that have the potential to impact society. When we put our minds together we can achieve great heights.
Challenges we ran into 😤
Communication was a challenge as we all live in different time zones. Other challenges were figuring out complex libraries built for professional use like Firebase Firestore within a 36 hour time crunch. It was our first time using a Firebase Firestore let alone a NoSQL database. We had to spend a great deal of time learning the ins and outs of working with data on Firestore. Also we weren't able to find someone that was strong in CSS and had to learn a lot of stuff to get the UI looking like what we envisioned it. Ultimately, we didn't have enough time to dedicate to the UI/UX since we focused heavily on getting the functionality up and running.
Accomplishments that we're proud of 🙂
We are proud that we could accomplish this within the 36 hour mark. There was a lot to do and sometimes we didn't think we could finish it at all. We kept trying step by step and eventually reached a point where we were satisfied with our work. We were also proud of integrating so many APIs and technologies in order to get the web app to work properly. Ultimately, we are pleased to have provided a solution for one of the largest problems plaguing the world.
What we learned 📔
We learned how to use many new technologies such as Firestore and the Google Maps API. We learned how powerful Firestore can be since their is so much customizability compared to normal DB programs such as SQL.
What's next for Meals? 🔜
We hope to deploy the application once it's fully developed. For now, we need to create a dashboard for restaurants to seamlessly add data into the platform. We also need a way to verify that nonprofits are legitimate as well as the volunteer coming to pick up the food.