Inspiration
We were tired of spending too much at the grocery store, eating unhealthy foods, and preparing the same bland meals every day of the week. We identified this problem in ours, and a lot of other college kids lives, and sought out to find a solution to spending hours digging for affordable, delicious meal recipes.
What it does
PlatePerfect takes your inputs about allergens, preferences, and cost (coming soon...) parameters, then suggests a full week of recipes for you to prepare and enjoy. It provides 3 meals per day, custom to user preference, and offers nutrition information, required ingredients, and advanced step by step instructions on completing the meal.
How we built it
We created a React-based front end for the web page, utilizing JavaScript and the aforemetioned React framework to develop the UI. Our utilization of node.js, npm, and Next.js allowed us to seamlessly develop components and connect them to our back end. We developed said back end in Python, utilizing an online recipe sharing API to pull ingredients and nutrition information. In addition, we took advantage of the Flask Python framework to help with deployment and employed a separation of concerns between our API endpoints, driver functions, database models, etc. Lastly, our data was stored in a mysql database, allowing us to easily add, remove, and alter user information.
Challenges we ran into
One of the primary issues we ran into was the Python virtual environment. Neither of us were very familiar with this concept, but we wanted to use it to keep our dependencies in line and not run into issues down the road. Our unfamiliarity with the various commands and overall idea of a virtual environment led to several (embarrassing) mistakes and wasted times, yet we used the resources available to us to overcome these obstacles.
Accomplishments that we're proud of
We are extremely proud of ourselves for, in such little time, developing a website/cooking resource that we and many others could actually utilize and benefit from. The majority of our side project experience hasn't been particularly helpful to others, so we are proud of the fact that we could benefit the community with this idea.
What we learned
We learned very valuable lessons about brainstorming, communication, and the power of diving deep into topics before coding a single line.
What's next for PerfectPlate
We hope to continue growing PerfectPlate and adding increasingly effective tools on the web page. Some of our main ideas that we didn't have a chance to get to this weekend include advanced nutrition metrics, average cost of ingredient data across major supermarkets, and caloric goals for those are are trying to lose, maintain, or gain weight.
Built With
- flask
- javascript
- mysql
- next.js
- node.js
- npm
- pymysql
- python
- react
- spoonacular
- sqlalchemy
Log in or sign up for Devpost to join the conversation.