RecipeGenius.mp4
RecipeGenius is a web application built using the MERN (MongoDB, Express, React, Node.js) stack. It provides a user-friendly interface for generating recipes.
-
Recipe Generation: Generate recipes based on various criteria such as recipe names, ingredients, nutrients, cuisines, and more. Get inspired and discover new and exciting dishes.
-
Personalized Experience: Registered users can log in to RecipeGenius and access a personalized list of recipes they have liked. Save your favorite recipes and easily access them for future reference.
-
User-Friendly Interface: RecipeGenius offers an intuitive and user-friendly interface, making it easy to navigate, search for recipes, and explore different options.
Before running the RecipeGenius application, make sure you have the following prerequisites installed:
- Clone the repository:
git clone https://github.com/techrajat/recipegenius.git
-
Obtain Spoonacular API key:
- Visit Spoonacular API and create an account (if you don't have one).
- Request an API key from Spoonacular.
-
Rename the file
.env.example
and replace api key:- Rename
.env.example
file to.env
in the root folder of the app. - Open
.env
file and replacemy-api-key
inREACT_APP_API_KEY="my-api-key"
with your actual Spoonacular API key.
- Rename
-
Open a terminal and start the MongoDB local server:
Note: If you already have MongoDB local server running, you can skip this step.
mongod
- In a new terminal, navigate to the backend folder:
cd recipegenius/backend
- Install backend dependencies:
npm install
- Start the Node.js backend:
node index.js
or
nodemon index.js
- In a new terminal, go back to the root folder:
cd ../
- Install frontend dependencies:
npm install
- Start the React frontend:
npm start
Once the backend and frontend servers are running, open your web browser and visit http://localhost:3000
to access the RecipeGenius application.
- Spoonacular API: Used for generating recipes.
Contributions to RecipeGenius are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.