Inspiration
Ever struggled to find a place to eat where you and all your friends have ample options? Have dietary restrictions made is so that half the group splits one dish while everyone else can sample half the menu?
Group hangouts often struggle to make it out of the group chat because its incredibly challenging to agree on a single place where everyone can eat without worries. Finding a suitable restaurant involves going on a research mission, looking up menus, reading many, many reviews, looking through blog posts and Reddit posts, and even calling restaurants, all to find out there's only one possible safe option. I wanted to flip that. Its 2026, that process does not need to be manual anymore.
What it does
Lettuce Eat finds restaurants where every member of a group has real options.
First, pick a location, and the radius within which you want a restaurant. Then, create a new group or use an existing one, and add each group member's individual dietary restrictions (this ensures that the agents find options that satisfy all the conditions).
Then, the agent does the work: it goes on the research mission and returns a curated list of restaurants, ranked by how well they are able to accommodate every group member!
Every claim the agent makes is backed by an exact quote and a link, and each is labeled by how well it’s supported:
- Official source: the restaurant’s own site states it.
- Community verified: people report it, but the restaurant hasn’t confirmed it.
- Questionable: we couldn’t verify it online, so call to check.
- Warning reported: a source mentions cross-contact or lack of safe options.
How we built it
The backend is a Python FastAPI service with a pipeline that finds venues, collects pages from each source, extracts claims, verifies them, and scores them. Gemini extracts data from the web and discovers sources.
Challenges we ran into
The biggest challenge of this project was automating the "research mission" phase, where the agent was responsible for searching for restaurants and validating their feasibility for a group. Frequently, the list of restaurants were either missing many restaurants that meet the criteria in that area, or the confidence for all listed restaurants was really low. Tuning this search and rating process was the most challenging part of this project.
Accomplishments that we're proud of
This project is a tool that I hoped existed for a long time, and I'm really glad to be building it. This web-app is able to search by both text and using a map, which makes it more intuitive and easier to use. The ability to save groups is also very useful to set up for different groups, so that finding places to meet is an even more seamless process!
What we learned
Through this project, I learned a lot about how to iterate on an idea and add new features to make it holistic. Initially, Lettuce Eat only supported text input, but as I was using the app and finding different pain points with it, I was able to make new design decisions and update the app to be more user friendly.
Through this project, I also rely on the Gemini API more than connecting to multiple external APIs. Through this, I learned a lot about how to handle the autonomy that Gemini has within my program, and how to find different ways to get quality results out of it.
What's next for Lettuce Eat
Transforming Lettuce Eat into something that exists on your phone, available almost as soon as you think of it!
Improving the user experience, and adding additional features to reimagine finding restaurants, including filtering by price, cuisine, and vibes.
Log in or sign up for Devpost to join the conversation.