✅ Production ready with one docker-compose command.
✅ Similar to Django Code Structure.
✅ Local dockerized db.
✅ Dockerized PgAdmin to check the db records.
✅ Migrations, Serializers and ORM configured.
✅ CRUD APIs (Sneaker App).
✅ Token Authentication.
✅ Logging Mechanism.
✅ Testcases TDD with Pytest.
✅ Seperate Database(Sqlite) and mock session configured for test cases.
✅ Poetry dependency management and packaging made easy. (Better than pip)
- Alembic: For Database Migrations.
- SQLAlchemy: For ORM.
- Pydantic: For Typing or Serialization.
- Pytests: For TDD or Unit Testing.
- Poetry: Python dependency management and packaging made easy. (Better than pip)
- Docker & docker-compose : For Virtualization.
- postgresSQL: Database.
- PgAdmin: To interact with the Postgres database sessions.
- Loguru: Easiest logging ever done.
Make sure you have docker and docker-compose installed docker installation guide
create .env file in root folder fastapi-boilerplate/.env
DATABASE_URL=postgresql+psycopg://postgres:password@db:5432/boiler_plate_db
DB_USER=postgres
DB_PASSWORD=password
DB_NAME=boiler_plate_db
[email protected]
PGADMIN_PASSWORD=admin
X_TOKEN=12345678910
docker-compose up
- Swagger docs on
localhost:8000/docs
- GET request example
- PgAdmin on
localhost:5050