Este repositório contém a solução para um desafio técnico com foco na construção de uma API para comparação de produtos.
A API permite:
- cadastro de produtos com atributos comuns e específicos;
- comparação de múltiplos produtos;
- seleção dinâmica de campos para análise.
app/
├── controllers/
├── services/
├── repositories/
├── models/
├── schemas/
├── middlewares/
├── adapters/
└── utils/
poetry install
uvicorn app:create_app --factory --reload| Método | Caminho | Descrição |
|---|---|---|
GET |
/docs/ |
Documentação do Swagger |
GET |
/health/ |
Monitora saúde da aplicação |
POST |
/products/ |
Cria um novo produto |
GET |
/products/compare |
Compara produtos dinâmicamente |
- Separação em camadas (Controller, Service, Repository)
- Uso de JSON para atributos dinâmicos
- Simplicidade ao invés de overengineering
A solução prioriza clareza, simplicidade e extensibilidade, sendo adequada para o escopo do desafio técnico.