Inspiration

At time when guest arrives like my friends or any small party, I get an opportunity to cook, though I love cooking, but I kept running into the same friction:

Test Flight LINK: https://testflight.apple.com/join/QvMpSagc

  • I’d watch a YouTube/TikTok/Instagram recipe and then waste time rewinding, pausing, and rewriting steps.
  • I’d open my fridge and think, “I have something… but what can I actually make?”
  • Meal planning felt like a separate chore that never connected to what I was already watching or what I already had.

So I built Food Vibe which is an AI cooking companion that converts short-form food content into structured recipes, helps you use up ingredients, generates goal-based meal plans you can save and add to your calendar and help you shop your groceries with one click with quick delivery app links.


What I built

Food Vibe supports multiple user flows:

  • Reel-to-Recipe: paste a YouTube/TikTok/Instagram link → get a clean recipe (ingredients, steps, prep/cook time, nutirtional goal) + 1-click ingredient shopping from quick delivery app
  • Discovery Hub: browse trending YouTube videos and convert them into recipes
  • Scan Ingredients: scan a fridge/shelf image → extract ingredients → generate recipes
  • Use It Up: enter leftover ingredients → generate recipes around them
  • Mood-based recipes: comfort / healthy / adventure / quick
  • Meal plan generation: choose a goal → plan meals → add to calendar
  • Save to Kitchen + Shopping checklist
  • Communities + Subscription (RevenueCat integration)

1-click Shopping Integrations (already done):

  • Users can purchase ingredients instantly via quick delivery apps like Zepto, Blinkit, and BigBasket — directly from the recipe page.

How I built it (Architecture + Workflow)

1) Video discovery + ingestion

  • YouTube API: fetch trending videos, search results, and video metadata (title, channel, thumbnails, etc.)
  • I store video IDs + metadata so the app can show fast lists and avoid re-fetching.

2) Video → text (transcript)

  • Supadata API: convert video content into text (transcript/summary-style extraction depending on the source)
  • This transcript becomes the raw input for recipe extraction.

3) Recipe extraction + transformation (LLM layer)

  • Gemini Transform: turns messy transcript text into a structured recipe:
    • title, servings, prep time, cook time
    • ingredients (with quantities + units)
    • step-by-step instructions
    • tips / substitutions
  • I also use a “transform” step to adapt recipes based on:
    • ingredients you have at home
    • ingredients to avoid
    • time constraints (quick mode)

4) Image → ingredients (vision)

  • Gemini OCR / Vision: scan fridge/shelf images and extract ingredient candidates.
  • Then the extracted items feed into Use It Up and recipe generation.

5) Shopping + checkout handoff

  • From the final ingredient list, Food Vibe maps items to supported quick-commerce providers.
  • Users can tap “Buy Ingredients” and complete purchase via Zepto / Blinkit / BigBasket (one-click handoff).

6) Personalization + saving

  • Login + onboarding preferences (avoid ingredients, meal types, quick recipes)
  • Save recipes to My Kitchen
  • Generate meal plans and push into a calendar flow
  • Shopping list with check-off UX

What I learned

  • How to design multi-step AI pipelines (input → extraction → normalization → output)
  • Prompting patterns for structured outputs (stable formatting, JSON-like recipe objects)
  • Handling API constraints (rate limits, quotas, retries, caching)
  • Building UX for AI features so users feel in control (edit/transform/save)
  • Quality improvements using validation:
    • ingredient parsing + deduping
    • step completeness checks
    • fallback logic when transcript/OCR quality is poor
  • Setting up subscriptions for the Apple App Store

    • Creating subscription products in App Store Connect
    • Understanding subscription groups, pricing, localization, and review requirements
  • Running TestFlight properly

    • Uploading builds, managing internal/external testers
    • Handling review steps for external testing and using feedback to iterate
  • Releasing production builds using VibeCode app

    • Generating iOS builds, managing credentials/profiles
    • Debugging build pipelines and learning how release workflows differ from dev builds
  • RevenueCat integration (Products, Offerings, Entitlements)

    • Creating products in Apple (subscriptions / IAP) and syncing them into RevenueCat
    • Setting up Offerings and mapping them to correct products
    • Creating and attaching Entitlements so the app can unlock premium features reliably
    • Generating and using the In-App Purchase API Key in App Store Connect to sync products automatically
  • Connecting the full subscription flow

    • Paywall logic, restoring purchases, and validating premium access
    • Making sure the UI and access control match what RevenueCat returns (entitlement active/inactive)

Challenges I faced

  • Subscriptions & release process complexity

    • The entire Apple + RevenueCat subscription setup took significant time:
    • Product setup in App Store Connect
    • API key setup + syncing products
    • Offerings + entitlements mapping
    • Ensuring premium unlock behaves correctly across installs / restore purchases
  • Fastlane / iOS build errors

    • Handling build failures during iOS pipelines (pods, signing, build scripts)
    • Debugging packaging and deployment issues that block uploads to TestFlight/App Store
  • Deep linking / Share Sheet integration

    • Implementing a feature where users can share a video link (YouTube/TikTok/Instagram) and the app opens directly from the Share button into the Reel-to-Recipe flow
    • Managing edge cases like different share formats, app cold-start, and routing users to the correct screen
  • End-to-end reliability

    • Reducing friction in multi-step flows (video → transcript → recipe → transform → save → shop)
    • Handling API latency and failures gracefully without breaking the user experience
  • Transcript quality variance: some videos have fast speech, slang, missing details, or background noise → recipe extraction can become incomplete.

  • OCR noise: fridge images can be blurry, angled, or low light → ingredient extraction needs cleanup + deduping.

  • Hallucinations / missing quantities: videos often skip exact measurements → I added logic to label estimates and keep outputs realistic.

  • Latency: chaining APIs (YouTube → transcript → Gemini → post-processing) can slow down UX → caching and async flows help.

  • Normalization: mapping “tomatoes / tomato / cherry tomatoes” and unit handling (grams, cups, tbsp) into consistent ingredient objects.

  • Edge cases: long videos, non-recipe content, multi-dish videos, or creators who don’t list ingredients clearly.

  • Product + business integration: subscription gating and keeping the free experience useful while still driving upgrades (RevenueCat).


What’s next

  • Better ingredient detection (packaging + produce recognition) and smarter dedupe
  • More accurate nutrition/goal planning and macro-aware meal plans
  • Creator attribution + “source-of-truth” linking for transparency
  • Faster pipeline with partial rendering (show recipe skeleton first, then enrich)

Built With

Share this project:

Updates