A modern Recipe App built using ReactJS and Redux that allows users to search, explore, and save their favorite recipes. It fetches data from the Edamam Recipe API and provides a clean user interface to interact with recipes.
- Introduction
- Features
- Technologies Used
- Setup Instructions
- Available Scripts
- Deployment
- Future Enhancements
- Notes
- License
The Recipe App is a user-friendly web application that allows users to search, view, and save their favorite recipes. Built using ReactJS and Redux, it integrates the Edamam API to fetch real-time recipe data. Users can explore dishes by ingredients, mark favorites, and apply filters to personalize their cooking experience.
- Search recipes by keywords (e.g., "pizza", "vegetarian")
- View recipe details (ingredients, time, servings)
- Mark recipes as favorites and manage a favorite list
- Filters for dietary needs (e.g., gluten-free, vegetarian)
- State managed via Redux and persists across navigation
- Clean and reusable component structure
- Frontend: ReactJS
- State Management:Redux, Redux Thunk
- API: Edamam Recipe API
- Styling: CSS
- Development Tools: Visual Studio Code, npm, Git
- Node.js and npm installed (download: https://nodejs.org/)
- Internet connection to fetch data from Edamam API
-
Clone the repository
git clone https://github.com/your-username/RecipeApp.git cd RecipeApp -
Install dependencies
npm install
-
Add your Edamam API credentials Open
src/redux/actions.jsand update this line:const response = await fetch( `https://api.edamam.com/search?q=${query}&app_id=YOUR_APP_ID&app_key=YOUR_APP_KEY&from=0&to=50` );
-
Start the development server
npm start
The app should open automatically at http://localhost:3000
In the project directory, you can run:
npm startβ Runs the app in development modenpm run buildβ Builds the app for productionnpm testβ Launches the test runner (if tests are added)npm run ejectβ Ejects the app configuration (not recommended unless necessary)
This app can be deployed on platforms like:
- GitHub Pages
- Vercel
- Netlify
- Render
You can build the production version using:
npm run buildThen follow the hosting provider's instructions for deployment.
- π½οΈ Add category filters (breakfast, lunch, dinner)
- π§βπ³ Add user authentication to save favorites per user
- π Add pagination or infinite scroll
- π± Improve responsiveness on smaller screens
- π Add nutritional info and calorie breakdown
- This project is for educational and demonstration purposes.
- Be mindful of the free tier limitations of the Edamam API.
This project is open-source and available under the MIT License.