teefayb/claude-code-setup-demo

Adiciona um novo manipulador de rota Next.js em src/app/api com validação Zod, erros consistentes e testes Vitest. Use quando solicitado a adicionar ou estender um endpoint de API.

O que é claude-code-setup-demo?

Este skill automatiza a criação de rotas de API em projetos Next.js, garantindo boas práticas como validação com Zod, tratamento de erros consistente e testes unitários com Vitest. Ele é útil para desenvolvedores que desejam adicionar novos endpoints de forma estruturada, seguindo padrões predefinidos de projeto para evitar inconsistências. O skill foi originalmente desenvolvido para o Claude Code e pode ser usado em qualquer projeto Next.js que utilize uma estrutura de pastas semelhante. Ele funciona lendo os arquivos de padrão existentes (por exemplo, rotas, helpers HTTP e esquemas Zod) e gerando o código da nova rota, além dos testes correspondentes. O desenvolvedor deve fornecer uma descrição do endpoint desejado, e o skill garante que a implementação siga a arquitetura do projeto, com tratamento adequado de erros, validação de entrada e testes de unidade cobrindo sucesso e falhas.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/teefayb/claude-code-setup-demo/tree/HEAD/.claude/skills/add-api-route

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Adicione a rota de API descrita aqui: $ARGUMENTS

Se o método, caminho ou comportamento não estiver claro, faça uma pergunta curta antes de escrever o código.

Etapas

  1. Leia src/app/api/links/route.ts, src/lib/http.ts e src/lib/links/schema.ts para corresponder aos padrões existentes. Não invente um novo formato de erro.
  2. Coloque a validação de entrada em um esquema Zod no arquivo relevante src/lib/<dominio>/schema.ts, e não inline na rota.
  3. Coloque o acesso a dados em src/lib/<dominio>/store.ts. O manipulador de rota apenas analisa, chama o armazenamento, e mapeia os resultados para as respostas.
  4. Crie src/app/api/<caminho>/route.ts:
    • export const dynamic = "force-dynamic";
    • JSON malformado → errorResponse(400, "invalid_json")
    • ZodError → validationError(err)
    • Não encontrado → errorResponse(404, "not_found")
    • Segmentos dinâmicos: { params }: { params: Promise<{ id: string }> } e await params.
  5. Escreva route.test.ts ao lado da rota. Use useTempDataFile() de @/test/temp-data-file e chame os manipuladores exportados com new Request(...). Cubra: sucesso, cada classe de falha de validação, não encontrado e JSON malformado onde um corpo é aceito.
  6. Execute npx vitest run <o novo arquivo de teste>, depois npm run check, depois npm run build.
  7. Relate: o contrato do endpoint (método, caminho, corpo da requisição, respostas com códigos de status) e os comandos que você executou com seus resultados.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

Habilidades Relacionadas