Interstellar Code

Inicializar un servidor Express con TypeScript

Aprende a configurar un servidor Express utilizando TypeScript, incluyendo la estructura de carpetas y la configuración del entorno.

01 de septiembre de 2025

Tabla de contenido:

  1. 1. Inicializar un servidor Express con TypeScript
  2. 2. Opción 1: Usando ts-node
  3. 3. Opción 2: Alternativa
  4. 4. Opción 3: Alternativa simplificada

Inicializar un servidor Express con TypeScript

Para poder iniciar un servidor de Express utilizando TypeScript podemos seguir una de las siguientes formas, donde podemos utilizar ts-node, o alguna otra alternativa como esbuild o swc.


Opción 1: Usando ts-node

1.- Instalar TypeScript y demás dependencias necesarias:

npm install typescript ts-node-dev @types/node rimraf

2.- Inicializar el archivo de configuración de TypeScript:

npx tsc --init --outDir dist/ --rootDir src

3.- Crear scripts para dev, build y start en el package.json:

"scripts": {
  "dev": "tsnd --respawn src/app.ts",
  "build": "rimraf ./dist && tsc",
  "start": "npm run build && node dist/app.js"
}

Opción 2: Alternativa

1.- Instalar TypeScript y tipos de Node, como dependencia de desarrollo.

npm i -D typescript @types/node

2.- Inicializar el archivo de configuración de TypeScript:

npx tsc --init --outDir dist/ --rootDir src

3.- Opcional - Para transpilar el código, se puede usar este comando.

npx tsc
npx tsc --watch

4.- Configurar Nodemon y Node-TS.

npm i -D nodemon ts-node

5.- Crear archivo de configuración de Nodemon nodemon.json en la raíz del proyecto.

{
  "watch": ["src"],
  "ext": ".ts,.js",
  "ignore": ["src/**/*.spec.ts"],
  "exec": "npx ts-node ./src/app.ts"
}

6.- Crear scripts para dev en el package.json:

"scripts": {
  "dev": "nodemon",
}

7.- Instalar rimraf (Herramienta que funciona similar al rm -f) para eliminar la carpeta dist.

npm i -D rimraf

8.- Crear script para build y start en el package.json:

"scripts": {
  "build": "rimraf ./dist && tsc",
  "start": "npm run build && node dist/app.js"
}

Opción 3: Alternativa simplificada

1.- Instalar TypeScript y tipos de Node, como dependencia de desarrollo.

npm i -D typescript @types/node ts-node nodemon rimraf

2.- Inicializar el archivo de configuración de TypeScript:

npx tsc --init --outDir dist/ --rootDir src

3.- Crear archivo de configuración de Nodemon nodemon.json en la raíz del proyecto.

{
  "watch": ["src"],
  "ext": ".ts,.js",
  "ignore": ["src/**/*.spec.ts"],
  "exec": "npx ts-node ./src/app.ts"
}

4.- Crear scripts para dev, build y start en el package.json:

"scripts": {
  "dev": "nodemon",
  "build": "rimraf ./dist && tsc",
  "start": "npm run build && node dist/app.js"
}