Welcome to MyChef! This project is a recipe app that helps users browse through recipes, search for specific recipes, ask AI for recipe suggestions, and save recipes for later.
🌐 MyChef
MyChef is a comprehensive recipe application designed to make cooking and meal planning easier. It provides a user-friendly interface for exploring a wide variety of recipes and offers advanced features like AI-powered recipe suggestions and a secure system for saving favorite recipes.
- 🍽 Browse through a wide selection of recipes.
- 🔍 Search for specific recipes.
- 🤖 Ask AI for recipe suggestions using the Gemini AI API.
- 💾 Save recipes for later.
- 📱 Mobile responsive design.
- 🔒 Secure authentication system.
- Backend: Node.js, Express.js, MongoDB
- Frontend: React.js, Bootstrap, React Material-UI
- APIs: Gemini AI API, TheMealDB API
To run this project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/yourusername/MyChef.git
-
Navigate to the project directory:
cd MyChef
-
Install backend dependencies:
cd backend npm install
-
Install frontend dependencies:
cd ../recipe-app npm install
-
Create a
.env
file in the backend directory and add your environment variables:password=your_password DB_URL=your_database_url SECRET_KEY=your_secret_key
You can get the
DB_URL
from MongoDB Atlas. -
Create a
.env
file in the recipe-app directory and add your environment variables:VITE_API_KEY=your_gemini_api_key
You can get the
VITE_API_KEY
from Gemini API. -
Start the backend server:
cd ../backend nodemon server.js
-
In a new terminal, start the frontend server:
cd ../recipe-app npm run dev
Once the application is running, you can access it at http://localhost:3000
. Use the website to browse, search, and save recipes. Try out the AI feature for personalized recipe suggestions.
Contributions are welcome! Please fork this repository and submit a pull request for any feature or bug fix you would like to implement.
- Fork the repository.
- Create a new branch (
git checkout -b feature/your-feature-name
). - Make your changes.
- Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature/your-feature-name
). - Open a pull request.
If you have any questions or feedback, feel free to reach out:
- 📧 Email: saurav.codes42@gmail.com
- 💼 LinkedIn: Saurav Singh
Thank you for using MyChef!