Skip to content

offCanada/Recipe_Site_Extension_P6

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


🥗 Smart Kitchen Assistant — Recipe Site Extension

A browser extension that connects recipe websites with the Open Food Facts Canada ecosystem to provide real-time health insights, product suggestions, and smarter food decisions while cooking.


🚀 Overview

Most recipe websites only show ingredient lists without any nutritional context. This extension bridges that gap by:

  • Detecting ingredients directly from recipe pages
  • Matching them with real food products
  • Displaying health insights like Nutri-Score, NOVA, allergens, and Eco-Score

👉 Built to help home cooks make better food choices while planning meals.


✨ Features

  • 🔍 Automatic Ingredient Detection from recipe pages
  • 🍁 Canadian Products First (DuckDB dataset priority)
  • 📊 Health Insights (Nutri-Score, NOVA, Eco-Score, allergens)
  • 🧠 Ingredient Normalization (cleaning and matching)
  • 🖱 Interactive Sidebar UI (non-intrusive design)
  • 🔎 Product Search & Right-click Lookup
  • Fast Queries using DuckDB (Primary Source)
  • 🌍 Fallback to Open Food Facts API
  • Add Missing Product to OFF
  • 🌐 Bilingual Support (EN/FR)
  • 🧪 DuckDB-WASM (Experimental Feature)

🏗️ Architecture

Recipe Website
       ↓
Ingredient Detection (DOM Parsing)
       ↓
Ingredient Normalization
       ↓
DuckDB (Primary)
       ↓
Fallback → Open Food Facts API
       ↓
Health Insights + Product Matching
       ↓
Sidebar UI (Extension)

⚙️ Tech Stack

  • JavaScript / TypeScript
  • Browser Extension APIs (Chrome MV3, Firefox MV2)
  • DuckDB (Primary Data Source)
  • Open Food Facts API
  • HTML / CSS
  • MutationObserver
  • openfoodfacts-webcomponents
  • Rule-based logic for insights
  • Optional AI (Groq / Hugging Face)
  • DuckDB-WASM (Experimental)

📦 Installation

1. Clone the Repository

git clone https://github.com/Mounika-max-348/<your-repo-name>.git
cd <your-repo-name>

2. Load Extension in Chrome

  • Go to chrome://extensions/
  • Enable Developer Mode
  • Click Load unpacked
  • Select project folder

3. Run (Optional - DuckDB Server)

python server.py

🧪 How It Works

  1. User opens a recipe page
  2. Extension extracts ingredients
  3. Ingredients are cleaned and normalized
  4. DuckDB is queried for matching products
  5. If not found → fallback to OFF API
  6. Health insights and products are shown in sidebar

📊 Data Sources

  • 🇨🇦 Open Food Facts Canada (DuckDB dataset)
  • 🌍 Open Food Facts API (fallback)

🔮 Future Work

  • Recipe-level health scoring
  • AI-based ingredient understanding
  • Full DuckDB-WASM client-side execution

🤝 Contribution

Contributions are welcome!

  • Improve ingredient detection
  • Add support for more recipe websites
  • Enhance UI/UX
  • Optimize performance

📬 Contact


⭐ Acknowledgements

  • Open Food Facts Community
  • GSoC 2026 Mentors

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors