Programação & Web
Cursor / Copilot
Boilerplate de API REST Fastify + Prisma + TypeScript
API REST em Node.js com Fastify, Prisma ORM, validação Zod, autenticação JWT e Swagger.
0cópias
0joinhas
0favoritos
O prompt
Gere a estrutura completa de uma API REST enterprise em TypeScript usando Fastify e Prisma ORM.
Parâmetros:
- Entidade Principal: {{entidade}}
- Banco de Dados: {{banco_dados}}
- Prefixo das Rotas: {{prefixo_api}}
Requisitos da Arquitetura:
1. Configuração do Fastify com CORS, Helmet, Rate Limit e Cookie/JWT authentication plugin.
2. Definição do schema Prisma para {{entidade}} com campos comuns (id cuid, createdAt, updatedAt) e enum de status no {{banco_dados}}.
3. Schemas de validação com Zod para criação, atualização e paginação da {{entidade}}.
4. Controlador com rotas: GET {{prefixo_api}}, POST {{prefixo_api}}, GET {{prefixo_api}}/:id, PUT {{prefixo_api}}/:id e DELETE {{prefixo_api}}/:id.
5. Documentação automática OpenAPI/Swagger via @fastify/swagger e @fastify/swagger-ui.
6. Middleware centralizado de tratamento de erros formatando respostas RFC 7807.
Como usar
- Substitua {{entidade}} (ex.: 'Task'), {{banco_dados}} ('postgresql') e {{prefixo_api}} (ex.: '/api/tasks').
- Cole no Cursor ou Copilot dentro de uma pasta vazia — a IA cria todos os arquivos.
- Rode: npm install → npx prisma migrate dev → npm run dev. A API sobe com Swagger em /docs.
- Confira cada requisito numerado em ordem (CORS, validação Zod, erros RFC 7807) — eles são o seu checklist de aceite.
Exemplo de saída
Projeto com ~15 arquivos: src/app.ts (Fastify + CORS/Helmet/RateLimit), prisma/schema.prisma (modelo Task com cuid e enum de status), schemas Zod de criação/atualização/paginação, 5 rotas CRUD, Swagger UI em /docs e handler centralizado de erros no formato RFC 7807.