Este repositorio es tu punto de partida ideal para proyectos de Node.js. Está equipado con herramientas modernas para optimizar y mejorar tu experiencia de desarrollo.
- Express ⚡: Un framework minimalista y flexible para Node.js, facilitando la creación de aplicaciones web y APIs.
- JOI 📏: Un poderoso validador de datos para JavaScript, utilizado para asegurar que los datos que ingresan a tu aplicación son válidos.
- EJS 🖼️: Un motor de plantillas sencillo y efectivo que te permite generar HTML con JavaScript.
-
Crea tu repositorio 🛠️:
En vez de clonar este repositorio directamente, haz clic en el botón "Use this template" (Usar esta plantilla) en la página principal del repositorio para crear un nuevo repositorio basado en esta plantilla.
-
Express ⚡:
Express ya está listo para usarse. Puedes comenzar editando el archivo
server.tsen la raíz del proyecto para crear tu API. -
JOI 📏:
JOI está instalado y listo para ser utilizado para la validación de datos. Puedes importarlo en tus archivos con
import Joi from 'joi';y comenzar a definir tus esquemas de validación. -
EJS 🖼️:
EJS está configurado como motor de plantillas. Puedes crear tus vistas en la carpeta views y renderizarlas en tus rutas con
res.render('nombre_de_la_vista');.
El plugin EditorConfig para VSCode asegura que todos los desarrolladores del proyecto sigan un estilo de codificación consistente. La configuración se define en el archivo .editorconfig en la raíz del proyecto.
- Instalación:
- Instala el plugin EditorConfig en VSCode.
- EditorConfig aplicará automáticamente las reglas definidas en el archivo
.editorconfigal abrir el proyecto en VSCode.
Prettier es una herramienta de formateo de código que garantiza un estilo de código consistente en todo el proyecto. El plugin Prettier para VSCode ayuda a aplicar estas reglas automáticamente.
-
Instalación:
- Instala el plugin Prettier en VSCode.
- Asegúrate de que Prettier esté configurado como el formateador por defecto en VSCode (
"editor.defaultFormatter": "esbenp.prettier-vscode"en la configuración de usuario o de espacio de trabajo).
-
Uso:
- Prettier formateará tu código automáticamente al guardar los archivos si tienes habilitada la opción
"editor.formatOnSave": trueen la configuración de VSCode.
- Prettier formateará tu código automáticamente al guardar los archivos si tienes habilitada la opción
ESLint es una herramienta de análisis de código estático que identifica y reporta patrones encontrados en el código, ayudando a mantener un código de calidad y libre de errores.
Nodemon es una herramienta que reinicia automáticamente tu aplicación Node.js cuando detecta cambios en el directorio. ts-node permite ejecutar archivos TypeScript directamente sin compilarlos manualmente.
Aquí están los comandos npm configurados y su explicación:
-
npm run dev:- Inicia el servidor en modo desarrollo utilizando
nodemonyts-node. Esto permite que el servidor se reinicie automáticamente cuando se detectan cambios en los archivos del proyecto. - Comando:
nodemon --exec ts-node --esm src/server.ts - El flag
--esmle indica ats-nodeque ejecute el archivo TypeScript en modo ES Modules. Esto es útil cuando se está utilizando la sintaxis de módulos de ECMAScript (import/export) en lugar de la sintaxis de CommonJS (require/module.exports). Permite quets-nodetrate los archivos TypeScript como módulos ES, lo cual es necesario si se usan importaciones y exportaciones modernas en tu código.
- Inicia el servidor en modo desarrollo utilizando
-
npm run build:- Compila los archivos TypeScript a JavaScript usando
tscy luego ejecuta un script adicional (copyEjs.js) para copiar los archivos necesarios de la carpeta web/views, ya que estos archivos no son .ts y no se compilan. - Comando:
tsc && node copyEjs.js
- Compila los archivos TypeScript a JavaScript usando
-
npm run lint:- Analiza el código en el directorio
srcusando ESLint para detectar y reportar problemas de estilo y errores. - Comando:
eslint src
- Analiza el código en el directorio
-
npm run lint:fix:- Ejecuta ESLint en el directorio
srcy automáticamente corrige los problemas que pueden ser solucionados. - Comando:
eslint src --fix
- Ejecuta ESLint en el directorio
-
npm run format:- Formatea el código en el directorio
srcusando Prettier, asegurando un estilo de código consistente. - Comando:
prettier --write src
- Formatea el código en el directorio
Para mantener un flujo de trabajo limpio:
-
Nunca hagas push directamente a la rama
main. Esta rama debería tener restricciones de push ya que cualquier cambio directo puede causar conflictos y complicaciones. -
Crea siempre una rama aparte para tus cambios y características. Asegúrate de que sus nombres sean descriptivos y sigan las convenciones establecidas.
-
Realiza Pull Requests (PRs) para integrar tus cambios. Una vez que tu rama esté lista y hayas realizado tus commits, crea una Pull Request en GitHub.