Skip to content

ChefBot is a web-based, AI-driven cooking assistant designed to make your time in the kitchen easier and more enjoyable. It helps you turn your available ingredients into delicious meals with personalized recipe suggestions, smart substitutions, and helpful cooking tips.

Notifications You must be signed in to change notification settings

NishchalKap/ChefBot

Repository files navigation

Your request to "rewrite this properly remove the double tripple * so that readme is proper" indicates a need for a clean, professional GitHub README. I'll provide a refined version of your ChefBot README, removing the redundant asterisks and ensuring all formatting is correct and visually appealing.


👨‍🍳 ChefBot: Your AI Kitchen Assistant

ChefBot is an interactive AI-powered kitchen assistant that provides recipes, cooking tips, and culinary inspiration based on your ingredients and dietary preferences. It's built with a simple, elegant web interface and is powered by the cutting-edge Gemini API. The entire application is hosted on Vercel as a serverless function, making it fast, scalable, and cost-effective.


✨ Features

Core Features

  • Dynamic Recipe Generation: Get recipes instantly based on a list of ingredients.
  • Dietary Support: Request vegan, gluten-free, or specific cuisine-based recipes.
  • Natural Language Chat: Talk to ChefBot in plain English or Hinglish.
  • Secure API Proxy: Your Gemini API key is kept secure on the backend.
  • Seamless Deployment: One-click deployment to Vercel via GitHub.

Advanced Features (v2.0)

  • 🎤 Voice Input: Chat with ChefBot using your voice for hands-free cooking.
  • ❤️ Save Favorites: Mark and revisit your favorite recipes with local storage.
  • 🖨️ Print Recipes: Download or print beautiful recipe cards.
  • ⏰ Cooking Timer: Built-in timer that appears automatically with recipes.
  • 📱 PWA Support: Install ChefBot as an app on your device for quick access.
  • 🔔 Smart Notifications: Get notified when recipes are saved or timers complete.

📊 Feature Status

Feature Description Status
Voice Input Chat with ChefBot using your voice ✅ Available
Save Favorites Mark and revisit your favorite recipes ✅ Available
Print Recipe Button Download/print recipe cards ✅ Available
Cooking Timer Built-in timer for recipes ✅ Available
Mobile PWA Installable app for quick access ✅ Available
Nutrition Info Get nutritional breakdown for each recipe 🚧 Coming Soon
Community Recipes Users submit and browse community recipes 📋 Planned
Weekly Meal Planning Plan weekly meals, auto-generate shopping list 📋 Planned
Multi-language Support Hindi/English UI toggle 📋 Planned

🚀 How It Works

The frontend is a simple index.html page that sends user prompts to a Vercel serverless function (api/index.js). This function acts as a secure proxy, calling the Gemini API with your prompt and API key. The AI's response is then sent back to the frontend and rendered in the chat window.


🛠️ Tech Stack

  • Frontend: Plain HTML, CSS, & JavaScript
  • Backend: Node.js Serverless Function
  • AI Model: Google Gemini API
  • Hosting: Vercel
  • Dependency Management: npm

⬇️ Setup and Deployment

1. Get Your Gemini API Key

Go to the Google AI Studio and create a new API key. Copy your key for the next steps.

2. Local Development

  1. Clone the Repository:
    git clone <your-repo-url>
    cd ChefBot
  2. Install Dependencies:
    npm install
  3. Configure Environment Variables: Create a file named .env in the root of your project and add your API key to it like this: GEMINI_API_KEY="your-api-key-here".
  4. Run the Development Server:
    npm run dev
    Your server will now be running at http://localhost:3000. Open this URL in your browser to interact with ChefBot.

3. Deploy to Vercel

Vercel makes deployment simple with direct GitHub integration.

  1. Push your project to GitHub:
    git init
    git add .
    git commit -m "Initial commit of ChefBot project"
    git branch -M main
    git remote add origin <your-github-repo-url>
    git push -u origin main
  2. Import to Vercel:
    • Log in to your Vercel account and click "Add New" > "Project".
    • Select your GitHub repository.
    • Before deploying, add an environment variable in the Vercel project settings:
      • Name: GEMINI_API_KEY
      • Value: Your actual Gemini API key.
    • Click "Deploy". Vercel will now automatically build and deploy your project.

🎯 Usage Examples

Basic Usage

  • Recipe Generation: "I have 250g paneer and 2 onions"
  • Dietary Preferences: "Vegan breakfast ideas"
  • Cooking Tips: "How to make perfect basmati rice?"

Advanced Features

  • Voice Input: Click the 🎤 microphone button and speak your request
  • Save Favorites: Click ❤️ on any recipe to save it locally
  • Print Recipes: Click 🖨️ to print or download recipe cards
  • Cooking Timer: Timer appears automatically when recipes mention cooking time
  • Install App: Click 📱 Install App to add ChefBot to your home screen

🔧 Project Structure

ChefBot/
├── api/
│   └── index.js            # Vercel serverless function
├── assets/
│   ├── images/             # Project images
│   └── screenshots/        # App screenshots
├── public/
│   ├── index.html          # Main frontend application (v2.0)
│   ├── manifest.json       # PWA manifest file
│   └── sw.js              # Service worker for offline support
├── .env.example            # Environment variables template
├── .gitignore              # Git ignore rules
├── package.json            # Dependencies and scripts
├── package-lock.json       # Locked dependency versions
├── README.md               # This file
├── server.js              # Local development server
└── vercel.json             # Vercel configuration

🤝 Contributing

  1. Fork the repository.
  2. Create your feature branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Add some AmazingFeature').
  4. Push to the branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request.

📞 Support

If you encounter any issues or have questions, please open an issue on GitHub.


Happy Cooking! 🍳✨

About

ChefBot is a web-based, AI-driven cooking assistant designed to make your time in the kitchen easier and more enjoyable. It helps you turn your available ingredients into delicious meals with personalized recipe suggestions, smart substitutions, and helpful cooking tips.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published