Inspiration
Me and my wife like to cook, but we don't want to cook the same thing all the time. We are pretty busy, so we don't have a lot of time to find great recipes online and keep track of them. I wanted a way to view random recipes in a small collection when it was time to create our household grocery list. This tool helps me and my wife find delicious new recipes and collect them and create shopping lists in one evening.
What it does
When a user clicks the 'Spin' button, a number of random recipes will be displayed. If the user wants to cook those recipes in the upcoming week, they can click on the image or the lock icon to lock the recipe in place. They can then click the 'Spin' button again, and any unlocked recipes will be replaced by new, random recipes. The user can repeat these two actions until they are satisfied with everything they have locked. If the user is logged in, they can save the results to their account in order to keep track of the collection of recipes they have chosen to cook for the week. A logged in user can also create a shopping list based on a collection of recipes.
How we built it
I built it using Spoonacular's Food API, React Native, Next.js, and Expo, using the Solito framework to share routing between Next.js and Expo. Clerk for authentication. Convex is used as the backend, and also as an access layer to the Spoonacular API.
I added the Spoonacular API endpoint behind a convex http endpoint, so I could implement rate limiting based on IP address or by the authenticated user
Challenges we ran into
Most of the challenges with Meal Plan Jackpot were data issues because the third party vendor for recipes dont provide a good standardization between all recipes in their system. This limits the features I can build because I cannot rely on the data to be consistent.
Accomplishments that we're proud of
I am proud of the design and ease of use. It really solves the problem my wife and I have and we have been using it every time we decide what to eat for the week.
What we learned
I learned Convex is a great tool to spin up a prototype to try out concepts. I learned how Convex can be used to rate limit other external resources by using Actions. I also learned a lot of new recipes to cook!
What's next for Meal Plan Jackpot
I want to begin marketing this as a product and start charging users. I think Meal Plan Jackpot can provide a way for people who do not currently meal plan a way to begin the process without all the hassle. If I can build Meal Plan Jackpot as a way for people to meal plan, I think this could save a lot of people a lot of time and money. I also plan on creating my own collection of recipes so that I am no longer dependent on a third party data vendor.
Built With
- convex
- expo.io
- next
- react
- react-native
- typescript
- vercel
Log in or sign up for Devpost to join the conversation.