Dishcovery is a modern web application designed to help food enthusiasts find recipes based on what they already have in their kitchen. By leveraging the power of Google Gemini and TheMealDB API, it provides a conversational and interactive experience to transform simple ingredients into delicious dishes.
Experience a conversational AI that understands your cravings and suggests creative recipes.

Don't know what to type? Browse through over 600+ ingredients and select what's available in your pantry.

- Backend: Python (Flask) with SQLAlchemy & MySQL
- AI: Google Gemini
- Frontend: Jinja2 Templates, Tailwind CSS, Vanilla JS, GSAP
- External API: TheMealDB
- Dual Input Modes: Seamlessly switch between a natural language Chat Mode and a structured Ingredients Mode.
- Visual Uploads: Upload images of your ingredients for AI-assisted recognition.
- Social Authentication: Secure login via Google and Facebook OAuth integration.
- Smart History: Save your culinary discoveries and resume past conversations easily.
- Responsive Design: Modular component-based architecture built for both desktop and mobile.
- Python 3.8+
- MySQL Server
- API Keys for Google Gemini, Google OAuth, and Facebook OAuth
-
Clone the repository:
git clone <repository-url> cd dishcovery
-
Create and activate virtual environment:
# Windows python -m venv venv .\venv\Scripts\activate # macOS/Linux python3 -m venv venv source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
Create a .env file in the root directory and fill in the following details (refer to .env.example):
SECRET_KEY=your_secret_key
FLASK_DEBUG=True
DB_HOST=127.0.0.1
DB_PORT=3306
DB_NAME=dishcovery_db
DB_USERNAME=your_username
DB_PASSWORD=your_password
GOOGLE_CLIENT_ID=your_google_id
GOOGLE_CLIENT_SECRET=your_google_secret
FACEBOOK_CLIENT_ID=your_facebook_id
FACEBOOK_CLIENT_SECRET=your_facebook_secret
GEMINI_API_KEY=your_gemini_api_key
MEALDB_BASE_URL=https://www.themealdb.com/api/json/v1/1/python run.pyDishcovery © 2026
