Inspiration
We were inspired to look for food after learning Hack the Skies wouldn't be serving us any meals. Choosing where to eat can feel like an endless scroll through lists and reviews, so we wanted to make food discovery feel more like an adventure. We envisioned an app where users could explore nearby restaurants, follow their cravings, and discover new cuisines and dishes along the way.
That idea became Cibo (/ˈt͡ʃi.bo/), a food discovery app that combines restaurant exploration with a personal food journal and interactive cuisine quests.
What it does
Cibo lets users explore restaurants on an interactive map, search and filter by cuisine or category, and save places they want to try or have already visited. As users zoom in, map clusters separate into individual restaurant markers, which can be selected to view restaurant details and ratings.
Beyond restaurant discovery, the Food Dex lets users collect dishes and track the cuisines they've explored. Cibo Lens uses menu photos and uploads to identify dishes and find matching entries in the catalog. Cibo Quests makes exploring new cuisines more engaging through guided challenges, discoveries, and progress tracking.
Cibo also features an AI-powered food recommender that considers users' cravings and dietary preferences to suggest restaurants from the directory.
How we built it
Cibo is built with React Native and Expo, allowing us to support iOS, Android, and web. We use Mapbox for interactive maps and restaurant clustering, while Cloudflare Workers powers our server-side AI features. Grow vision models handle food and menu recognition, and Supabase supports syncing personal collections and ratings across devices. We also structured restaurant and dish data to create a richer discovery experience than a simple map.
We designed our AI features to fit naturally into the user experience. Instead of automatically changing a user's collection, AI-generated results can be reviewed first. For example, users can verify a recognized dish before adding it to their Food Dex.
Challenges we ran into
One of our biggest challenges was making restaurant discovery work smoothly across different map zoom levels. Clusters need to communicate how many restaurants are nearby before transitioning into individual, selectable markers as users zoom in. Supporting this behavior consistently across web and native maps required careful coordination between viewport data, map layers, and restaurant details.
Another challenge was making AI useful and reliable without allowing it to generate inaccurate results. Recognition results need to match existing catalog entries where possible, remain reviewable, and handle service failures gracefully. We also kept provider credentials on the server and maintained manual discovery options so Cibo remains useful when AI services or network access are unavailable.
Accomplishments that we're proud of
We're proud of combining several different food discovery experiences into one cohesive app. Cibo brings together an interactive restaurant map, a personal Food Dex, AI-powered menu recognition, cuisine quests, and personalized restaurant recommendations.
We're especially proud of making food discovery interactive and personal rather than simply providing a list of restaurants. Each feature contributes to a larger experience that encourages users to explore new places, try unfamiliar dishes, and keep track of their culinary discoveries. We're also proud of giving users control over AI-assisted actions, ensuring that recommendations and recognition results can be reviewed before affecting their personal collections.
What we learned
We learned that building a compelling AI feature involves much more than simply connecting to a model. Reliable data, clear user controls, and thoughtful error handling are equally important. We also gained a deeper understanding of the complexity behind intuitive map interfaces, from managing clusters at different zoom levels to connecting individual markers with useful restaurant information. Most importantly, we learned that food discovery can be more than finding somewhere to eat. It can become a way to explore different cultures, try new dishes, and build a personal record of the places and cuisines we discover.
What's next for Cibo
We want to continue expanding Cibo's restaurant and dish catalog, improving food and menu recognition, and introducing more ways for users to discover cuisines and track their progress. We're also interested in expanding Cibo Quests with additional challenges and discoveries, making exploring unfamiliar foods feel like an ongoing adventure. As the app grows, we hope to make its recommendations more useful and its discovery features even more connected.
In the end, we want Cibo to turn the everyday question of where to eat into an opportunity for exploration, discovery, and new experiences.
Built With
- expo.io
- groq
- mapbox
- node.js
- postgresql
- react
- react-native
- supabase
- typescript
- wrangler
Log in or sign up for Devpost to join the conversation.