Built with Google Agentic Development Kit (ADK) & Gemini 2.5 Flash
An intelligent, agentic meal planning companion that transforms your fridge contents and receipts into personalized, chef-curated meal plans using advanced multi-modal AI.
ChefByte is the next evolution of the SnackOps project, reimagined as a fully agentic system. It moves beyond simple recipe search to true autonomous decision-making.
Powered by Google's Agentic Development Kit (ADK) and Gemini 2.5 Flash, ChefByte doesn't just follow scriptsβit thinks. It analyzes your ingredients, understands your dietary needs, and autonomously selects the best tools to generate culinary masterpieces.
π True Agentic Core - Gemini autonomously decides which tools to use (Vision, Search, Variations) based on your request.
π§Ύ Receipt Scanning - Scan grocery receipts to instantly digitize your inventory and track spending.
π¨ Modern React UI - A stunning, responsive interface with glassmorphism design and smooth animations.
π Smart History - Remembers your past generations and keeps your inventory synced.
β‘ Performance Optimized - Generates 3 recipe variations in seconds using parallel tool execution.
Modern households struggle with three daily questions:
- "What's in my fridge?"
- "What can I cook with this?"
- "How do I make it healthy?"
Traditional recipe apps are static databases. They don't know your inventory, your dietary needs, or your cooking style.
We built ChefByte to be an active kitchen companion, not a passive database. By leveraging Agentic AI, ChefByte understands context. It sees your ingredients, reads your receipts, and thinks like a chef to create personalized meal plans that reduce food waste and decision fatigue.
- Reduce Food Waste: Instantly find recipes for ingredients about to expire.
- Save Money: Digitizing receipts helps you track inventory and avoid overbuying.
- Eat Healthier: Automatic macro tracking ensures you meet your nutrition goals.
- Save Time: Stop scrolling through recipe blogs. Get 3 perfect options in seconds.
ChefByte is designed to run locally on your machine for maximum privacy and performance.
| OS | Status | Notes |
|---|---|---|
| macOS | β Verified | Native support (Apple Silicon & Intel) |
| Windows | β Verified | Supports WSL2 and PowerShell |
| Linux | β Verified | Ubuntu, Debian, Fedora, Arch |
Requirements:
- RAM: 4GB minimum (8GB recommended)
- Python: 3.12 or higher
- Node.js: v18 or higher
- Internet: Required for Gemini API access
ChefByte isn't a chatbot. It's an agent.
- Autonomous Tool Selection: It decides when to use vision, when to search, and when to generate variations.
- Strategic Reasoning: It explains why it chose specific recipes based on your ingredients.
- Fallback Mechanisms: Robust error handling ensures you always get a result.
- Fridge Scanner: Identify ingredients from a messy fridge photo.
- Receipt Digitizer: Extract items, prices, and store details from grocery receipts.
- Auto-Detection: The system automatically figures out if you uploaded a fridge photo or a receipt.
Get 3 distinct variations for every request:
- Standard: A classic, well-balanced meal.
- Creative Twist: A fusion or innovative take on the ingredients.
- Quick & Easy: A simplified version for busy days.
- Macro Tracking: Calories, Protein, Carbs, and Fats calculated for every recipe.
- Dietary Filters: Vegetarian, Vegan, Keto, Paleo, and more.
- Portion Scaling: Adjust servings and watch ingredient quantities update instantly.
- Inventory Tracking: Remembers what's in your kitchen.
- Recipe History: Access your past generations anytime.
- User Preferences: Remembers your diet and calorie goals.
ChefByte uses a decoupled architecture with a FastAPI backend and a React frontend.
graph TD
User[User Interaction] --> UI[React Frontend]
UI --> API[FastAPI Backend]
API --> Agent[ChefByte ADK Agent]
subgraph "Agent Brain (Gemini 2.5 Flash)"
Agent --> Decision{Autonomous Decision}
Decision -->|Need Ingredients?| Vision[Vision Tool]
Decision -->|Need Recipes?| Variations[Recipe Variations Tool]
Decision -->|Need Search?| Search[Search Tool]
end
Vision -->|Fridge/Receipt Data| Memory[Persistent Memory]
Variations -->|Generated Recipes| UI
Search -->|Database Matches| UI
- ChefByteADKAgent: The orchestrator that manages the conversation and tool execution.
- Vision Tool: Unified tool for processing both fridge photos and receipts.
- Recipe Variations Tool: Generates 3 distinct recipe types in a single optimized call.
- Persistent Memory: JSON-based storage for user context and history.
The project is organized into two main components: a FastAPI Backend and a React Frontend.
SnackOps/
βββ ChefByte/ # π Backend (FastAPI + Agentic Core)
β βββ adk_agent/ # - Agent Logic & Tools
β β βββ tools/ # - Vision, Search, Variations
β β βββ chefbyte_agent.py # - Main Agent Orchestrator
β βββ data/ # - Recipe Databases & Memory
β βββ api.py # - FastAPI Endpoints
β βββ start_backend.sh # - Startup Script
β
βββ Chefbyte-ui/ # βοΈ Frontend (React + Vite)
β βββ src/
β β βββ components/ # - Reusable UI Components
β β βββ services/ # - API Integration
β β βββ App.tsx # - Main Application
β βββ start_frontend.sh # - Startup Script
β
βββ README.md # π Documentation
- Python 3.12+
- Node.js 18+
- Google API Key (Gemini)
git clone https://github.com/DevxD98/SnackOps.git
cd SnackOpscd ChefByte
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# Create .env file
echo "GOOGLE_API_KEY=your_api_key_here" > .envcd ../Chefbyte-ui
npm installYou can run both servers easily:
Terminal 1 (Backend):
cd ChefByte
./start_backend.shTerminal 2 (Frontend):
cd Chefbyte-ui
./start_frontend.shOpen http://localhost:3000 and start cooking! π¨βπ³
- Google ADK: Agent framework
- Gemini 2.5 Flash: LLM & Vision
- FastAPI: High-performance API
- Uvicorn: ASGI Server
- React 18: UI Library
- Vite: Build tool
- Tailwind CSS: Styling
- Lucide React: Icons
- Framer Motion: Animations
DevxD98 |
itzAditya0 |
ojasvi0407 |
MIT License - See LICENSE file for details.


