This project was developed as part of a DIO (Digital Innovation One) challenge focused on building a REST API using FastAPI, Python, Docker, PostgreSQL, and Alembic.
The entire project structure (schemas, models, routes, database, and migrations) was built exclusively following the course video instructions, without starting from a provided base repository.
The API supports: • Athlete CRUD • Category CRUD • Training center CRUD • Data validation with Pydantic • PostgreSQL persistence • Alembic migrations • Docker Compose execution
Este projeto foi desenvolvido como parte de um desafio da plataforma DIO (Digital Innovation One) para a criação de uma API REST utilizando FastAPI, Python, Docker, PostgreSQL e Alembic.
Toda a estrutura do projeto (schemas, models, rotas, banco de dados e migrations) foi construída seguindo exclusivamente as instruções apresentadas nos vídeos do curso, sem o uso de um repositório base previamente fornecido.
A API permite:
- CRUD de atletas
- CRUD de categorias
- CRUD de centros de treinamento
- Validações com Pydantic
- Persistência de dados com PostgreSQL
- Migrations com Alembic
- Execução via Docker Compose
- Python 3.11
- FastAPI
- SQLAlchemy (async)
- Pydantic
- PostgreSQL
- Alembic
- Docker & Docker Compose
git clone <https://github.com/EmilyCDOGuimaraes/dio-fastapi-python-docker-app-challenge.git>
cd dio-workout-api-challenge