Forkify is a web application for discovering millions of recipes and contributing your own. It demonstrates the power of using APIs and pure JavaScript to build dynamic web applications. Forkify is a learning project that incorporates industry-standard formats and models for modern web development. This project is part of and an extension of the original work by Jonas Schmedtmann.
The site is live on : https://forkify-jsgodmode.netlify.app/
- Browse Recipes: Access millions of recipes from across the globe.
- Search Functionality: Search for recipes by ingredients, name, or cuisine.
- Add Your Own Recipes: Contribute your personal recipes to the platform.
- Responsive Design: Optimized for all devices, ensuring seamless use on mobile, tablet, and desktop.
- API Integration: Powered by an external recipe API to fetch thousands of recipes.
- Pure JavaScript: Built using vanilla JavaScript with a focus on clean code practices and ES6+ features.
- Industry Standards: Implements best practices for modern web development, including modular design patterns, asynchronous JavaScript (Promises/async-await), and RESTful API communication.
- JavaScript: Pure JavaScript (ES6+)
- API: External recipe API
- HTML/CSS: For structuring and styling the application
- Parcel: Module bundler for compiling JavaScript and assets
To run this project locally, ensure you have the following installed:
- Node.js
- npm (Node Package Manager)
- Clone the repository:
git clone https://github.com/yourusername/forkify.git
- Install the dependencies:
npm install
- Run the development server:
npm start
- Open your browser and navigate to
https://localhost:8080
Forkify communicates with an external recipe API to retrieve recipe data based on user input. The application also allows users to upload their own recipes, which are stored in local storage.
The recipe data is fetched from a third-party API. For more details on the API usage, refer to the API documentation.
If you'd like to contribute to Forkify, feel free to submit a pull request. Whether it's adding new features, fixing bugs, or improving documentation, all contributions are welcome.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a pull request
This is a limited usage license product. Forkify may be used for educational purposes only. Any commercial use, distribution, or modification outside of personal learning is prohibited without explicit permission from the author.
This project is created and maintained by Swarnavo Khanra. Forkify is a part of and an extension of the original project created by Jonas Schmedtmann as part of his JavaScript learning course.