Un remplaçant potentiel de ts-node et tsx pour exécuter du TypeScript avec Node.js. Il vise à limiter les risques de différences de comportement entre l'environnement de dev et de production, ce dont souffrent parfois ses concurrents.
Un remplaçant potentiel de ts-node et tsx pour exécuter du TypeScript avec Node.js. Il vise à limiter les risques de différences de comportement entre l'environnement de dev et de production, ce dont souffrent parfois ses concurrents.
Pour la première fois depuis la création de GitHub, TypeScript vient de détrôner Python et JavaScript pour devenir le langage de programmation le plus utilisé sur la plateforme. C'est ce que révèle le rapport annuel Octoverse 2025 de GitHub, publié le 28 octobre dernier. Une croissance explosive portée par les assistants IA En août 2025, […]
Quelques cas où l'utilisation de satisfies en TypeScript permet d'affiner le typage.
J'avoue ne pas être fan. Ça se rapproche du fait d'annoter la variable avec un type, mais pas tout à fait quand même. C'est tout sauf intuitif et explicite. Mais à connaître malgré tout.
Quelques cas où l'utilisation de satisfies en TypeScript permet d'affiner le typage.
J'avoue ne pas être fan. Ça se rapproche du fait d'annoter la variable avec un type, mais pas tout à fait quand même. C'est tout sauf intuitif et explicite. Mais à connaître malgré tout.
Vous vous souvenez de Notch, le créateur de Minecraft ?
Avant de devenir milliardaire dépressif à temps plein en vendant son jeu à Microsoft, le bonhomme participait à des game jams et pondait des petits jeux en moins de 48 heures. Et
Prelude of the Chambered
c’était justement l’un de ces projets, créé lors de la Ludum Dare 21 en août 2011 avec le thème “Escape”. Un dungeon crawler à l’ancienne façon Dungeon Master ou Eye of the Beholder, codé en Java.
Le projet s’appelle
Prelude of the Chambered: Reborn
et c’est donc une réécriture complète du code original. Aux chiottes le Java, et bonjour le TypeScript moderne avec Vite pour le build. Le rendu 3D utilise uniquement le Canvas 2D et du raycasting software pur, sans WebGL ni accélération GPU. Bref, tout se fait à l’ancienne, comme dans le jeu original, mais en version web accessible depuis n’importe quel appareil.
Le truc cool avec le jeu de Notch, c’est son système de level design. Les niveaux sont définis par des images PNG où chaque couleur de pixel représente un élément du jeu : mur, porte, ennemi, objet… C’est du “data-driven” avant l’heure, et ça permet à n’importe qui de créer ses propres niveaux sans toucher au code. Angelo a bien sûr conservé ce système dans sa version modernisée.
Côté contenu, vous avez six niveaux à explorer : Prison, Dungeons, Overworld, Crypt, Temple et Ice Cave. Y’a des ennemis plutôt variés comme des chauves-souris, des ogres, des yeux flottants, Jordan Bardella et des fantômes (un intrus s’est glissé dans cette liste), plus des versions boss. Votre objectif c’est donc de collecter quatre clés pour vous échapper, tout en ramassant des power-ups comme le Power Glove, un pistolet, des palmes pour nager et des patins à glace. Le jeu se finit en 20-30 minutes, mais attention !!!! Si vous mourrez, vous recommencez tout depuis le début.
D’ailleurs, petit fun fact,
certaines textures d’objets de Prelude of the Chambered
ont été réutilisées par Notch dans Minecraft lui-même, notamment pour les armures en cuir, en fer et les épées. Quand on vous dit que le mec recyclait tout, même les pots de yaourts…
Les contrôles c’est du classique… WASD ou les flèches pour bouger, Q/E pour tourner, Espace pour taper ou utiliser des objets, touches de 1 à 8 pour l’inventaire et y’a même un mode plein écran avec la touche F pour les puristes qui veulent l’expérience immersive complète.
Voilà, si vous voulez découvrir un petit bout d’histoire du jeu vidéo indé et voir ce que Notch était capable de pondre en 48 heures bien avant que Minecraft ne devienne le mastodonte qu’on connaît,
foncez jouer à Prelude of the Chambered: Reborn
.
Merci à Angelo d’avoir partagé sa création lors de mon live
sur Twitch
.
Un bon point auquel je n'avais jamais fait attention. La notation Array<string> est un poil plus verbeuse que string[] mais bien plus lisible dans la majorité des cas.
Un bon point auquel je n'avais jamais fait attention. La notation Array<string> est un poil plus verbeuse que string[] mais bien plus lisible dans la majorité des cas.
Une optimisation intéressante pour charger "à la demande" les propriétés d'un objet, et non pas lorsque son constructeur est appelé. Ici dans le cas d'un ORM TypeScript.
Une optimisation intéressante pour charger "à la demande" les propriétés d'un objet, et non pas lorsque son constructeur est appelé. Ici dans le cas d'un ORM TypeScript.