This is a web-based Recipe Application built with Python and Django. It allows users to search for recipes based on ingredients, automatically rates recipes by difficulty level, and lets users add their own recipes. It also includes user authentication, a Django Admin dashboard, and provides data analysis on recipes.
- User Authentication: Users can register, log in, and log out.
- Recipe Search: Search recipes based on ingredients.
- Difficulty Rating: Automatic difficulty rating for each recipe.
- Error Handling: Handles errors like invalid inputs and provides user-friendly messages.
- Recipe Details: View detailed information on each recipe.
- Add Recipes: Users can add their own recipes to the app.
- Django Admin Dashboard: Manage recipes, users, and data entries through the Django Admin interface.
- Statistics & Visualizations: View trends and data analysis on recipes and user preferences.
- Python 3.6+ and Django 3 required.
- Handles exceptions and displays user-friendly error messages for invalid input.
- During development, the app uses an SQLite database, while in production, it connects to a locally-hosted PostgreSQL database.
- The app has an easy-to-use interface with clear instructions and forms.
- Code is properly documented, with automated tests included.
- A requirements.txt file lists all necessary modules for the project.
- Instructions for downloading and running the app locally are provided below.
- Clone the repository: git clone https://github.com/yourusername/recipe-app.git cd recipe-app
- Create a virtual environment: python3 -m venv venv source venv/bin/activate # On Windows use
venv\Scripts\activate
- Install dependencies: Install all the required modules listed in requirements.txt: pip install -r requirements.txt
- Set up the database: python manage.py migrate
- Create a superuser for Django Admin: python manage.py createsuperuser
- Run the development server: python manage.py runserver
- Access the app: http://127.0.0.1:8000/
- Access Django Admin to manage database entries through the admin dashboard, log in at http://127.0.0.1:8000/admin/
This is the link to the Github repo of the project
A live demo is already available via this link
This repository is for educational purposes only and has an MIT License
Give a ⭐ if you like this website!