tsx pour TypeScript : guide complet avec exemples

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

tsx pour TypeScript : guide complet avec exemples

1. Qu'est-ce que tsx et pourquoi l'utiliser ?

tsx est un runner moderne et haute performance pour TypeScript et ESM (ECMAScript Modules). Il permet d'exécuter directement les fichiers .ts, .tsx et .mts sans compilation préalable en JavaScript. Construit sur esbuild (un bundler ultra-rapide en Go), tsx offre un lancement quasi instantané du code TypeScript, ce qui en fait l'outil idéal pour le développement, le prototypage, l'écriture de scripts et les tests.

Pourquoi utiliser tsx ? Traditionnellement, exécuter un fichier TypeScript nécessite deux étapes : d'abord compiler le code avec tsc (TypeScript Compiler), puis exécuter le JavaScript obtenu avec Node.js. Cela ralentit les itérations de développement. tsx résout ce problème en combinant compilation et exécution en une seule étape. Il gère automatiquement la syntaxe TypeScript, les modules ESM, le JSX et même la résolution des node_modules. En bref, tsx est un remplacement de ts-node, mais beaucoup plus rapide et moderne.

Les avantages clés de tsx par rapport aux alternatives : la vitesse (utilise esbuild, 10 à 100 fois plus rapide que tsc), la prise en charge native d'ESM (sans configuration tsconfig.json pour les modules), la détection automatique de la configuration TypeScript, et le mode --watch intégré. tsx est parfait pour : écrire des utilitaires CLI en TypeScript, lancer des tests (Jest, Vitest), créer des scripts d'automatisation, faire du prototypage rapide et apprendre TypeScript.

2. Installation

tsx est distribué via npm (Node Package Manager) et peut être installé globalement ou localement dans un projet. L'installation locale est recommandée pour isoler les dépendances du projet.

Installation locale (recommandée) :

npm install --save-dev tsx

Ou avec yarn :

yarn add --dev tsx

Ou avec pnpm :

pnpm add --save-dev tsx

Installation globale (pour un accès rapide depuis n'importe où) :

npm install -g tsx

Vérification de l'installation :

npx tsx --version

Après l'installation, vous pouvez exécuter des fichiers TypeScript avec la commande npx tsx nom_du_fichier.ts (installation locale) ou tsx nom_du_fichier.ts (installation globale).

Important : tsx nécessite Node.js version 18 ou supérieure. Pour utiliser ESM, assurez-vous que votre package.json contient le champ "type": "module" ou utilisez l'extension .mts pour vos fichiers.

3. Démarrage rapide — exemple minimal fonctionnel

Créez un fichier hello.ts avec le contenu suivant :

// hello.ts
const greet = (name: string): string => {
    return `Bonjour, ${name} ! Bienvenue dans l'univers de tsx !`;
};

const userName: string = "PythonLib";
console.log(greet(userName));

// Utilisation des fonctionnalités modernes de JS
const numbers: number[] = [1, 2, 3, 4, 5];
const doubled = numbers.map((n) => n * 2);
console.log("Nombres doublés :", doubled);

// Code asynchrone
const fetchData = async (): Promise => {
    const data = await Promise.resolve({ id: 1, name: "Exemple" });
    console.log("Données asynchrones :", data);
};

fetchData();

Exécutez le fichier avec la commande :

npx tsx hello.ts

Sortie attendue :

Bonjour, PythonLib ! Bienvenue dans l'univers de tsx !
Nombres doublés : [ 2, 4, 6, 8, 10 ]
Données asynchrones : { id: 1, name: 'Exemple' }

Cet exemple illustre le fonctionnement de base de tsx : il compile automatiquement le TypeScript en JavaScript, prend en charge

Recommendations