Olá pessoal
Estou compartilhando minha implementação do projeto final do Curso Python 3, a Saborexpress API, uma API RESTful desenvolvida com FastAPI para gerenciar restaurantes, avaliações e cardápios com persistência em JSON.
Link do GitHub:https://github.com/carlosvblessa/curso-python-3
Sobre o Projeto
A aplicação permite realizar operações completas sobre restaurantes, como:
- Cadastrar, listar e alternar estado dos restaurantes
- Registrar avaliações por clientes
- Adicionar itens ao cardápio (pratos, bebidas e sobremesas)
- Aplicar descontos específicos por tipo de item:
- Prato: 5%
- Bebida: 8%
- Sobremesa: 15%
Todos os dados são persistidos em dados/restaurantes.json
.
A API possui documentação interativa via Swagger UI (/docs
) e ReDoc (/redoc
), com validação via Pydantic.
Funcionalidades Implementadas
- CRUD básico de restaurantes
- Avaliações com validação de nota (1–5)
- Cardápio com herança e polimorfismo entre tipos de itens
- Desconto específico por tipo de item
- Persistência de dados em JSON
- Testes automatizados com cobertura de 94%
- Boas práticas de código com PEP 8, type hints, mypy e pre-commit
Solicitações de Feedback
Gostaria de receber feedback sobre:
- Arquitetura e organização do código (Clean Architecture)
- Uso correto de herança, polimorfismo e classe abstrata
- Estruturação dos endpoints da API e uso do Pydantic
- Qualidade dos testes e possíveis cenários faltando
- Sugestões para implementar os próximos pontos do TODO:
- CRUD completo de itens do cardápio
- Controle de desconto único por item
Se puderem dar uma olhada no meu repositório e me ajudar com sugestões ou correções, ficarei grato.