Pular para o conteúdo

002 — Resources · Stack da Aplicação: OpenAPI, Estado, UI e Testes

002 — Resources · Stack da Aplicação: OpenAPI, Estado, UI e Testes

Seção intitulada “002 — Resources · Stack da Aplicação: OpenAPI, Estado, UI e Testes”

Curadoria dos materiais. Sem dumps nem segredos; apenas referências.

  • Padrão de OpenAPI — Zod 4 nativo (z.toJSONSchema) + @scalar/nextjs-api-reference, servido em /openapi.json e /reference. Contrato vivo, fonte única no Zod. Cada domínio exporta { tag, schemas, paths }; buildOpenApiDocument() mescla tudo.
  • Padrão de storestores/[nome]/{store.ts, sync.tsx} (manifesto/03-stack/02).
  • Fluxo de testes — schema → teste de contrato → implementação (manifesto/architecture/08).

Bibliotecas-chave desta ADR (ver versões no 004-tasks)

Seção intitulada “Bibliotecas-chave desta ADR (ver versões no 004-tasks)”
  • zustand — estado do frontend (core inegociável).
  • zod — validação e fonte do contrato OpenAPI.
  • @scalar/nextjs-api-reference — UI de testes da API.
  • openapi-typescript + openapi-fetch — tipos e cliente tipado a partir do spec.
  • sonner — notificações (toasts).
  • vitest, @testing-library/react, @testing-library/jest-dom, jsdom, @vitejs/plugin-react — testes.
  • prisma / @prisma/client — ORM (PostgreSQL em Docker).
  • shadcn/ui (todos os componentes) — em packages/ui.

A fundação (monorepo, manifesto, site de docs, PDF) está na ADR 001.

Criado por Joseph Trupel