Skip to content

EmilyCDOGuimaraes/dio-fastapi-python-docker-app-challenge

Repository files navigation

Workout API – FastAPI + Docker

📌 Description (EN)

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.

⚠️ Note: only at the end of the challenge did I realize that an official repository was available for forking. Nevertheless, I decided to keep this implementation, as all the code was manually written from scratch as a full hands-on learning experience.

The API supports: • Athlete CRUD • Category CRUD • Training center CRUD • Data validation with Pydantic • PostgreSQL persistence • Alembic migrations • Docker Compose execution


📌 Descrição (PT-BR)

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.

⚠️ Observação: somente ao final do desafio percebi que havia um repositório oficial disponível para fork. Ainda assim, optei por manter esta implementação, pois todo o código foi desenvolvido manualmente a partir do conteúdo estudado, como forma de aprendizado prático completo.

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

🛠️ Tecnologias utilizadas

  • Python 3.11
  • FastAPI
  • SQLAlchemy (async)
  • Pydantic
  • PostgreSQL
  • Alembic
  • Docker & Docker Compose

▶️ Como executar o projeto

1. Clonar o repositório

git clone <https://github.com/EmilyCDOGuimaraes/dio-fastapi-python-docker-app-challenge.git>
cd dio-workout-api-challenge

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages