Projetos de aprendizado¶
Esta seção reúne projetos didáticos construídos inteiramente sobre o tempest-fastapi-sdk para você aprender a usar o SDK na prática. Cada projeto traz:
- Regras de negócio completas (o "porquê" antes do código).
- Diagramas UML — modelo de domínio (classe), ER, sequência por fluxo crítico.
- Mapa de endpoints REST com a forma do request/response.
- State machines para entidades com ciclo de vida (pedidos, convites…).
- Estratégia de testes mostrando como exercitar cada camada.
Por que projetos de aprendizado e não só receitas?
Receitas (em Recipes) ensinam um pedaço do SDK isolado. Projetos de aprendizado mostram como as peças se encaixam num cenário realista — pagamentos, multi-tenant, controle de acesso, auditoria, estoque — sem integrações externas que ofusquem o aprendizado.
Projetos disponíveis¶
🛒 Marketplace de produtos¶
Plataforma estilo Mercado Livre / Shopee onde:
- Usuários se cadastram via endpoint público (
POST /signup). - Cada usuário pode criar até 2 organizações (lojistas).
- Cada organização pode convidar até 10 membros (donos + admins + colaboradores).
- Membros cadastram produtos com variantes, preços versionados e controle de estoque.
- Qualquer usuário logado navega o catálogo público e faz pedidos.
- Pedidos têm máquina de estados (
PENDING → PAID → SHIPPED → DELIVERED+ cancelamento). - Estoque é um livro-razão append-only (auditável).
Cobre auth JWT, multi-tenant via membership, paginação cursor, idempotência em checkout, upload (imagens de produtos via MinIO), email transacional (convites/confirmações), SSE (status de pedido em tempo real), métricas Prometheus.
Como usar esta seção¶
- Leia primeiro a regra de negócio — entenda o domínio antes de codar.
- Estude os diagramas — modelo + sequência te dão o "mapa".
- Cada arquivo de regra aponta para os primitivos do SDK que aplicam (ex:
BaseUserModel,make_jwt_user_dependency,IdempotencyMiddleware). - Implemente uma camada de cada vez — model → repository → service → controller → router.
- Compare com a referência no repo
tempest-marketplace-example(link no final de cada projeto).
Próximos projetos planejados¶
- 📚 Biblioteca digital — empréstimos, reservas, devoluções com SLA.
- 📅 Sistema de agendamento — calendários multi-usuário, slots, conflitos.
- 💸 Cobrança recorrente — assinaturas, ciclos, dunning, webhooks de pagamento.
Sugestões? Abra issue em https://github.com/mauriciobenjamin700/tempest-fastapi-sdk/issues com o caso de uso real que motivaria o projeto.