Inspiration
We wanted to make it easier for anyone to start cooking and eating healthy, even if they only have a few ingredients at home. By letting users input what they have on hand, Personal Chef helps reduce food waste and takes the guesswork out of healthy meal preparation.
What it does
Personal Chef generates a recipe based on your answers to a simple form.
- You can either tell it a specific dish you want to cook,
- Or you can answer a few questions about your preferred diet, cuisine, and the ingredients you have available.
- The app then generates a recipe tailored to your inputs.
How we built it
- We used Next.js for the frontend.
- Perplexity’s Sonar model is used to generate recipes, with a custom JSON response format for easy integration.
- After generating a recipe, we make another call to Sonar to fetch an appropriate image using the recipe name.
- Recipes can be saved to local storage for now, making it quick and easy to revisit your favorites.
- We implemented error handling for invalid inputs (like non-food ingredients or unrecognized cuisines), and the app provides alternative recipe suggestions when that happens.
Challenges we ran into
- Getting the right image for the generated recipe was tricky, especially when the initial prompt didn’t include a specific dish name. Sometimes the images didn’t match the recipe title, so we had to make an additional API call to get a more accurate image.
- Handling a wide variety of possible user inputs, including typos or completely unrelated entries.
Accomplishments that we're proud of
- Robust error handling for invalid or unusual user inputs.
- Dynamic prompt engineering that adapts to different user flows.
- Seamless integration between recipe generation and image retrieval.
What we learned
- Users will input anything—sometimes things you don’t expect! Prompt engineering and input validation are crucial for a good user experience.
- Iterating quickly and focusing on core functionality is key for hackathon success.
What's next for Personal Chef
- Add user accounts so recipes can be saved across devices.
- Expand the form to include more personalization options (e.g., allergies, cooking time, skill level).
- Recommend recipes based on saved favorites and user preferences.
- Add recipe ratings and use them to improve future recommendations.
Built With
- nextjs
- perplexity
Log in or sign up for Devpost to join the conversation.