tsx para TypeScript: guía completa con ejemplos prácticos

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

tsx para TypeScript: guía completa con ejemplos prácticos

1. ¿Qué es tsx y para qué sirve?

tsx es un runner moderno y de alto rendimiento para TypeScript y ESM (ECMAScript Modules) que permite ejecutar archivos .ts, .tsx y .mts directamente, sin necesidad de compilarlos previamente a JavaScript. Construido sobre esbuild (un empaquetador ultrarrápido en Go), tsx ofrece una ejecución casi instantánea del código TypeScript, convirtiéndolo en la herramienta ideal para desarrollo, prototipado, creación de scripts y pruebas.

¿Para qué sirve tsx? Tradicionalmente, ejecutar archivos TypeScript requería un proceso de dos pasos: primero compilar el código con tsc (TypeScript Compiler) y luego ejecutar el JavaScript resultante con Node.js. Esto ralentiza los ciclos de desarrollo. tsx resuelve este problema combinando compilación y ejecución en un solo paso. Maneja automáticamente la sintaxis de TypeScript, módulos ESM, JSX y la resolución de node_modules. En esencia, tsx es un reemplazo de ts-node, pero mucho más rápido y moderno.

Ventajas clave de tsx frente a otras alternativas: velocidad (usa esbuild, que es de 10 a 100 veces más rápido que tsc), soporte nativo para ESM (sin necesidad de configurar tsconfig.json para módulos), detección automática de la configuración de TypeScript y modo --watch integrado. tsx es perfecto para: escribir utilidades CLI en TypeScript, ejecutar pruebas (Jest, Vitest), crear scripts de automatización, prototipado rápido y aprender TypeScript.

2. Instalación

tsx se distribuye a través de npm (Node Package Manager) y se puede instalar de forma global o local en un proyecto. Se recomienda la instalación local para aislar las dependencias del proyecto.

Instalación local (recomendada):

npm install --save-dev tsx

O usando yarn:

yarn add --dev tsx

O pnpm:

pnpm add --save-dev tsx

Instalación global (para acceso rápido desde cualquier lugar):

npm install -g tsx

Verificar la instalación:

npx tsx --version

Después de la instalación, puedes ejecutar archivos TypeScript con el comando npx tsx nombre_archivo.ts (instalación local) o tsx nombre_archivo.ts (instalación global).

Importante: tsx requiere Node.js versión 18 o superior. Para trabajar con ESM, asegúrate de que tu package.json tenga el campo "type": "module" o usa la extensión .mts para los archivos.

3. Inicio rápido — ejemplo mínimo funcional

Crea un archivo hola.ts con el siguiente contenido:

// hola.ts
const saludar = (nombre: string): string => {
    return `¡Hola, ${nombre}! ¡Bienvenido al mundo de tsx!`;
};

const nombreUsuario: string = "PythonLib";
console.log(saludar(nombreUsuario));

// Usando características modernas de JS
const numeros: number[] = [1, 2, 3, 4, 5];
const duplicados = numeros.map((n) => n * 2);
console.log("Números duplicados:", duplicados);

// Código asíncrono
const obtenerDatos = async (): Promise => {
    const datos = await Promise.resolve({ id: 1, nombre: "Ejemplo" });
    console.log("Datos asíncronos:", datos);
};

obtenerDatos();

Ejecuta el archivo con el comando:

npx tsx hola.ts

Salida esperada:

¡Hola, PythonLib! ¡Bienvenido al mundo de tsx!
Números duplicados: [ 2, 4, 6, 8, 10 ]
Datos asíncronos: { id: 1, nombre: 'Ejemplo' }

Este ejemplo demuestra el funcionamiento básico de tsx: compila automáticamente TypeScript a JavaScript, soporta

Recommendations