🍽️ Inspiration

Chef’s Table was born from a simple observation:

Beautiful recipe content lives on the internet…
but real cooking happens in messy kitchens with limited time and ingredients.

We wanted to bridge the gap between aspirational food discovery and practical home cooking by creating a product that feels:

  • ✨ Curated like a chef’s notebook

  • 🧠 Intelligent like a kitchen assistant

  • 🏡 Useful in everyday life

At its core, Chef’s Table answers the timeless question:

“What can I cook with what I already have?”


🚀 What It Does

Chef’s Table is an AI-powered culinary workspace that helps users move seamlessly from inspiration → planning → cooking.

✨ Core Capabilities

🧠 AI-Magic Importer

The AI-Magic Importer is the heart of Chef’s Table.
It converts messy, real-world content into clean, structured recipes — automatically.

📥 Supported Inputs

  • Recipe URLs (blogs, chef websites)

  • Raw copied text

  • Images (handwritten notes, screenshots)

  • PDFs (cookbooks, shared documents)

⚙️ How It Works

  1. Content is uploaded or shared into the app.

  2. A Cloud Function triggers AI parsing (Gemini).

  3. The system extracts semantic structure:

- Ingredients

- Quantities

- Steps

- Timings

- Tools
  1. A validation layer normalizes everything into a consistent schema.

RawContent→AI ParsingStructuredRecipe→ValidationCanonicalModelRawContentAI Parsing​StructuredRecipeValidation​CanonicalModel

This ensures every imported recipe behaves like a native Chef’s Table recipe, regardless of source quality.

✅ Why This Matters

Most recipe apps store links.
Chef’s Table understands recipes.


🧺 Fridge Scraping (Pantry Intelligence)

The Fridge Scraping feature helps users cook from what they already own — reducing waste and decision fatigue.

📷 Input Methods

  • Manual ingredient entry

  • Quick-select pantry items

  • (Future-ready) Image-based fridge capture

🧠 Ingredient Matching Engine

The system evaluates recipe feasibility using a pantry-to-recipe similarity function:

MatchScore=∣Ingredientsavailable∩Ingredientsrequired∣∣Ingredientsrequired∣MatchScore=∣Ingredientsrequired​∣∣Ingredientsavailable​∩Ingredientsrequired​∣​

Recipes are ranked by:

  • Ingredient coverage

  • Substitution flexibility

  • Preparation complexity

Recommendation=f(MatchScore, Simplicity, UserPreference)Recommendation=f(MatchScore, Simplicity, UserPreference)

🍳 Result

Instead of asking:

“What should I cook?”

Users see:

“Here’s what you can cook right now.”


🏗️ How We Built It

The system combines a cross-platform Flutter client with a server-side AI processing pipeline.

Tech Stack

Layer Technology
Frontend Flutter (iOS + Android)
Backend Firebase (Auth, Firestore, Storage, Functions)
Server Logic TypeScript Cloud Functions
AI Processing Gemini via Cloud Functions
Monetization RevenueCat
Offline Support Local caching + sync reconciliation

🔄 Architecture Flow

User Input → Upload / Paste / Scan
           ↓
Cloud Function Triggered
           ↓
AI Parsing + Normalization (Gemini)
           ↓
Structured Recipe Model Stored in Firestore
           ↓
Client Sync + Local Cache
           ↓
Offline-Friendly Cooking Experience

📐 Data Normalization Concept

AI-generated content can vary widely in format, so every imported recipe is passed through a Normalization Layerbefore being saved.

Canonical Recipe Model

Each recipe is transformed into a strict internal structure:

Recipe {
  title: string,
  ingredients: Ingredient[],
  steps: Step[],
  time: Duration,
  servings: number,
  metadata: {
    source,
    confidenceScore,
    cuisine,
    tags[]
  }
}

This guarantees that recipes imported from a blog, PDF, or image behave identically inside the app.


Recommendation Logic (Human-Friendly Representation)

Instead of relying on a single signal, recipe suggestions are ranked using a weighted blend of:

Signal Meaning Why It Matters
Pantry Match How many required ingredients are already available Encourages cooking without extra shopping
User Preference Learned cuisine/style affinity Personalization
Simplicity Effort required (steps, tools, time) Practical for daily cooking

Conceptually:

Recommendation Score =
  Pantry Compatibility
+ Personal Preference Alignment
+ Ease of Preparation

⚙️ Challenges We Ran Into

1️⃣ AI Output Is Flexible — Cooking Data Must Be Rigid

AI may interpret the same ingredient differently:

  • “2 tomatoes”

  • “Two ripe Roma tomatoes”

  • “Tomatoes (approx. 200g)”

To prevent inconsistency, we enforce a measurement validation step:

Extract → Standardize Units → Validate → Store

If standardization fails, the system falls back to assisted parsing rather than saving unreliable data.


2️⃣ Multi-Source Import Requires a Staged Pipeline

Different formats require different handling strategies:

Source Type Processing Strategy
URL HTML parsing + semantic cleanup
Image OCR → structure detection
PDF Layout-aware extraction
Raw Text Direct AI structuring

Pipeline Overview

Input → Format Detection → AI Extraction → Schema Validation → Canonical Recipe

3️⃣ Making Async AI Feel Instant

AI processing runs in the cloud and can take several seconds.
To avoid blocking the user experience, we designed a progressive UX model:

User Imports Recipe
    ↓
Instant Placeholder Appears
    ↓
Background Processing Completes
    ↓
Structured Recipe Replaces Placeholder

This keeps the app feeling responsive even during heavy parsing.


🏆 Accomplishments We’re Proud Of

✅ A complete multi-source recipe ingestion system
✅ End-to-end AI workflow from raw content → structured cooking data
✅ A polished, chef-centric UI that feels editorial rather than utilitarian
✅ Cohesive flows across:

Discovery → Save → Plan → Shop → Cook

📚 What We Learned

🔐 Strong Data Models Are Essential When Using AI

Without schema enforcement, AI output entropy grows:

[
Entropy_{recipe} \propto Lack\ of\ validation
]

Resilient models reduce ambiguity and improve UX consistency.


🔁 Always Design Fallback Paths

Every AI step must have:

  • Deterministic validation

  • Retry logic

  • Graceful degradation


⚡ Lightweight Tooling Enables Faster Iteration

Over-engineering slows experimentation.
We optimized for deployability over theoretical purity.


🔮 What’s Next for Chef’s Table

🗣️ Recipe Narration Screen (Voice-Guided Cooking)

We are introducing a hands-free cooking mode designed for real kitchen environments.

🎧 Features

  • Step-by-step narrated instructions

  • Voice command navigation:

    • “Next” → Move to next step
    • “Repeat” → Replay current step
    • “Previous” → Go back
  • Auto-scroll synchronized with narration

  • Screen stays awake during cooking mode

🧠 Interaction Model

UserVoice→IntentRecognitionCommand∈{Next,Repeat,Previous}→StepNavigatorUserVoiceIntentRecognition​Command∈{Next,Repeat,Previous}→StepNavigator

🍽️ Goal

Turn recipes into a guided cooking experience, not something users must constantly touch with messy hands.


Additional Enhancements in Progress

  • Smarter ingredient substitution modeling

  • Improved AI extraction confidence scoring

  • Expanded offline-first synchronization

  • Personalized discovery based on cooking history

💡 Vision

Chef’s Table is designed to become more than a place to store recipes — it aims to be an intelligent cooking companionthat understands both content and context.

Today, food inspiration is abundant but fragmented, while real-life cooking is constrained by time, ingredients, and attention. Chef’s Table brings these worlds together by combining AI understandingpantry awareness, and guided execution into a single seamless experience.

Inspiration+Ingredients+Intelligence→Confident CookingInspiration+Ingredients+Intelligence→Confident Cooking

Our vision is to create a system where:

  • Recipes are not just saved — they are understood and structured.

  • Ingredients are not forgotten — they are activated into possibilities.

  • Cooking is not a static read-through — it becomes a hands-free, narrated flow.

  • Technology fades into the background, allowing users to focus on the act of cooking itself.

Ultimately, Chef’s Table aspires to transform everyday meals into intentional experiences by helping people cook more often, waste less, and move effortlessly from “What do I make?” to “Let’s start cooking.”


Built With

Share this project:

Updates