Découvre JSrun : L’outil qui va simplifier ta vie de développeur JavaScript

Découvre JSrun : L’outil qui va simplifier ta vie de développeur JavaScript

Simplifie tes projets JavaScript avec JSrun : L'outil qui gère tes dépendances et versions sans prise de tête

·

5 min read

Hey ! Aujourd'hui, je suis super excité de te parler d'un petit outil que j'ai récemment développé : JSrun. Si tu galères parfois avec la gestion des modules et des dépendances dans tes projets JavaScript ou TypeScript, cet outil va clairement te changer la donne. L’idée derrière JSrun, c’est de te libérer de tous les tracas techniques : plus de nœuds au cerveau avec les node_modules ou les versions de packages. Toi, tu te concentres sur ton code, et JSrun s’occupe du reste.

Pourquoi j’ai créé JSrun ?

Tout est parti d’un projet perso où je bossais sur un petit bot. Je voulais pouvoir exécuter mes scripts rapidement, mais entre les dépendances Node.js, les versions de modules à jongler, et ces fameux dossiers node_modules qui bouffent de l’espace, c'était la galère. Et là, je me suis dit : « Pourquoi ne pas créer un outil qui gère tout ça pour moi ? » C’est comme ça qu’est né JSrun !

Avec JSrun, tu peux exécuter des scripts .jsr, .js, .mjs et même .ts sans te prendre la tête. Plus besoin d'installer manuellement les packages à chaque fois. Tu lances ton script et si une dépendance manque, JSrun l'installe automatiquement pour toi. Tranquille, non ?

Le format .jsr : C’est quoi exactement ?

Le .jsr, c’est une petite touche perso que j’ai ajoutée. Ce n’est pas un nouveau langage ou quoi que ce soit. En fait, c’est toujours du pur JavaScript ou TypeScript, mais avec une extension dédiée à JSrun. Ça permet simplement de repérer facilement les scripts qui sont destinés à être exécutés avec cet outil. C’est une manière pratique d’organiser tes projets et de rendre tout ça plus propre.

Mais ne t'inquiète pas, JSrun fonctionne aussi très bien avec les extensions classiques comme .js ou .ts. Le format .jsr est là pour les adeptes de l’organisation !

JSrun : Les fonctionnalités qui vont te plaire

C’est pas juste un lanceur de scripts, c’est un vrai couteau suisse. Voilà ce qu’il peut faire pour toi :

  • Gestion automatique des modules : Fini les npm install. Si un module manque, JSrun le télécharge pour toi.

  • Spécification des versions dans les imports : Tu peux directement définir la version d’un module dans tes imports, et JSrun gère tout.

  • Mise en cache intelligente : Les modules sont mis en cache localement pour accélérer les exécutions suivantes.

  • Journalisation colorée : Grâce à chalk, tes logs sont non seulement plus lisibles, mais aussi plus stylés !

  • Gestion des erreurs : Des messages clairs et détaillés pour déboguer sans prise de tête.

  • Extensible : Prêt à évoluer selon tes besoins !

Installation : Simple et rapide

Avant de commencer, assure-toi d’avoir Node.js sur ta machine. Si ce n’est pas le cas, télécharge-le ici.

Pour installer JSrun, une seule commande suffit :

npm install -g jsrun-cli

Comment utiliser JSrun ?

Lancer un script

Une fois installé, tu peux exécuter n'importe quel script, où que tu sois sur ton système. Par exemple, si tu as un fichier monscript.jsr :

jsrun monscript.jsr

Ça prend en charge les extensions .jsr, .js, .mjs, et .ts. Peu importe le format, il gère tout !

Passer des arguments au script

Besoin de passer des options à ton script ? Facile avec JSrun :

jsrun monscript.jsr --port=4000 --env=production

Dans ton script, tu peux récupérer ces arguments comme ceci :

const args = process.argv.slice(2);
const port = args.find((arg) => arg.startsWith("--port="))?.split("=")[1] || 3000;
const env = args.find((arg) => arg.startsWith("--env="))?.split("=")[1] || "development";

console.log(`Exécution sur le port ${port} en mode ${env}.`);

Créer un nouveau script

Envie de démarrer avec un nouveau script ? Rien de plus simple :

jsrun create monscript.jsr

Cela te génère un fichier de script prêt à être utilisé avec JSrun.

Simuler l'exécution du script

Si tu veux vérifier ce que ton script ferait sans réellement l’exécuter, tu peux utiliser l’option --dry-run pour une simulation :

jsrun monscript.jsr --dry-run

Cela permet de voir ce qu'il se passerait lors de l'exécution, sans toucher aux modules ni exécuter de code.

Afficher le retour en format JSON

Besoin de voir les résultats d’exécution en format JSON ? Facile avec l’option --json :

jsrun monscript.jsr --json

Super pratique pour des retours structurés et facilement intégrables dans des workflows automatisés.

Nettoyer les packages installés

Quand ton projet commence à accumuler des modules dont tu n'as plus besoin, un bon nettoyage s’impose. JSrun peut s’en charger avec une simple commande :

jsrun --clean

Des performances au top, sans efforts

Un des gros points forts de JSrun, c’est sa mise en cache des modules. Les modules que tu utilises sont stockés localement dans ~/.jsrun/node_modules. Résultat : les exécutions suivantes sont beaucoup plus rapides. Et tout ça, sans que tu aies à lever le petit doigt !

Exemples et contributions

Si tu veux voir des exemples de scripts .jsr, va faire un tour dans le dossier /examples du projet sur GitHub. J’ai mis quelques exemples sympas pour t’inspirer.

Et si tu as des idées d’amélioration, n’hésite pas à contribuer ! Forke le dépôt, fais tes modifs, et soumets un pull request. Toutes les idées sont les bienvenues.

Conclusion

Avec JSrun, mon but était de simplifier au maximum l’exécution de scripts JavaScript et TypeScript, sans avoir à se battre avec les dépendances ou les versions de modules. Que tu bosses sur un projet rapide ou quelque chose de plus complexe, JSrun te permet de te concentrer sur le code, en laissant de côté les aspects techniques.

Télécharge-le dès maintenant sur npm et lance-toi !

Did you find this article valuable?

Support Ben ✨ by becoming a sponsor. Any amount is appreciated!