Problem Statement
I have to cook every day, and there are many others like me out there, whether it's for their families, roommates, friends, or even just themselves. But we don't always have the time to figure out what to make. In our busy everyday lives, many of us can't remember all the different ways to prepare certain meals, and we sometimes might be missing ingredients, or we might be in a hurry.
You can search the web for meals or recipe ideas, but you have to sort through so much time-wasting content - videos with minute-long intros, blog posts with paragraphs of the author's personal life - it shouldn't be taking so long. I want to find recipes and meal ideas fast, and I want to save them for easy access later.
So I made Meal Prep Helper.
Solution
Meal Prep Helper is an AI-powered assistant that can search and aggregate recipes for you.
- Search agent finds recipes from the web, filtering through unwanted or irrelevant content.
- Save and Edit recipes for later use.
- Use natural language to ask the agent for all kinds of recipes and meals.
Scope and How it works
Meal Prep Helper uses a NEAR AI agent for the search functionality, and a Next.js frontend for users to interact with the agent and manage their recipes.
NEAR AI Agent
The AI agent uses tool calling to read user input and form a search query to pass to a search engine. Currently, Tavily is used to search the web.
The agent workflow is as follows:
- Agent receives user input.
- If tool call triggers, agent uses Tavily API to fetch pages from the web.
- Web pages are then sent to another function with a system prompt for analyzing and extracting recipe data from the page's contents.
- Data extraction is formatted as JSON and returned by the tool call.
- AI agent sends the JSON to the user in the final message.
Frontend
The frontend Next.js website was made using create-near-app, then combined with a generated template from Vercel's v0 AI asssistant. It consists of a landing page, NEAR wallet integration to chat with the agent, chat functionality, and saving & viewing recipes.
The user workflow is as follows:
- User visits the website.
- User can log in with their NEAR wallet.
- User is asked to sign a message with their wallet before chatting with the assistant.
- User asks the assistant for a recipe idea using natural language.
- Agent processes the message (see above agent workflow).
- User receives a response from the agent, which is parsed through to create a nicely-formatted card of each recipe found.
- User can save or discard results.
Project Goals and Future Plans
Goals for the future include:
- Complete implementation for saving recipes and viewing them.
- More search engine options and higher quality results for the agent.
- Support speech input (mic from your phone, tablet, smart watch)
- Support image input (picture of a food commercial on TV, a screenshot of a cooking livestream)
- Support video input (take a short video of the inside of your fridge)
- A public database of recipe ideas that others can upload to, view, and rate, with rewards for submissions that are verified as good quality.
- Payment plan for premium features (more input methods, higher quality search results)
Built With
- javascript
- near
- nextjs
- python
Log in or sign up for Devpost to join the conversation.