skills/backend/nodejs/SKILL.md
Node.js best practices e patterns
npx skillsauth add lucasbiason/cursor-multiagent-system nodejs-best-practicesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Convenções baseadas em nodebestpractices e frameworks populares.
Para APIs simples e microserviços:
const express = require('express');
const app = express();
app.use(express.json());
app.get('/api/users', async (req, res) => {
const users = await getUsers();
res.json(users);
});
Para projetos maiores com arquitetura em módulos:
import { Module, Controller, Get } from '@nestjs/common';
@Controller('users')
export class UsersController {
@Get()
findAll() {
return this.usersService.findAll();
}
}
project/
├── src/
│ ├── routes/
│ ├── controllers/
│ ├── services/
│ ├── models/
│ ├── middleware/
│ └── app.js
├── tests/
└── package.json
project/
├── src/
│ ├── users/
│ │ ├── users.module.ts
│ │ ├── users.controller.ts
│ │ ├── users.service.ts
│ │ └── users.entity.ts
│ └── app.module.ts
└── package.json
// Express
app.use((err, req, res, next) => {
console.error(err.stack);
res.status(500).json({ error: 'Internal Server Error' });
});
// NestJS
@Catch()
export class AllExceptionsFilter implements ExceptionFilter {
catch(exception: unknown, host: ArgumentsHost) {
// Handle error
}
}
SEMPRE usar variáveis de ambiente:
require('dotenv').config();
const config = {
port: process.env.PORT || 3000,
dbUrl: process.env.DATABASE_URL,
jwtSecret: process.env.JWT_SECRET,
};
testing
Execução e análise de testes automatizados
development
Gera resumos didáticos extensos e estruturados de aulas/cursos para cards do Notion. Use ao resumir aulas, apostilas, transcrições ou materiais de estudo para incluir no corpo do card (não apenas no campo Descrição), com flashcards, exemplos de código, diagramas Mermaid, mapa conceitual e perguntas de reforço.
development
Padroniza documentação existente no formato canônico Spec-Driven. Remove duplicação e melhora rastreabilidade.
development
Processo universal e repetível para criar especificações a partir de qualquer input (texto, docs, código). Usado em Plan mode.