/recipe-app-api

Recipe API project

Primary LanguagePython

Recipe App API

Source code for our course: Build a Backend REST API with Python & Django - Advanced.

The course teaches how to build a fully functioning REST API using:

  • Python
  • Django / Django-REST-Framework
  • Docker / Docker-Compose
  • Test Driven Development

Getting started

To start project, run:

docker-compose up

The API will then be available at http://127.0.0.1:8000.

Notes

Generate a django application called core:

docker compose run --rm app sh -c "python manage.py startapp core"

Run tests locally:

python manage.py test

Run linter:

docker compose run --rm app sh -c "flake8"

Run tests:

docker compose run --rm app sh -c "python manage.py test"

Run single test:

docker compose run --rm app sh -c "python manage.py wait_for_db"

Run tests and linter:

docker compose run --rm app sh -c "python manage.py test && flake8"

Make database migrations:

docker compose run --rm app sh -c "python manage.py makemigrations"

Run database migrations:

docker compose run --rm app sh -c "python manage.py wait_for_db && python manage.py migrate"

Create superuser:

docker compose run --rm app sh -c "python manage.py createsuperuser"

Django admin site:

http://localhost:8000/admin/

Screenshots

core_user: core_user

create_superuser: core_user

admin_site: core_user