I built Bite Genie because I always find myself snapping photos of cocktail menus, hoping to later recreate them at home, but knowing those photos would just get lost in my camera roll. I wondered if there was an app to turn menu photos into actual recipes I could make. There wasn't, so I built it.
# What it does
Take a photo of any restaurant menu item → get a detailed recipe Save recipes from any website Remix recipes for different diets (coming soon) Create personalized recipe cards
# Technical approach:
The menu-to-recipe pipeline uses a multi-stage approach:
Vision + OCR: Azure Computer Vision API for OCR extraction, combined with GPT-4o for visual context (plating, garnishes, presentation details that text alone misses). The dual approach handles both clean printed menus and photographed dishes better than vision-only.
Recipe generation: Claude 3.5 Sonnet for detailed recipe creation - I found it produces more reliable cooking instructions and better handles culinary terminology than GPT-4.
Ingredient extraction: Custom NER (Named Entity Recognition) model fine-tuned on ~50k recipes to parse and normalize ingredients into structured data (quantity, unit, ingredient, preparation). This enables smart substitutions and dietary adaptations.
Recipe remixing: RAG-based approach with a vector DB of ingredient substitutions and culinary techniques, so "make this vegan" actually understands what needs to change and why.
The biggest technical challenge was handling ambiguous menu descriptions. "Pan-seared salmon with lemon butter" could be executed a dozen ways. I use confidence scoring and generate multiple recipe variations, then rank them based on technique complexity and ingredient availability.
# Current limitations
- Fancy handwritten menus can be hit or miss (OCR struggles) - Complex molecular gastronomy techniques are sometimes oversimplified - Non-Western cuisines need more training data (working on this) - Cocktails with house-made ingredients/infusions require some guesswork
Free to use. No paywall on core features.
Happy to answer technical questions or hear feedback on the approach!