[{"data":1,"prerenderedAt":171},["ShallowReactive",2],{"talk-\u002Ffr\u002Ftalks\u002F2025-10-21\u002Fstrasbourgjs":3,"talks-explore-fr-2a3868cb-81ac-4f38-95c0-2b82d36d2a0c":69},{"metadata":4,"summary":39,"transcript":68},{"id":5,"title":6,"artifacts":7,"date":9,"description":10,"event":11,"extension":19,"links":20,"locale":26,"meta":27,"slug":28,"sourceLanguage":26,"stem":29,"talkId":30,"topics":31,"__hash__":38},"talks\u002Ffr\u002Ftalks\u002F2025-10-21\u002Fstrasbourgjs.json","La réactivité et les signaux : démystifions la magie du frontend",{"summary":8},"summary.fr.md","2025-10-21","Décortiquez les mécanismes de réactivité du frontend : propagation des changements, suivi des dépendances, signaux, computed values et effects derrière les frameworks modernes.",{"name":12,"url":13,"location":14},"StrasbourgJS","https:\u002F\u002Fstrasbourgjs.org\u002F",{"city":15,"country":16,"latitude":17,"longitude":18},"Strasbourg","France",48.576651520014444,7.755109833536078,"json",{"slides":21,"thumbnail":22,"thumbnailDark":23,"source":24,"pdf":25},"https:\u002F\u002Ftalks.soubiran.dev\u002F2025-10-21\u002Fstrasbourgjs","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-10-21\u002Fstrasbourgjs\u002Fthumbnail.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-10-21\u002Fstrasbourgjs\u002Fthumbnail-dark.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-10-21\u002Fstrasbourgjs\u002Fsrc","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-10-21\u002Fstrasbourgjs\u002Fpdf","fr",{},"2025-10-21\u002Fstrasbourgjs","fr\u002Ftalks\u002F2025-10-21\u002Fstrasbourgjs","2a3868cb-81ac-4f38-95c0-2b82d36d2a0c",[32,33,34,35,36,37],"computed-values","dependency-tracking","effects","frontend-reactivity","signals","vue","a4ax6vlj7nhjeaYYOLf9e5h_XNqgcmi_dLmYCNuUgPo",{"id":40,"body":41,"extension":64,"meta":65,"rawbody":66,"stem":29,"__hash__":67},"talksSummary\u002Ffr\u002Ftalks\u002F2025-10-21\u002Fstrasbourgjs.md",{"type":42,"value":43,"toc":60},"minimark",[44,57],[45,46,47,48,52,53,56],"p",{},"Comment une interface sait-elle quoi recalculer lorsqu'un état change ? Cette présentation répond à la question avec l'équation ",[49,50,51],"code",{},"ui = fn(state)",", une comparaison avec Excel et une petite implémentation basée sur ",[49,54,55],{},"alien-signals",".",[45,58,59],{},"Elle détaille les graphes de dépendances et les listes doublement chaînées, puis aborde les abonnés, les computed, les effects et les propagations push et pull. Elle présente enfin plusieurs difficultés de la réactivité et montre le lien avec Vue.",{"title":61,"searchDepth":62,"depth":62,"links":63},"",2,[],"md",{},"Comment une interface sait-elle quoi recalculer lorsqu'un état change ? Cette présentation répond à la question avec l'équation `ui = fn(state)`, une comparaison avec Excel et une petite implémentation basée sur `alien-signals`.\n\nElle détaille les graphes de dépendances et les listes doublement chaînées, puis aborde les abonnés, les computed, les effects et les propagations push et pull. Elle présente enfin plusieurs difficultés de la réactivité et montre le lien avec Vue.\n","RbguA-v7WSJGcU7e3H6hOZkva3KKsSMCJtHrh9FAUzg",null,[70,107,141],{"id":71,"title":72,"artifacts":73,"date":75,"description":76,"event":77,"extension":19,"links":84,"locale":26,"meta":95,"slug":96,"sourceLanguage":26,"stem":97,"talkId":98,"topics":99,"__hash__":106},"talks\u002Ffr\u002Ftalks\u002F2024-04-19\u002Fdevoxxfr.json","Unifié et Universel, le JavaScript avec UnJS",{"summary":8,"transcript":74},"transcript.fr.md","2024-04-19","Découvrez la vision d'UnJS : des outils TypeScript modulaires et indépendants du runtime pour créer, publier et déployer des applications JavaScript, de l'edge à Node.js.",{"name":78,"url":79,"location":80},"Devoxx France","https:\u002F\u002Fdevoxx.fr\u002F",{"city":81,"country":16,"latitude":82,"longitude":83},"Paris",48.87920881050965,2.2836092090943354,{"slides":85,"thumbnail":86,"thumbnailDark":87,"source":88,"pdf":89,"recording":90,"youtubeEmbed":91,"audio":92,"transcript":93,"article":94},"https:\u002F\u002Ftalks.soubiran.dev\u002F2024-04-19\u002Fdevoxxfr","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-04-19\u002Fdevoxxfr\u002Fthumbnail.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-04-19\u002Fdevoxxfr\u002Fthumbnail-dark.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-04-19\u002Fdevoxxfr\u002Fsrc","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-04-19\u002Fdevoxxfr\u002Fpdf","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-04-19\u002Fdevoxxfr\u002Frecording","https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F0BApl8r1VWc","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-04-19\u002Fdevoxxfr\u002Faudio","https:\u002F\u002Fsoubiran.dev\u002Ftalks\u002F2024-04-19\u002Fdevoxxfr","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-04-19\u002Fdevoxxfr\u002Farticle",{},"2024-04-19\u002Fdevoxxfr","fr\u002Ftalks\u002F2024-04-19\u002Fdevoxxfr","ea6d94ce-12ce-4169-b34d-e003eb34e888",[100,101,102,103,104,105],"cross-runtime","developer-tooling","edge-computing","npm-packages","typescript","unjs","_NSZftTgub3rGzZtCYHz_m_jOG5ftnQiVIT3pMNNSfY",{"id":108,"title":109,"artifacts":110,"date":111,"description":112,"event":113,"extension":19,"links":119,"locale":26,"meta":129,"slug":130,"sourceLanguage":131,"stem":132,"talkId":133,"topics":134,"__hash__":140},"talks\u002Ffr\u002Ftalks\u002F2024-11-13\u002Fnuxtnation.json","Déployez des applications Nuxt qui passent à l'échelle",{"summary":8,"transcript":74},"2024-11-13","Découvrez comment NuxtHub met les applications Nuxt en production avec la plateforme edge de Cloudflare, des services de données gérés, des outils de déploiement et une architecture full-stack évolutive.",{"name":114,"url":115,"location":116},"Nuxt Nation","https:\u002F\u002Fnuxtnation.com\u002F",{"city":117,"country":117,"latitude":118,"longitude":118},"Online",0,{"slides":120,"thumbnail":121,"thumbnailDark":122,"source":123,"pdf":124,"recording":125,"youtubeEmbed":126,"audio":127,"transcript":128},"https:\u002F\u002Ftalks.soubiran.dev\u002F2024-11-13\u002Fnuxtnation","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-11-13\u002Fnuxtnation\u002Fthumbnail.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-11-13\u002Fnuxtnation\u002Fthumbnail-dark.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-11-13\u002Fnuxtnation\u002Fsrc","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-11-13\u002Fnuxtnation\u002Fpdf","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-11-13\u002Fnuxtnation\u002Frecording","https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FI4-YfEn8K0w","https:\u002F\u002Ftalks.soubiran.dev\u002F2024-11-13\u002Fnuxtnation\u002Faudio","https:\u002F\u002Fsoubiran.dev\u002Ftalks\u002F2024-11-13\u002Fnuxtnation",{},"2024-11-13\u002Fnuxtnation","en","fr\u002Ftalks\u002F2024-11-13\u002Fnuxtnation","2071049a-5675-4074-b066-6161255dd62d",[135,102,136,137,138,139],"cloudflare","full-stack","nitro","nuxt","nuxthub","VPc317UeNOtStBxlSs8vb98AtyBZ1FWXRywETpLUZkM",{"id":142,"title":143,"artifacts":144,"date":145,"description":146,"event":147,"extension":19,"links":153,"locale":26,"meta":159,"slug":160,"sourceLanguage":26,"stem":161,"talkId":162,"topics":163,"__hash__":170},"talks\u002Ffr\u002Ftalks\u002F2026-04-13\u002Ftakima.json","Au cœur d'une pipeline : démystifions Vite et ses plugins",{"summary":8},"2026-04-13","Explorez la pipeline de Vite, où chaque requête traverse résolution, chargement et transformation, pour comprendre et créer des plugins, des modules virtuels et des intégrations sur mesure.",{"name":148,"url":149,"location":150},"Takima","https:\u002F\u002Ftakima.fr\u002F",{"city":81,"country":16,"latitude":151,"longitude":152},48.80486167446941,2.324595137047259,{"slides":154,"thumbnail":155,"thumbnailDark":156,"source":157,"pdf":158},"https:\u002F\u002Ftalks.soubiran.dev\u002F2026-04-13\u002Ftakima","https:\u002F\u002Ftalks.soubiran.dev\u002F2026-04-13\u002Ftakima\u002Fthumbnail.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2026-04-13\u002Ftakima\u002Fthumbnail-dark.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2026-04-13\u002Ftakima\u002Fsrc","https:\u002F\u002Ftalks.soubiran.dev\u002F2026-04-13\u002Ftakima\u002Fpdf",{},"2026-04-13\u002Ftakima","fr\u002Ftalks\u002F2026-04-13\u002Ftakima","3dadd49a-56f7-47c2-9bd2-3a72b2f2f993",[164,165,166,167,168,169],"bundlers","esm","module-transforms","plugin-development","virtual-modules","vite","AEchyroPNHXDXUpufHrelvU7dNibOf9Rz-VTtmeDnEI",1790086908649]