[{"data":1,"prerenderedAt":164},["ShallowReactive",2],{"talk-\u002Ffr\u002Ftalks\u002F2025-12-05\u002Fdevfest-dijon":3,"talks-explore-fr-2ceb9345-9e50-475e-a246-6f94c986c13c":81},{"metadata":4,"summary":39,"transcript":80},{"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-12-05\u002Fdevfest-dijon.json","La réactivité et les signaux : démystifions la magie du frontend",{"summary":8},"summary.fr.md","2025-12-05","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},"DevFest Dijon","https:\u002F\u002Fdevfest.developers-group-dijon.fr\u002F",{"city":15,"country":16,"latitude":17,"longitude":18},"Dijon","France",47.31307384050383,5.072856389593075,"json",{"slides":21,"thumbnail":22,"thumbnailDark":23,"source":24,"pdf":25},"https:\u002F\u002Ftalks.soubiran.dev\u002F2025-12-05\u002Fdevfest-dijon","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-12-05\u002Fdevfest-dijon\u002Fthumbnail.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-12-05\u002Fdevfest-dijon\u002Fthumbnail-dark.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-12-05\u002Fdevfest-dijon\u002Fsrc","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-12-05\u002Fdevfest-dijon\u002Fpdf","fr",{},"2025-12-05\u002Fdevfest-dijon","fr\u002Ftalks\u002F2025-12-05\u002Fdevfest-dijon","2ceb9345-9e50-475e-a246-6f94c986c13c",[32,33,34,35,36,37],"computed-values","dependency-tracking","effects","frontend-reactivity","signals","vue","4w_v097XifBsj2m7eS84fmZktHeTwfibvsbbPrwSK-g",{"id":40,"body":41,"extension":76,"meta":77,"rawbody":78,"stem":29,"__hash__":79},"talksSummary\u002Ffr\u002Ftalks\u002F2025-12-05\u002Fdevfest-dijon.md",{"type":42,"value":43,"toc":72},"minimark",[44,65],[45,46,47,48,52,53,56,57,60,61,64],"p",{},"Le rendu réactif repose sur la connaissance des relations entre l'état et les calculs qui l'utilisent. Cette présentation explore ces relations avec ",[49,50,51],"code",{},"alien-signals",", depuis les API ",[49,54,55],{},"signal",", ",[49,58,59],{},"computed"," et ",[49,62,63],{},"effect"," jusqu'aux structures de données qui suivent les dépendances.",[45,66,67,68,71],{},"Elle explique la propagation des changements, les difficultés liées aux cycles et à l'état mutable, puis montre comment construire un petit framework piloté par les signaux. Un dernier exemple fait le lien avec ",[49,69,70],{},"ReactiveEffect"," dans Vue.",{"title":73,"searchDepth":74,"depth":74,"links":75},"",2,[],"md",{},"Le rendu réactif repose sur la connaissance des relations entre l'état et les calculs qui l'utilisent. Cette présentation explore ces relations avec `alien-signals`, depuis les API `signal`, `computed` et `effect` jusqu'aux structures de données qui suivent les dépendances.\n\nElle explique la propagation des changements, les difficultés liées aux cycles et à l'état mutable, puis montre comment construire un petit framework piloté par les signaux. Un dernier exemple fait le lien avec `ReactiveEffect` dans Vue.\n","tV55xzvt6L2ytzycgkzra0nyKOGOXWiyLFluqkuqth0",null,[82,110,141],{"id":83,"title":6,"artifacts":84,"date":86,"description":10,"event":87,"extension":19,"links":94,"locale":26,"meta":104,"slug":105,"sourceLanguage":26,"stem":106,"talkId":107,"topics":108,"__hash__":109},"talks\u002Ffr\u002Ftalks\u002F2026-02-12\u002Ftouraine-tech.json",{"summary":8,"transcript":85},"transcript.fr.md","2026-02-12",{"name":88,"url":89,"location":90},"Touraine Tech","https:\u002F\u002Ftouraine.tech\u002F",{"city":91,"country":16,"latitude":92,"longitude":93},"Tours",47.358059501856914,0.7028678082506143,{"slides":95,"thumbnail":96,"thumbnailDark":97,"source":98,"pdf":99,"recording":100,"youtubeEmbed":101,"audio":102,"transcript":103},"https:\u002F\u002Ftalks.soubiran.dev\u002F2026-02-12\u002Ftouraine-tech","https:\u002F\u002Ftalks.soubiran.dev\u002F2026-02-12\u002Ftouraine-tech\u002Fthumbnail.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2026-02-12\u002Ftouraine-tech\u002Fthumbnail-dark.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2026-02-12\u002Ftouraine-tech\u002Fsrc","https:\u002F\u002Ftalks.soubiran.dev\u002F2026-02-12\u002Ftouraine-tech\u002Fpdf","https:\u002F\u002Ftalks.soubiran.dev\u002F2026-02-12\u002Ftouraine-tech\u002Frecording","https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FLBc7S0yv9xY","https:\u002F\u002Ftalks.soubiran.dev\u002F2026-02-12\u002Ftouraine-tech\u002Faudio","https:\u002F\u002Fsoubiran.dev\u002Ftalks\u002F2026-02-12\u002Ftouraine-tech",{},"2026-02-12\u002Ftouraine-tech","fr\u002Ftalks\u002F2026-02-12\u002Ftouraine-tech","c54f4fcd-cb3d-4b74-b93f-a5ffad681bac",[32,33,34,35,36,37],"0kh24M2z3xGXXJVrqNm4tRMgbGiQ_li2Z02yvMAwh8Q",{"id":111,"title":112,"artifacts":113,"date":114,"description":115,"event":116,"extension":19,"links":123,"locale":26,"meta":129,"slug":130,"sourceLanguage":26,"stem":131,"talkId":132,"topics":133,"__hash__":140},"talks\u002Ffr\u002Ftalks\u002F2025-09-17\u002Fnodejs-paris.json","Inertia: Un Anneau pour les gouverner tous",{"summary":8},"2025-09-17","Découvrez comment Inertia.js et AdonisJS combinent un monolithe TypeScript, le routage serveur et une interface moderne sans la complexité d'une API séparée.",{"name":117,"url":118,"location":119},"Node.js Paris","https:\u002F\u002Fnodejs.paris\u002F",{"city":120,"country":16,"latitude":121,"longitude":122},"Paris",48.80486167446941,2.324595137047259,{"slides":124,"thumbnail":125,"thumbnailDark":126,"source":127,"pdf":128},"https:\u002F\u002Ftalks.soubiran.dev\u002F2025-09-17\u002Fnodejs-paris","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-09-17\u002Fnodejs-paris\u002Fthumbnail.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-09-17\u002Fnodejs-paris\u002Fthumbnail-dark.png","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-09-17\u002Fnodejs-paris\u002Fsrc","https:\u002F\u002Ftalks.soubiran.dev\u002F2025-09-17\u002Fnodejs-paris\u002Fpdf",{},"2025-09-17\u002Fnodejs-paris","fr\u002Ftalks\u002F2025-09-17\u002Fnodejs-paris","fbc88667-4546-46cf-a4c8-6815abe105eb",[134,135,136,137,138,139],"adonisjs","full-stack","inertiajs","monolith","server-driven-ui","typescript","W4KvaRPXDEekrgkTZN5ZSpyUSNGUR45U4D-Cadrkmkw",{"id":142,"title":6,"artifacts":143,"date":144,"description":10,"event":145,"extension":19,"links":152,"locale":26,"meta":158,"slug":159,"sourceLanguage":26,"stem":160,"talkId":161,"topics":162,"__hash__":163},"talks\u002Ffr\u002Ftalks\u002F2025-10-21\u002Fstrasbourgjs.json",{"summary":8},"2025-10-21",{"name":146,"url":147,"location":148},"StrasbourgJS","https:\u002F\u002Fstrasbourgjs.org\u002F",{"city":149,"country":16,"latitude":150,"longitude":151},"Strasbourg",48.576651520014444,7.755109833536078,{"slides":153,"thumbnail":154,"thumbnailDark":155,"source":156,"pdf":157},"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",{},"2025-10-21\u002Fstrasbourgjs","fr\u002Ftalks\u002F2025-10-21\u002Fstrasbourgjs","2a3868cb-81ac-4f38-95c0-2b82d36d2a0c",[32,33,34,35,36,37],"a4ax6vlj7nhjeaYYOLf9e5h_XNqgcmi_dLmYCNuUgPo",1790086908840]