[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fQa3xUpnRDPNiFFu2QS4K-DAjYmsapeR9fNhPNBdpkOc":-1,"weekly-digest-2026-08-31":3,"newsletter-stats":59},{"bouncedCount":4,"broadcastStatus":5,"clickedCount":6,"complainedCount":4,"createdAt":7,"deliveredCount":8,"failedCount":9,"html":10,"id":11,"openedCount":12,"payload":13,"sentAt":7,"sentCount":53,"slug":54,"subject":55,"subscriberCount":53,"updatedAt":56,"weekEnd":57,"weekLabel":25,"weekStart":58},null,"sent",45,"2026-08-31T14:00:04.323Z",440,0,"\u003C!DOCTYPE html PUBLIC \"-\u002F\u002FW3C\u002F\u002FDTD XHTML 1.0 Transitional\u002F\u002FEN\" \"http:\u002F\u002Fwww.w3.org\u002FTR\u002Fxhtml1\u002FDTD\u002Fxhtml1-transitional.dtd\">\n\u003Chtml lang=\"en\" dir=\"ltr\">\n\n  \u003Chead>\n    \u003Cmeta http-equiv=\"Content-Type\" content=\"text\u002Fhtml; charset=UTF-8\">\n    \u003Cmeta name=\"x-apple-disable-message-reformatting\">\n    \u003Cstyle>\n      @font-face {\n        font-family: 'Onest';\n        font-style: normal;\n        font-weight: 400;\n        mso-font-alt: 'Arial';\n\n      }\n\n      * {\n        font-family: 'Onest', Arial;\n      }\n    \u003C\u002Fstyle>\n  \u003C\u002Fhead>\n  \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n    \u003Ctbody>\n      \u003Ctr>\n        \u003Ctd>\n          \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n            \u003Ctbody style=\"width:100%;\">\n              \u003Ctr style=\"width:100%;\">\n                \u003Ctable align=\"center\" width=\"100%\" role=\"presentation\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"max-width:37.5em;border-color:rgb(209,213,219);border-radius:0.5rem;border-style:solid;border-width:1px;font-size:16px;line-height:1.5;padding:1.5rem;\">\n                  \u003Ctbody>\n                    \u003Ctr style=\"width: 100%\">\n                      \u003Ctd>\n                        \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"margin-top:1rem;\">\n                          \u003Ctbody>\n                            \u003Ctr>\n                              \u003Ctd>\u003Cimg style=\"display:block;outline:none;border:none;text-decoration:none;margin-bottom:0px;margin-top:0px;\" src=\"https:\u002F\u002Fmokkapps.twic.pics\u002Fvuedigest.com\u002Flogo.png\" width=\"100\">\u003C\u002Ftd>\n                            \u003C\u002Ftr>\n                          \u003C\u002Ftbody>\n                        \u003C\u002Ftable>\n                        \u003Ch1 style=\"font-size:2rem;font-weight:700;line-height:2.5rem;margin:0 0 4px 0;\">\n                          Weekly Digest\n                        \u003C\u002Fh1>\n                        \u003Cp style=\"font-size:1rem;line-height:24px;margin:0 0 16px 0;color:#6b7280;\">Aug 24, 2026 – Aug 31, 2026\u003C\u002Fp>\n                        \u003Chr style=\"width: 100%; border: none; border-top: 1px solid #eaeaea;\">\n                        \u003Ch1 style=\"font-size:1.375rem;font-weight:600;line-height:1.75rem;margin:24px 0 12px 0;\">\n                          Editor&#39;s Picks\n                        \u003C\u002Fh1>\n                        \u003Cdiv style=\"border-bottom:1px solid #e5e7eb;padding:12px 0;\">\n                          \u003Cp style=\"font-size:0.9375rem;line-height:24px;margin:0;color:#6b7280;\">\n                            #1 · Editor&#39;s pick\n                          \u003C\u002Fp> \u003Ca style=\"color:#2FBC79;text-decoration:none;font-size:1.25rem;font-weight:600;line-height:1.75rem;text-decoration:none;\" href=\"https:\u002F\u002Fvuedigest.com\u002Fdigest\u002Fgo\u002F01a04760-5be0-74be-9f6f-f5aeab8a6c11\" target=\"_blank\">OpenVue\u003C\u002Fa>\n                          \u003Cp style=\"font-size:1rem;line-height:1.5rem;margin:4px 0 0 0;color:#374151;\">A powerful UI toolkit for Vue and Nuxt. Built as a fork of PrimeVue 4.5.5, it continues to evolve under the MIT license.\u003C\u002Fp>\n                        \u003C\u002Fdiv>\n                        \u003Ch1 style=\"font-size:1.375rem;font-weight:600;line-height:1.75rem;margin:24px 0 12px 0;\">\n                          Top Articles\n                        \u003C\u002Fh1>\n                        \u003Cdiv style=\"border-bottom:1px solid #e5e7eb;padding:12px 0;\">\n                          \u003Cp style=\"font-size:0.9375rem;line-height:24px;margin:0;color:#6b7280;\">\n                            #1 · Certificates.dev\u003C\u002Fp> \u003Ca style=\"color:#2FBC79;text-decoration:none;font-size:1.25rem;font-weight:600;line-height:1.75rem;text-decoration:none;\" href=\"https:\u002F\u002Fvuedigest.com\u002Fnews\u002Ftighter-typescript-in-script-setup\" target=\"_blank\">Tighter TypeScript in &lt;script setup&gt;\u003C\u002Fa>\n                          \u003Cp style=\"font-size:1rem;line-height:1.5rem;margin:4px 0 0 0;color:#374151;\">The article discusses improvements in TypeScript support within Vue&#39;s &lt;script setup&gt; syntax, focusing on the usage of defineProps, defineEmits, defineModel, and defineSlots. It emphasizes how these enhancements help in creating clearer component contracts for developers.\u003C\u002Fp>\n                        \u003C\u002Fdiv>\n                        \u003Cdiv style=\"border-bottom:1px solid #e5e7eb;padding:12px 0;\">\n                          \u003Cp style=\"font-size:0.9375rem;line-height:24px;margin:0;color:#6b7280;\">\n                            #2 · Program With Erik\u003C\u002Fp> \u003Ca style=\"color:#2FBC79;text-decoration:none;font-size:1.25rem;font-weight:600;line-height:1.75rem;text-decoration:none;\" href=\"https:\u002F\u002Fvuedigest.com\u002Fnews\u002Fi-built-a-better-lo-fi-radio-station\" target=\"_blank\">I Built a Better Lo-Fi Radio Station\u003C\u002Fa>\n                          \u003Cp style=\"font-size:1rem;line-height:1.5rem;margin:4px 0 0 0;color:#374151;\">This article discusses the creation of an AI-powered Lo-Fi radio station using Nuxt 4, AWS Bedrock, and OpenRouter, inspired by the popular Lofi Girl streams. It highlights the integration of these technologies to deliver a continuous music experience.\u003C\u002Fp>\n                        \u003C\u002Fdiv>\n                        \u003Ch1 style=\"font-size:1.375rem;font-weight:600;line-height:1.75rem;margin:24px 0 12px 0;\">\n                          GitHub Releases\n                        \u003C\u002Fh1>\n                        \u003Cp style=\"font-size:1rem;line-height:1.625rem;margin:0 0 8px 0;color:#374151;\">This week saw several significant releases in the Vue and Nuxt ecosystem. Notably, @pinia\u002Fcolada-nuxt@1.1.0 added support for Pinia 4 and compatibility with Nuxt 5, while Docus v5.13.0 introduced new features including support for the `vary` header in markdown negotiation. Additionally, Nuxt Test Utils v4.2.0 enhanced testing capabilities with a new render helper, and Vue Router v5.3.0 addressed critical race condition errors. Other updates included bug fixes in Nuxt Content v3.16.0 and Vue i18n v11.4.10, improving overall stability and functionality.\u003C\u002Fp> \u003Ca style=\"color:#2FBC79;text-decoration:none;font-size:1rem;margin-top:12px;text-decoration:none;\" href=\"https:\u002F\u002Fvuedigest.com\u002Fgithub-releases\" target=\"_blank\">\n                          View all releases →\n                        \u003C\u002Fa>\n                        \u003Ch1 style=\"font-size:1.375rem;font-weight:600;line-height:1.75rem;margin:24px 0 12px 0;\">\n                          Upcoming Conferences\n                        \u003C\u002Fh1>\n                        \u003Cdiv style=\"border-bottom:1px solid #e5e7eb;padding:12px 0;\">\u003Ca style=\"color:#2FBC79;text-decoration:none;font-size:1.125rem;font-weight:600;text-decoration:none;\" href=\"https:\u002F\u002Fpragvue.com\u002F\" target=\"_blank\">PragVue\u003C\u002Fa>\n                          \u003Cp style=\"font-size:1rem;line-height:24px;margin:4px 0 0 0;color:#6b7280;\">Sep 29, 2026\u003Cspan> · Prag, Czech Republic\u003C\u002Fspan>\u003C\u002Fp>\n                        \u003C\u002Fdiv>\n                        \u003Cdiv style=\"border-bottom:1px solid #e5e7eb;padding:12px 0;\">\u003Ca style=\"color:#2FBC79;text-decoration:none;font-size:1.125rem;font-weight:600;text-decoration:none;\" href=\"https:\u002F\u002Fvuefes.jp\u002F2026\u002F\" target=\"_blank\">Vue Fes Japan\u003C\u002Fa>\n                          \u003Cp style=\"font-size:1rem;line-height:24px;margin:4px 0 0 0;color:#6b7280;\">Oct 24, 2026\u003Cspan> · Tokyo, Japan\u003C\u002Fspan>\u003C\u002Fp>\n                        \u003C\u002Fdiv>\n                        \u003Cdiv style=\"border-bottom:1px solid #e5e7eb;padding:12px 0;\">\u003Ca style=\"color:#2FBC79;text-decoration:none;font-size:1.125rem;font-weight:600;text-decoration:none;\" href=\"https:\u002F\u002Fvuejs.amsterdam\u002F\" target=\"_blank\">VueJS Amsterdam\u003C\u002Fa>\n                          \u003Cp style=\"font-size:1rem;line-height:24px;margin:4px 0 0 0;color:#6b7280;\">Mar 11, 2027 – Mar 12, 2027\u003Cspan> · Amsterdam, Netherlands\u003C\u002Fspan>\u003C\u002Fp>\n                        \u003C\u002Fdiv> \u003Ca style=\"color:#2FBC79;text-decoration:none;font-size:1rem;margin-top:12px;text-decoration:none;\" href=\"https:\u002F\u002Fvuedigest.com\u002Fconferences\" target=\"_blank\">\n                          View all conferences →\n                        \u003C\u002Fa>\n                        \u003Chr style=\"width: 100%; border: none; border-top: 1px solid #eaeaea;\">\n                        \u003Cp style=\"font-size:0.875rem;line-height:1.25rem;margin:0 0 4px 0;color:#6b7280;text-align:center;\">\n                          You received this email because you subscribed to the VueDigest newsletter.\n                        \u003C\u002Fp>\n                        \u003Cp style=\"font-size:0.875rem;line-height:1.25rem;margin:0 0 4px 0;color:#6b7280;text-align:center;\">\u003Ca style=\"color:#6b7280;text-decoration:none;font-size:0.875rem;text-decoration:underline;\" href=\"{{unsubscribeUrl}}\" target=\"_blank\">\n                            Unsubscribe\n                          \u003C\u002Fa>\u003C\u002Fp>\n                      \u003C\u002Ftd>\n                    \u003C\u002Ftr>\n                  \u003C\u002Ftbody>\n                \u003C\u002Ftable>\n              \u003C\u002Ftr>\n            \u003C\u002Ftbody>\n          \u003C\u002Ftable>\n        \u003C\u002Ftd>\n      \u003C\u002Ftr>\n    \u003C\u002Ftbody>\n  \u003C\u002Ftable>\n  \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n    \u003Ctbody>\n      \u003Ctr>\n        \u003Ctd>\n          \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n            \u003Ctbody style=\"width:100%;\">\n              \u003Ctr style=\"width:100%;\">\n                \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0;text-align:center;margin-bottom:0px;\">VueDigest\u003C\u002Fp>\n                \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0;text-align:center;margin-top:0px;\">\u003Ca style=\"color:#2FBC79;text-decoration:none;font-size:14px;text-align:center;\" href=\"https:\u002F\u002Fvuedigest.com\" target=\"_blank\" class=\"text-primary\">vuedigest.com\u003C\u002Fa>\u003C\u002Fp>\n              \u003C\u002Ftr>\n            \u003C\u002Ftbody>\n          \u003C\u002Ftable>\n        \u003C\u002Ftd>\n      \u003C\u002Ftr>\n    \u003C\u002Ftbody>\n  \u003C\u002Ftable>\n\n\u003C\u002Fhtml>","01a0581e-bbe1-70a5-a9f3-dd3162ff3ec6",172,{"articles":14,"weekLabel":25,"conferences":26,"editorPicks":45,"releasesUrl":50,"conferencesUrl":51,"releasesSummary":52},[15,20],{"url":16,"title":17,"summary":18,"sourceName":19},"https:\u002F\u002Fvuedigest.com\u002Fnews\u002Ftighter-typescript-in-script-setup","Tighter TypeScript in \u003Cscript setup>","The article discusses improvements in TypeScript support within Vue's \u003Cscript setup> syntax, focusing on the usage of defineProps, defineEmits, defineModel, and defineSlots. It emphasizes how these enhancements help in creating clearer component contracts for developers.","Certificates.dev",{"url":21,"title":22,"summary":23,"sourceName":24},"https:\u002F\u002Fvuedigest.com\u002Fnews\u002Fi-built-a-better-lo-fi-radio-station","I Built a Better Lo-Fi Radio Station","This article discusses the creation of an AI-powered Lo-Fi radio station using Nuxt 4, AWS Bedrock, and OpenRouter, inspired by the popular Lofi Girl streams. It highlights the integration of these technologies to deliver a continuous music experience.","Program With Erik","Aug 24, 2026 – Aug 31, 2026",[27,33,39],{"url":28,"name":29,"location":30,"dateRange":31,"startDate":32},"https:\u002F\u002Fpragvue.com\u002F","PragVue","Prag, Czech Republic","Sep 29, 2026","2026-09-29T00:00:00.000Z",{"url":34,"name":35,"location":36,"dateRange":37,"startDate":38},"https:\u002F\u002Fvuefes.jp\u002F2026\u002F","Vue Fes Japan","Tokyo, Japan","Oct 24, 2026","2026-10-24T00:00:00.000Z",{"url":40,"name":41,"location":42,"dateRange":43,"startDate":44},"https:\u002F\u002Fvuejs.amsterdam\u002F","VueJS Amsterdam","Amsterdam, Netherlands","Mar 11, 2027 – Mar 12, 2027","2027-03-11T00:00:00.000Z",[46],{"url":47,"title":48,"summary":49},"https:\u002F\u002Fvuedigest.com\u002Fdigest\u002Fgo\u002F01a04760-5be0-74be-9f6f-f5aeab8a6c11","OpenVue","A powerful UI toolkit for Vue and Nuxt. Built as a fork of PrimeVue 4.5.5, it continues to evolve under the MIT license.","https:\u002F\u002Fvuedigest.com\u002Fgithub-releases","https:\u002F\u002Fvuedigest.com\u002Fconferences","This week saw several significant releases in the Vue and Nuxt ecosystem. Notably, @pinia\u002Fcolada-nuxt@1.1.0 added support for Pinia 4 and compatibility with Nuxt 5, while Docus v5.13.0 introduced new features including support for the `vary` header in markdown negotiation. Additionally, Nuxt Test Utils v4.2.0 enhanced testing capabilities with a new render helper, and Vue Router v5.3.0 addressed critical race condition errors. Other updates included bug fixes in Nuxt Content v3.16.0 and Vue i18n v11.4.10, improving overall stability and functionality.",468,"2026-08-31","[VueDigest] Weekly Digest — Aug 24, 2026 – Aug 31, 2026","2026-08-31T16:16:53.518Z","2026-08-31T14:00:00.005Z","2026-08-24T14:00:00.005Z",{"confirmedCount":60},466]