[{"data":1,"prerenderedAt":348},["ShallowReactive",2],{"i-ic:outline-arrow-upward":3,"Footer_afPiwGMwNiEyV4syWzw87ovzxHAgs4iwKtCn4zqBf8E":8,"episode-\u002Fpodcasts\u002Fnews-03-24":16,"github-sponsor":250,"i-material-symbols:home":325,"i-ic:baseline-play-circle-filled-white":327,"i-material-symbols:ios-share":329,"i-cbi:deezer-logo":331,"i-vscode-icons:file-type-rss":333,"i-ri:heart-3-fill":336,"Brand_dlIOZD2O03VXPoFYukMOJnSnZRMTmJ0YwMKY5fNK8":338,"Duration_5fnUb5dO3GPoCY54EbonujRUgEtKMSQF5XTULMzMKHI":343},{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":7},0,24,false,"\u003Cpath fill=\"currentColor\" d=\"m4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8z\"\u002F>",["Island",9],{"key":10,"result":11},"Footer_afPiwGMwNiEyV4syWzw87ovzxHAgs4iwKtCn4zqBf8E",{"head":12},{"style":13},[14],{"innerHTML":15},":where(.i-mdi\\:github){display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;--svg:url(\"data:image\u002Fsvg+xml,%3Csvg xmlns='http:\u002F\u002Fwww.w3.org\u002F2000\u002Fsvg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M12 2A10 10 0 0 0 2 12c0 4.42 2.87 8.17 6.84 9.5c.5.08.66-.23.66-.5v-1.69c-2.77.6-3.36-1.34-3.36-1.34c-.46-1.16-1.11-1.47-1.11-1.47c-.91-.62.07-.6.07-.6c1 .07 1.53 1.03 1.53 1.03c.87 1.52 2.34 1.07 2.91.83c.09-.65.35-1.09.63-1.34c-2.22-.25-4.55-1.11-4.55-4.92c0-1.11.38-2 1.03-2.71c-.1-.25-.45-1.29.1-2.64c0 0 .84-.27 2.75 1.02c.79-.22 1.65-.33 2.5-.33s1.71.11 2.5.33c1.91-1.29 2.75-1.02 2.75-1.02c.55 1.35.2 2.39.1 2.64c.65.71 1.03 1.6 1.03 2.71c0 3.82-2.34 4.66-4.57 4.91c.36.31.69.92.69 1.85V21c0 .27.16.59.67.5C19.14 20.16 22 16.42 22 12A10 10 0 0 0 12 2'\u002F%3E%3C\u002Fsvg%3E\")}",{"id":17,"title":18,"author":19,"body":20,"categories":221,"description":223,"dsSlug":224,"duration":225,"episodeArtwork":226,"episodeNumber":227,"episodeType":228,"explicit":6,"extension":229,"guid":230,"links":231,"meta":232,"navigation":233,"path":234,"publicationDate":235,"season":236,"seo":237,"status":238,"stem":239,"subtitle":240,"tags":241,"videoLink":248,"__hash__":249},"podcasts\u002Fpodcasts\u002F083.news-03-24\u002Findex.md","Les News Web Dev mars 2024","Double Slash",{"type":21,"value":22,"toc":204},"minimark",[23,28,37,41,44,50,54,60,63,66,77,80,86,89,95,99,105,109,115,119,125,129,135,139,142,148,152,158,162,165,171,175,181,185,191,195,201],[24,25,27],"h3",{"id":26},"pwa-et-apple","PWA et Apple",[29,30,31],"p",{},[32,33,34],"a",{"href":34,"rel":35},"https:\u002F\u002Ftwitter.com\u002Fi\u002Fweb\u002Fstatus\u002F1763598540389929313",[36],"nofollow",[24,38,40],{"id":39},"rollup-version-rust","Rollup version Rust",[29,42,43],{},"Le futur bundler de Vite",[29,45,46],{},[32,47,48],{"href":48,"rel":49},"https:\u002F\u002Fgithub.com\u002Frolldown\u002Frolldown",[36],[24,51,53],{"id":52},"tailwind-v4-alpha","Tailwind v4 Alpha",[29,55,56],{},[32,57,58],{"href":58,"rel":59},"https:\u002F\u002Ftailwindcss.com\u002Fblog\u002Ftailwindcss-v4-alpha",[36],[29,61,62],{},"🚫 No postcss.config.js file\n🚫 No tailwind.config.js file.\n🚫 No configuring content globs.\n🚫 No @tailwind` directives in your CSS.",[29,64,65],{},"Exemple de Simon (Pro Tailwind)",[67,68,73],"pre",{"className":69,"code":71,"language":72},[70],"language-text","\u002F* app\u002Fstyles.css *\u002F\n\n@import 'tailwindcss'\n\n@theme {\n  --color-primary: #aab9ff;\n}\n","text",[74,75,71],"code",{"__ignoreMap":76},"",[29,78,79],{},"This is the equivalent of doing the following in Tailwind CSS v3:",[67,81,84],{"className":82,"code":83,"language":72},[70],"\u002F\u002F tailwind.config.ts\n\nexport default {\n  theme: {\n    colors: {\n      primary: '#aab9ff'\n    }\n  }\n}\n",[74,85,83],{"__ignoreMap":76},[29,87,88],{},"In v4, the CSS variables are also exposed in your CSS output, which means you can “consume” those variables anywhere you need it:",[67,90,93],{"className":91,"code":92,"language":72},[70],"\u003Cdiv class=\"bg-(--color-primary)\">\n",[74,94,92],{"__ignoreMap":76},[24,96,98],{"id":97},"laravel-11","Laravel 11",[29,100,101],{},[32,102,103],{"href":103,"rel":104},"https:\u002F\u002Fblog.laravel.com\u002Flaravel-11-now-available",[36],[24,106,108],{"id":107},"react-compilé-mais-pas-pour-le-v19","React compilé mais pas pour le v19",[29,110,111],{},[32,112,113],{"href":113,"rel":114},"https:\u002F\u002Freacttraining.com\u002Fblog\u002Freact-19-will-be-compiled",[36],[24,116,118],{"id":117},"million-lint-pour-identifier-le-code-lent-et-suggérer-des-améliorations","Million Lint, pour identifier le code lent et suggérer des améliorations",[29,120,121],{},[32,122,123],{"href":123,"rel":124},"https:\u002F\u002Fmillion.dev\u002Fblog\u002Flint",[36],[24,126,128],{"id":127},"nuxt-hub-alpha","Nuxt Hub Alpha",[29,130,131],{},[32,132,133],{"href":133,"rel":134},"https:\u002F\u002Fhub.nuxt.com\u002F",[36],[24,136,138],{"id":137},"astro-studio-et-astro-db","Astro Studio et Astro DB ??",[29,140,141],{},"Espace avec une DB disponible et des helpers dans Astro pour interroger la DB.\nVidéo prochainement.",[29,143,144],{},[32,145,146],{"href":146,"rel":147},"https:\u002F\u002Fstudio.astro.build\u002F",[36],[24,149,151],{"id":150},"rspress-rspack-static-site-generator","RSPress, rspack static site generator",[29,153,154],{},[32,155,156],{"href":156,"rel":157},"https:\u002F\u002Fgithub.com\u002Fweb-infra-dev\u002Frspress",[36],[24,159,161],{"id":160},"shiki-syntaxe-highlighter-twoslash","Shiki Syntaxe highlighter + Twoslash",[29,163,164],{},"Retourne le code déjà formaté contrairement a Prism ou highlight.js.",[29,166,167],{},[32,168,169],{"href":169,"rel":170},"https:\u002F\u002Fnuxt.com\u002Fblog\u002Fshiki-v1",[36],[24,172,174],{"id":173},"livre-pour-implémenter-auth-sur-une-web-app","Livre pour implémenter auth sur une web app",[29,176,177],{},[32,178,179],{"href":179,"rel":180},"https:\u002F\u002Fthecopenhagenbook.com\u002F",[36],[24,182,184],{"id":183},"inp-article","INP Article",[29,186,187],{},[32,188,189],{"href":189,"rel":190},"https:\u002F\u002Fagencewebperformance.fr\u002Fmetrique-inp-amelioration\u002F",[36],[24,192,194],{"id":193},"streaming-without-js","Streaming without JS",[29,196,197],{},[32,198,199],{"href":199,"rel":200},"https:\u002F\u002Flamplightdev.com\u002Fblog\u002F2024\u002F01\u002F10\u002Fstreaming-html-out-of-order-without-javascript\u002F",[36],[29,202,203],{},"Bonne écoute !",{"title":76,"searchDepth":205,"depth":205,"links":206},2,[207,209,210,211,212,213,214,215,216,217,218,219,220],{"id":26,"depth":208,"text":27},3,{"id":39,"depth":208,"text":40},{"id":52,"depth":208,"text":53},{"id":97,"depth":208,"text":98},{"id":107,"depth":208,"text":108},{"id":117,"depth":208,"text":118},{"id":127,"depth":208,"text":128},{"id":137,"depth":208,"text":138},{"id":150,"depth":208,"text":151},{"id":160,"depth":208,"text":161},{"id":173,"depth":208,"text":174},{"id":183,"depth":208,"text":184},{"id":193,"depth":208,"text":194},[222],"Technology","Un épisode pour parler d’Apple qui fait marche arrière devant la commission européenne, de Rust de plus en plus présent dans nos outils, de la version de Tailwind 4 qui arrive en version alpha, de Laravel 11, d’Astro qui n’arrête plus de nous surprendre et pleins d’autres choses.","DS_083_news-03-24",3375,"https:\u002F\u002Fres.cloudinary.com\u002Fdoubleslash\u002Fimage\u002Fupload\u002Fv1710311967\u002Fepisode\u002FART_83_srvzdf.png",83,"full","md",null,[],{},true,"\u002Fpodcasts\u002Fnews-03-24","2024-03-13",1,{"title":18,"description":223},"published","podcasts\u002F083.news-03-24\u002Findex","L'actualité du développement Web",[242,243,244,245,246,247],"pwa","tailwindcss","astro","nuxt","shiki","web core vitals","khiumNmZf4o","I5hP2wq8_n7uW77_nfY3W3uixrbf15iSsr-Bckwh6Yo",{"data":251},{"organization":252},{"sponsorsListing":253},{"name":254,"fullDescriptionHTML":255,"url":256,"shortDescription":257,"activeGoal":258,"isPublic":233,"sponsorable":262},"sponsors-double-slash-podcast","\u003Cp>Le podcast des dev pour dev par des dev !\u003C\u002Fp>\n\u003Cp>Des podcasts et des videos sur les technologie WEB modernes.\u003C\u002Fp>\n\u003Cp>A deux ou avec un invité, on discute des tendances, des nouvelles technologies, des meilleures pratiques actuelles.\u003C\u002Fp>\n\u003Cp>🎥 \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fchannel\u002FUCp5DGBAX2XNJXeOVAo7bICQ\">Youtube\u003C\u002Fa>\u003Cbr>\n🎙️ \u003Ca href=\"https:\u002F\u002Fspoti.fi\u002F317wtvD\">Spotify\u003C\u002Fa> ▪️ \u003Ca href=\"https:\u002F\u002Fapple.co\u002F3fTguFo\">Apple Podcast\u003C\u002Fa> ▪️ \u003Ca href=\"https:\u002F\u002Fbit.ly\u002F3i0hDgy\">Deezer\u003C\u002Fa> ▪️ \u003Ca href=\"https:\u002F\u002Fbit.ly\u002F31aKKYd\">Google Podcast\u003C\u002Fa>\u003Cbr>\n🌐 \u003Ca href=\"https:\u002F\u002Fdouble-slash.dev\u002F\">Double Slash DEV\u003C\u002Fa>\u003C\u002Fp>","https:\u002F\u002Fgithub.com\u002Fsponsors\u002Fdouble-slash-podcast","Le podcast des dev pour les dev par des dev !",{"description":259,"percentComplete":260,"targetValue":260,"title":261},"L'ensemble des charges seront couvertes. Service de stockage et abonnement aux services utilisés.",70,"$70 per month",{"sponsors":263},{"edges":264},[265,271,277,283,289,295,301,307,313,319],{"node":266},{"id":267,"name":268,"url":269,"avatarUrl":270},"MDQ6VXNlcjEwMDMwNw==","Clément Delmas","https:\u002F\u002Fgithub.com\u002Fclem","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F100307?u=878ed4b7cdf920879b57046f19e434fea2c7d296&v=4",{"node":272},{"id":273,"name":274,"url":275,"avatarUrl":276},"MDQ6VXNlcjI3NTYwOQ==","Thibaud Lepretre","https:\u002F\u002Fgithub.com\u002Fkakawait","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F275609?v=4",{"node":278},{"id":279,"name":280,"url":281,"avatarUrl":282},"MDQ6VXNlcjE5MTQxNjA=","David Pollet","https:\u002F\u002Fgithub.com\u002Fdavidpollet","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1914160?u=4b3da16383b9fa810fd0980f756000709403ab45&v=4",{"node":284},{"id":285,"name":286,"url":287,"avatarUrl":288},"MDQ6VXNlcjYzMzMzOTY=","Eric","https:\u002F\u002Fgithub.com\u002Fericledonge","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F6333396?u=e9e541a6b9125d8e8b558fdd914c847eb36db695&v=4",{"node":290},{"id":291,"name":292,"url":293,"avatarUrl":294},"MDQ6VXNlcjg4OTk3Njg=","François Gardien","https:\u002F\u002Fgithub.com\u002FYoutch","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F8899768?u=85ae8c4299c380bcec02e99e9364624f3ce333c7&v=4",{"node":296},{"id":297,"name":298,"url":299,"avatarUrl":300},"MDQ6VXNlcjEwMTc2NjI2","Antharuu","https:\u002F\u002Fgithub.com\u002Fantharuu","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F10176626?u=3f6ef490b330d5a9bbaa3137560b5d1d4cf13a4a&v=4",{"node":302},{"id":303,"name":304,"url":305,"avatarUrl":306},"MDQ6VXNlcjEwMTg2OTkz","Adrien Zaganelli","https:\u002F\u002Fgithub.com\u002FadrienZ","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F10186993?u=08189ef8cf708a61445b6a57cf7a2aa361d484af&v=4",{"node":308},{"id":309,"name":310,"url":311,"avatarUrl":312},"MDQ6VXNlcjI2MTQyMzgz","Thomas Lemoine","https:\u002F\u002Fgithub.com\u002Fthomaslemoine","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F26142383?u=4c68175459b0ae1f8c68c48c40f2ae148747675d&v=4",{"node":314},{"id":315,"name":316,"url":317,"avatarUrl":318},"MDQ6VXNlcjY1NzM3MTMx","Valentin Grenier","https:\u002F\u002Fgithub.com\u002Fvalentin-grenier","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F65737131?u=0ba0cc828412f6655a948c6a82f69b9c909f8fd9&v=4",{"node":320},{"id":321,"name":322,"url":323,"avatarUrl":324},"U_kgDOBipZwA","Hebrard Frederic","https:\u002F\u002Fgithub.com\u002Ffrederichebrard","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F103438784?v=4",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":326},"\u003Cpath fill=\"currentColor\" d=\"M4 21V9l8-6l8 6v12h-6v-7h-4v7z\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":328},"\u003Cpath fill=\"currentColor\" d=\"M12 2C6.475 2 2 6.475 2 12s4.475 10 10 10s10-4.475 10-10S17.525 2 12 2m-2 14.5v-9l6 4.5z\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":330},"\u003Cpath fill=\"currentColor\" d=\"M6 22q-.825 0-1.412-.587T4 20V10q0-.825.588-1.412T6 8h3v2H6v10h12V10h-3V8h3q.825 0 1.413.588T20 10v10q0 .825-.587 1.413T18 22zm5-6V4.825l-1.6 1.6L8 5l4-4l4 4l-1.4 1.425l-1.6-1.6V16z\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":332},"\u003Cpath fill=\"currentColor\" d=\"M18.774 5.051c.185-1.072.457-1.747.757-1.748c.561 0 1.015 2.341 1.015 5.228s-.455 5.229-1.016 5.229c-.23 0-.443-.4-.614-1.064c-.27 2.439-.831 4.115-1.48 4.115c-.5 0-.953-1.007-1.256-2.594c-.207 3.018-.727 5.161-1.334 5.161c-.381 0-.73-.848-.987-2.231C13.55 20 12.834 22 12 22s-1.551-2-1.86-4.853c-.255 1.383-.6 2.231-.986 2.231c-.609 0-1.128-2.142-1.335-5.161c-.3 1.587-.752 2.594-1.256 2.594c-.649 0-1.21-1.676-1.481-4.115c-.169.668-.382 1.064-.613 1.064c-.562 0-1.017-2.34-1.017-5.229S3.908 3.3 4.471 3.3c.3 0 .57.676.758 1.748C5.527 3.2 6.014 2 6.564 2c.653 0 1.219 1.7 1.487 4.168c.262-1.8.658-2.941 1.1-2.941c.624 0 1.154 2.252 1.351 5.393C10.874 7.01 11.41 6 12 6s1.128 1.011 1.5 2.62c.2-3.141.727-5.393 1.351-5.393c.444 0 .84 1.145 1.1 2.941C16.219 3.7 16.785 2 17.439 2c.547 0 1.035 1.2 1.335 3.051m-16.2 5.3C2.258 10.355 2 9.31 2 8.017s.258-2.337.576-2.337s.578 1.044.578 2.337s-.254 2.338-.578 2.338Zm18.848 0c-.32 0-.577-1.045-.577-2.338s.257-2.337.577-2.337S22 6.724 22 8.017s-.258 2.338-.576 2.338Z\"\u002F>",{"left":4,"top":4,"width":334,"height":334,"rotate":4,"vFlip":6,"hFlip":6,"body":335},32,"\u003Cdefs>\u003ClinearGradient id=\"SVGvSi4fdXe\" x1=\"30.06\" x2=\"225.94\" y1=\"30.06\" y2=\"225.94\" gradientTransform=\"matrix(.11 0 0 .11 2 2)\" gradientUnits=\"userSpaceOnUse\">\u003Cstop offset=\"0\" stop-color=\"#e3702d\"\u002F>\u003Cstop offset=\".11\" stop-color=\"#ea7d31\"\u002F>\u003Cstop offset=\".35\" stop-color=\"#f69537\"\u002F>\u003Cstop offset=\".5\" stop-color=\"#fb9e3a\"\u002F>\u003Cstop offset=\".7\" stop-color=\"#ea7c31\"\u002F>\u003Cstop offset=\".89\" stop-color=\"#de642b\"\u002F>\u003Cstop offset=\"1\" stop-color=\"#d95b29\"\u002F>\u003C\u002FlinearGradient>\u003C\u002Fdefs>\u003Crect width=\"28\" height=\"28\" x=\"2\" y=\"2\" fill=\"#cc5d15\" rx=\"6.01\" ry=\"6.01\"\u002F>\u003Crect width=\"26.91\" height=\"26.91\" x=\"2.54\" y=\"2.54\" fill=\"#f49c52\" rx=\"5.47\" ry=\"5.47\"\u002F>\u003Crect width=\"25.82\" height=\"25.82\" x=\"3.1\" y=\"3.1\" fill=\"url(#SVGvSi4fdXe)\" rx=\"5.14\" ry=\"5.14\"\u002F>\u003Cpath fill=\"#fff\" d=\"M6.82 6.16v3.83a15.31 15.31 0 0 1 15.3 15.3h3.83A19.14 19.14 0 0 0 6.81 6.17zm0 6.45v3.72a8.97 8.97 0 0 1 8.96 8.97h3.72A12.69 12.69 0 0 0 6.81 12.6zm2.62 7.44a2.63 2.63 0 0 0-2.63 2.62a2.63 2.63 0 0 0 2.63 2.63a2.63 2.63 0 0 0 2.63-2.63a2.63 2.63 0 0 0-2.63-2.63z\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":337},"\u003Cpath fill=\"currentColor\" d=\"M16.5 3C19.538 3 22 5.5 22 9c0 7-7.5 11-10 12.5C9.5 20 2 16 2 9c0-3.5 2.5-6 5.5-6C9.36 3 11 4 12 5c1-1 2.64-2 4.5-2\"\u002F>",["Island",339],{"key":340,"result":341},"Brand_dlIOZD2O03VXPoFYukMOJnSnZRMTmJ0YwMKY5fNK8",{"head":342},{},["Island",344],{"key":345,"result":346},"Duration_5fnUb5dO3GPoCY54EbonujRUgEtKMSQF5XTULMzMKHI",{"head":347},{},1785405175710]