A full-stack recipe management web application built with Django and Django REST Framework.
This project allows users to sign up, log in, and manage recipes with image upload functionality and token-based authentication.
- User registration and login
- Token-based authentication
- Create, update, delete recipes
- Upload recipe images
- Django Admin dashboard
- RESTful API endpoints
- SQLite database integration
- Python 3.11
- Django
- Django REST Framework
- SQLite
- Pillow (for image handling)
- HTML / CSS (if templates are used)
recipe-finder-django-api/ │ ├── recipes/ # Main app ├── recipe_finder_django/ # Project settings ├── manage.py ├── requirements.txt └── .gitignore
- Clone the repository:
git clone https://github.com/Omnia9789/recipe-finder-django-api.git
- Navigate into the project directory:
cd recipe-finder-django-api
- Create a virtual environment:
python -m venv venv
- Activate the virtual environment:
Windows: venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Apply migrations:
python manage.py migrate
- Run the development server:
python manage.py runserver
Visit: http://127.0.0.1:8000/
This project uses token-based authentication.
After login via API:
- A token is generated
- The token must be included in request headers for protected routes
Example header:
Authorization: Token your_token_here
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/signup/ | Register new user |
| POST | /api/login/ | Login and receive token |
| GET | /api/recipes/ | List recipes |
| POST | /api/recipes/ | Create recipe |
| PUT | /api/recipes// | Update recipe |
| DELETE | /api/recipes// | Delete recipe |
- Add search functionality
- Add favorites feature
- Improve UI/UX design
- Deploy to cloud platform (Render / Railway)
- Add pagination & filtering
This project is licensed under the MIT License.
Omnia Ali
GitHub: https://github.com/Omnia9789

.jpeg)
