askill
nodejs-best-practices

nodejs-best-practicesSafety --Repository

Node.js best practices e patterns

1 stars
1.2k downloads
Updated 2/7/2026

Package Files

Loading files...
SKILL.md

Node.js Best Practices

Convenções baseadas em nodebestpractices e frameworks populares.


Framework Recomendado

Express (Leve e Flexível)

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);
});

NestJS (Estruturado e TypeScript)

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();
  }
}

Estrutura de Projeto

Express

project/
├── src/
│   ├── routes/
│   ├── controllers/
│   ├── services/
│   ├── models/
│   ├── middleware/
│   └── app.js
├── tests/
└── package.json

NestJS

project/
├── src/
│   ├── users/
│   │   ├── users.module.ts
│   │   ├── users.controller.ts
│   │   ├── users.service.ts
│   │   └── users.entity.ts
│   └── app.module.ts
└── package.json

Error Handling

// 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
  }
}

Environment Variables

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,
};

Checklist

  • Error handling implementado
  • Variáveis de ambiente configuradas
  • Estrutura de projeto organizada
  • TypeScript (quando usar NestJS)
  • Testes configurados

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

AI review pending.

Metadata

Licenseunknown
Version-
Updated2/7/2026
PublisherLucasBiason

Tags

api