An AI-powered recipe assistant that finds recipes based on your ingredients and provides step-by-step cooking guidance. Features ingredient detection from photos using Google Gemini Vision and intelligent recipe recommendations.
- 🔍 Smart Recipe Search: Uses Google's Gemini AI to find recipes matching your ingredients
- 🖼️ Ingredient Vision Agent: Upload food photos to auto-detect ingredients via Google Gemini Vision model
- 👨🍳 Interactive Cooking Mode: Step-by-step guidance through each recipe
- ⏰ Built-in Timers: Automatic timer detection and countdown for cooking steps
- 🛡️ Food Safety Tips: Includes temperature guidelines and safe handling practices
- 📱 Responsive Design: Works on desktop and mobile devices
- Open
http://localhost:8081in your browser - Enter ingredients manually or upload a food photo
- Click "Search Recipes" to get AI-powered suggestions
- Select a recipe to start interactive cooking mode
- Press the "Next" button to move to the next step
- Python: 3.8 or higher
- Node.js: 16.0 or higher
- uv: Modern Python package manager (recommended) - Install uv
- Google Gemini API Key - Get one from Google AI Studio
# Clone the repository
git clone https://github.com/Code-Voyagers-ODSC/code-voyagers.git
cd code-voyagers
# Set up environment variables
echo "GEMINI_API_KEY=your-api-key-here" > .env
# Run with Docker Compose
docker-compose up --buildVisit http://localhost:8081 in your browser.
git clone https://github.com/Code-Voyagers-ODSC/code-voyagers.git
cd code-voyagersInstall Dependencies
Option A: Using uv (Recommended)
# Install uv package manager if needed
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install dependencies automatically
uv sync
# Activate virtual environment
source .venv/bin/activate # macOS/Linux
# or
.venv\Scripts\activate # WindowsOption B: Using pip
# Create virtual environment
python -m venv venv
source venv/bin/activate # macOS/Linux
# or
venv\Scripts\activate # Windows
# Install dependencies
pip install -r requirements.txtConfigure API Key
# Create .env file with your API key
echo "GEMINI_API_KEY=your-api-key-here" > .envStart Backend (Primary Method)
cd src
python main.pyAlternative (if main.py doesn't work directly):
cd src
uvicorn main:app --reload --port 8000The backend will be available at http://localhost:8000
Start Frontend
# In a new terminal
cd frontend
npm install
npm run devThe frontend will be available at http://localhost:8081
- FastAPI - Web framework for the API
- Google Generative AI - Gemini models for recipe suggestions and vision
- Pillow - Image processing for ingredient detection
- uvicorn - ASGI server for running the API
- Next.js - React framework for the UI
- React - Frontend library
- TailwindCSS - Styling
code-voyagers/
├── src/
│ ├── main.py # FastAPI app entry point (run this!)
│ ├── agents/
│ │ ├── suggester_agent.py # Recipe AI agent
│ │ ├── ingredient_vision_agent.py # Photo ingredient detection
│ │ └── sous_chef_agent.py # Cooking guidance agent
│ └── tools/
│ ├── search_tool.py # Recipe search functionality
│ └── timer_tool.py # Cooking timers
├── frontend/ # Next.js React app
├── requirements.txt # Python dependencies
├── pyproject.toml # uv configuration
└── .env # API keys (create this)
Backend won't start:
- Ensure Python 3.8+ is installed:
python --version - Check virtual environment is activated (see
(.venv)or(venv)in terminal) - Verify API key is set:
cat .env(should show your Gemini API key)
"ModuleNotFoundError":
- Make sure you're in the activated virtual environment
- Try:
pip install -r requirements.txt(even if using uv)
Frontend issues:
- Confirm backend is running on port 8000
- Check Node.js version:
node --version(need 16+) - Try:
npm install --forceif dependency issues
API errors:
- Verify your Gemini API key is valid at Google AI Studio
- Check API quotas/limits in Google Cloud Console
Port already in use:
- Backend: Change port in
main.pyor usepython main.py --port 8001 - Frontend: Use
npm run dev -- --port 3001




