This project is a REST API utilizing Python, Django REST Framework, and Docker. It aims to provide a solution for handling various functionalities crucial for modern software and web applications.
- User authentication, user profile creation, and password management.
- Creating, updating, filtering, and sorting of objects.
- Uploading and viewing images within the API.
- Following CI/CD and Test Driven Development methods.
- Utilization of Swagger for a Browseable API interface, enabling endpoint exploration and testing capabilities.
- Python
- Django REST Framework
- Docker
- PostgreSQL
- GitHub Actions
You can follow these steps to run this project locally:
1. Clone this repository:
git clone https://github.com/Hossein-Molaeian/Recipe-App-API.git
2. Install Docker:
If you haven't already installed Docker on your machine, visit the official Docker website and follow the instructions to download and install Docker for your operating system.
3: Setup Local Development Environment:
Navigate to the project directory and use Docker Compose to build the Docker containers and set up the local development environment:
docker-compose up --build
4: Run Tests:
Execute unit tests to ensure the code functions:
docker-compose exec app python manage.py test
5: Interact with the API:
With the Docker containers running, you can interact with the API using tools like curl, Postman, or directly through a web browser. The API endpoints should be accessible at http://localhost:8000/api/docs.
6: Shut Down the Containers:
Once you're finished working with the project, you can stop and remove the Docker containers:
docker-compose down
Thank you for exploring this repository!