Skip to content

Hossein-Molaeian/Recipe-App-API

Repository files navigation

Recipe REST API

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.

Key Features:

  • 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.

Main Technologies

  • Python
  • Django REST Framework
  • Docker
  • PostgreSQL
  • GitHub Actions

How to Setup This Repository

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

Screenshots

1

2

3

Thank you for exploring this repository!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published