Baptiste est un fan inconditionnel de la librairie JavaScript XState depuis 2020 et il a contaminé Paul sans trop de difficulté. Ils en parlent en long, en large et en travers dans cet épisode. Paul et Baptiste abordent notamment la version 5 de XState qui améliore grandement la librairie, mais aussi du Stately Studio – l'éditeur de state machines en ligne développé par les mainteneurs de XState. L'épisode se termine sur la place toute trouvée de XState dans la création d'AI Agents avec @statelyai/agent.Vidéo de Baptiste sur Panda CSSVidéo de Baptiste sur la transformation d'un podcast en vidéo avec RemotionRemotionReact Three FiberXStateStatechartsSCXMLscionXState by ExampleStately StudioFonction setup() de XState 5@xstate/store@statelyai/agent
En ce moment, Paul s'intéresse à la spécification OpenAPI. Grâce à l'OpenAPI, Paul peut automatiser beaucoup de tâches, comme la génération de types TypeScript pour les données retournées par un backend. L'utilisation d'une spécification OpenAPI permet aussi de simplifier la communication entre plusieurs équipes, voire de développer en parallèle le frontend et le backend.Liens :OpenAPIOpenAPI LinksAwesome OpenAPI3openapi-typescriptopenapi-fetchtRPCJapa API Client : assertAgainstApiSpecMSWmsw-auto-mock
Baptiste a récemment testé Panda CSS, une nouvelle solution de styling CSS-in-JS, qui privilégie la type-safety et la génération des styles au build time au lieu du runtime. Paul et Baptiste se retrouvent pour discuter de l'intérêt de Panda CSS et de ses différences avec d'autres outils comme Tailwind CSS et styled-components.Liens :Panda CSSCVASVAClass Variance AuthorityTailwind CSSTailwind UIPlayground Tailwind -> PandaStyleXArticle de Baptiste à propos de ses premières impressions de Panda CSSVidéo de Theo t3.gg sur l'article de BaptisteVidéo de réponse de Baptiste à Theo
Paul fait face à 8 000 erreurs TypeScript sur un projet du boulot. Dans cet épisode, il nous fait part de sa stratégie pour réduire leur nombre. Paul et Baptiste discutent des bonnes pratiques à suivre pour la configuration d'un projet TypeScript et font un tour des outils qui étendent les capacités de TypeScript, tels que Zod ou Zodios.
Dans cet épisode, Baptiste et Paul explorent les nouvelles capacités d'Astro depuis les versions majeures 3 et 4, en discutant notamment de la nouvelle API des View Transitions et du support des Single-Page Applications (SPA).
Dans cet épisode, Paul et Baptiste abordent le sujet du testing au sein de l'écosystème JavaScript. Paul présente ses catégories de tests préférées et pose également la question de ce qu'il faut tester dans une codebase et quand.Baptiste fait part de sa récente formation au screencasting et des automatismes qu'il cherche à développer pour garantir une constance dans la qualité de ses vidéos.(00:00) - Testing JavaScript (43:00) - Screencasting
Récemment, Baptiste a sorti une librairie sur npm qui génère une définition de workflow Windmill à partir d'une liste de nodes et de edges Reactflow. Il explique quel a été son process pour la mettre en ligne, en partant du build réalisé avec tsup jusqu'au versioning avec changesets.Paul s'est récemment intéressé au Dependabot et à la détection automatique de failles de sécurité dans le code. Il nous explique comment le Dependabot marche et pourquoi il vaut mieux arrêter de supprimer les mails de prévention qu'il nous envoie avant de les avoir lus. (00:00) - Publier une librairie sur npm (40:20) - Dependabot