Skip to content

1Terabit/nestjs-solid-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 NestJS Template con SOLID + Husky + Linting

Este template proporciona una base sólida para proyectos de 0, o ya hechos en NestJS con TypeScript, incluyendo herramientas que refuerzan buenas prácticas como los principios SOLID y código limpio.

📦 Contenido

  • ✅ Estructura básica de proyecto NestJS
  • ✅ ESLint con:
    • @typescript-eslint
    • eslint-plugin-sonarjs
    • eslint-plugin-clean-code
  • ✅ Prettier integrado
  • ✅ Hooks de pre-commit con Husky y lint-staged

⚙️ Instalación desde cero (nuevo proyecto)

  1. Clona el repositorio o descarga el zip:
npx degit tu-usuario/nest-solid-template nombre-proyecto
cd nombre-proyecto
npm install
npx husky install
  1. Haz tu primer commit para que se active Husky:
git init
git add .
git commit -m "chore: primera configuración"

🛠️ Integración en proyecto existente

  1. Instala las dependencias:
npm install --save-dev \
  eslint \
  prettier \
  husky \
  lint-staged \
  @typescript-eslint/eslint-plugin \
  @typescript-eslint/parser \
  eslint-plugin-sonarjs \
  eslint-plugin-clean-code \
  eslint-plugin-prettier \
  eslint-config-prettier
  1. Agrega los archivos de configuración:
  • .eslintrc.js
  • .prettierrc
  • .husky/pre-commit

Puedes copiar los archivos de este template o adaptarlos.

  1. Agrega los scripts en package.json:
{
  "scripts": {
    "lint": "eslint . --ext .ts",
    "format": "prettier --write ."
  },
  "lint-staged": {
    "*.{ts,js}": [
      "eslint --fix",
      "prettier --write"
    ]
  }
}
  1. Inicializa Husky:
npx husky install
  1. Verifica el hook:

El hook en .husky/pre-commit debe contener:

#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

echo "🔍 Corriendo ESLint y Prettier antes del commit..."
npx lint-staged

📚 Recomendaciones de buenas prácticas

  • Mantén la arquitectura modular (por features)
  • Aplica separación de capas (domain, infra, app, interfaces)
  • Usa principios SOLID para tus servicios y controladores
  • Usa DTOs para validación y tipado fuerte

🧪 Scripts útiles

npm run lint      # Corre ESLint
npm run format    # Formatea el código con Prettier

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors