Skip to content

Instantly share code, notes, and snippets.

@Klerith
Last active April 27, 2024 20:23
Show Gist options
  • Star 99 You must be signed in to star a gist
  • Fork 54 You must be signed in to fork a gist
  • Save Klerith/47af527da090043f604b972b22dd4c01 to your computer and use it in GitHub Desktop.
Save Klerith/47af527da090043f604b972b22dd4c01 to your computer and use it in GitHub Desktop.
Configurar proyecto de Node con TypeScript

Pasos para usar Node con TypeScript con Nodemon

Más información - Docs Oficiales

  1. Instalar TypeScript y tipos de Node, como dependencia de desarrollo
npm i -D typescript @types/node
  1. Inicializar el archivo de configuración de TypeScript ( Se puede configurar al gusto)
npx tsc --init --outDir dist/ --rootDir src
  1. Opcional - Para traspilar el código, se puede usar este comando
npx tsc
npx tsc --watch
  1. Configurar Nodemon y Node-TS
npm install -D ts-node nodemon
  1. Crear archivo de configuración de Nodemon - nodemon.json
{
  "watch": ["src"],
  "ext": ".ts,.js",
  "ignore": [],
  "exec": "npx ts-node ./src/app.ts"
}
  1. Crear script para correr en desarrollo en el package.json
  "dev": "nodemon"
  "dev": "npx nodemon" // En caso de no querer instalar nodemon
  1. Instalar rimraf (Herramienta que funciona similar al rm -f) eliminar directorio
npm install -D rimraf
  1. Crear scripts en el package.json para construir e iniciar en producción
   "build": "rimraf ./dist && tsc",
   "start": "npm run build && node dist/app.js"

Node con TypeScript - Recomendado

  1. Instalar TypeScript y demás dependencias
npm i -D typescript @types/node ts-node nodemon rimraf
  1. Inicializar el archivo de configuración de TypeScript ( Se puede configurar al gusto)
npx tsc --init --outDir dist/ --rootDir src
  1. Crear archivo de configuración Nodemon - nodemon.json
{
  "watch": ["src"],
  "ext": ".ts,.js",
  "ignore": [],
  "exec": "npx ts-node ./src/app.ts"
}
  1. Crear scripts para dev, build y start
  "dev": "nodemon",
  "build": "rimraf ./dist && tsc",
  "start": "npm run build && node dist/app.js"
@FLeiras
Copy link

FLeiras commented Aug 27, 2023

Excelente Muchas gracias, todo funcional en Linux

@Klerith
Copy link
Author

Klerith commented Aug 28, 2023

Gracias por decirnos FLeiras, pronto tendremos una aún más simple :)

@JohannCandia
Copy link

JohannCandia commented Sep 13, 2023

Todo funcionando en windows! Saludos

@DanteVzla
Copy link

26/10/2023 El enlace (https://nodejs.dev/en/learn/nodejs-with-typescript/) esta roto. Por lo menos a mi no me carga
404: Page could not be found
ENOENT: no such file or directory

@ERodriguez-10
Copy link

@cristianps1988
Copy link

Excelente, muchas gracias profe Fernando

@jaimeviloriogreen
Copy link

jaimeviloriogreen commented Feb 18, 2024

Fernando, y que tal tsx, funciona genial, me lo encuentro más rápido que ts-node y permito el uso de ESNext.

@Hernanarica
Copy link

Hola! Al día de hoy node tiene su --watch, esto puede reemplazar a nodemon?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment