[{"data":1,"prerenderedAt":20},["ShallowReactive",2],{"$fBjzAl32AycA7Vk7xIHyIr9UGKAsRE0dp-O6aLSm-bAw":3},{"analytics":4,"html":10,"issueId":11,"issueNumber":12,"ogImage":13,"publishedAt":16,"title":17,"url":18,"version":19},{"clickRate":5,"clicks":6,"openRate":7,"sent":8,"views":9},11,489,48,4335,2100,"\u003C!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n\u003Chtml lang=\"en\" dir=\"ltr\">\n\n  \u003Chead>\n    \u003Cmeta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n    \u003Cmeta name=\"x-apple-disable-message-reformatting\" />\n  \u003C/head>\n  \u003Ctitle>Nuxt Data Fetching Improvements\u003C/title>\n  \u003Cdiv style=\"display:none;overflow:hidden;line-height:1px;opacity:0;max-height:0;max-width:0;\">Ready for your weekly Vue & Nuxt dose?\u003Cdiv> ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿ ‌​‍‎‏﻿\u003C/div>\n  \u003C/div>\n\n  \u003Cbody class=\"mx-auto my-auto w-full bg-white font-sans\" style=\"margin-left: auto;\n    margin-right: auto; margin-top: auto;\n    margin-bottom: auto; width: 100%; background-color: rgb(255,255,255); font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, &quot;Segoe UI&quot;, Roboto, &quot;Helvetica Neue&quot;, Arial, &quot;Noto Sans&quot;, sans-serif, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, &quot;Segoe UI Symbol&quot;, &quot;Noto Color Emoji&quot;;\">\n    \u003Ctable align=\"center\" width=\"100%\" role=\"presentation\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"max-width:37.5em; margin-left: auto;\n    margin-right: auto; margin-top: 40px;\n    margin-bottom: 40px; width: 100%; max-width: 650px; padding: 20px;\" class=\"md:p-7\">\n      \u003Ctbody>\n        \u003Ctr style=\"width: 100%\">\n          \u003Ctd>\n            \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" class=\"mt-4\" style=\"margin-top: 1rem;\">\n              \u003Ctbody>\n                \u003Ctr>\n                  \u003Ctd>\u003Cimg style=\"display:block;outline:none;border:none;text-decoration:none; margin-left: auto;\n    margin-right: auto; margin-top: 0px;\n    margin-bottom: 0px;\" src=\"https://mokkapps.twic.pics/weekly-vue.news/logo-with-text.png?twic=v1/cover=200\" width=\"114\" class=\"mx-auto my-0\" />\u003C/td>\n                \u003C/tr>\n              \u003C/tbody>\n            \u003C/table>\n            \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" class=\"mt-4 text-center\" style=\"margin-top: 1rem; text-align: center;\">\n              \u003Ctbody>\n                \u003Ctr>\n                  \u003Ctd>\n                    \u003Ch2 style=\"margin-bottom: 0.75rem; margin-top: 1rem;\" class=\"mb-3 mt-4\"> Weekly Vue News #197\u003C/h2>\n                    \u003Ch1 style=\"margin-top: 0.5rem;\" class=\"mt-2\">Nuxt Data Fetching Improvements\u003C/h1>\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0px;\n    margin-bottom: 0px; text-align: center;\" class=\"my-0 text-center\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 12px; color: rgb(66,184,131); text-decoration-line: underline; text-decoration-thickness: 1px;\" href=\"https://weekly-vue.news/issues/v2/161\" target=\"_blank\" class=\"hover:text-[#35495E]\"> View online \u003C/a>\u003C/p>\n                  \u003C/td>\n                \u003C/tr>\n              \u003C/tbody>\n            \u003C/table>\n            \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" class=\"mt-4\" style=\"margin-top: 1rem;\">\n              \u003Ctbody>\n                \u003Ctr>\n                  \u003Ctd>\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px;\" class=\"mt-2 text-[16px]\">Hi 👋\u003C/p>\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px;\" class=\"mt-2 text-[16px]\"> I’m now giving early testers access to my \u003Ca style=\"color:#067df7;text-decoration:none; color: rgb(66,184,131); text-decoration-line: underline; text-decoration-thickness: 1px;\" href=\"https://nuxtstarterkit.com@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\"> Nuxt Starter Kit \u003C/a> ! With the code TN8JDLYO, you’ll get 30% off — that’s a production-ready Nuxt starter kit for around $30. \u003C/p>\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px;\" class=\"mt-2 text-[16px]\"> Just a heads-up: you’ll need a \u003Ca style=\"color:#067df7;text-decoration:none; color: rgb(66,184,131); text-decoration-line: underline; text-decoration-thickness: 1px;\" href=\"https://ui.nuxt.com/pro?aff=z1NAy@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\"> Nuxt UI Pro \u003C/a> license, since the kit is highly opinionated and tightly integrated with NuxtHub and Nuxt UI Pro. Excited to see some of you supporting my work! \u003C/p>\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px;\" class=\"mt-2 text-[16px]\">Enjoy this issue and have a lovely week ☀️\u003C/p>\n                    \u003Ch2 style=\"margin-bottom: 0px; margin-top: 2.5rem; font-size: 24px;\" class=\"mb-0 mt-10 text-[24px]\">\u003Csvg style=\"height:25px;width:25px;\" viewbox=\"0 0 128 128\">\n                        \u003Cpath d=\"M0 8.934l49.854.158 14.167 24.47 14.432-24.47L128 8.935l-63.834 110.14zm126.98.637l-24.36.02-38.476 66.053L25.691 9.592.942 9.572l63.211 107.89zm-25.149-.008l-22.745.168-15.053 24.647L49.216 9.73l-22.794-.168 37.731 64.476zm-75.834-.17l23.002.009m-23.002-.01l23.002.01\" fill=\"none\" />\n                        \u003Cpath d=\"M25.997 9.393l23.002.009L64.035 34.36 79.018 9.404 102 9.398 64.15 75.053z\" fill=\"#35495e\" />\n                        \u003Cpath d=\"M.91 9.569l25.067-.172 38.15 65.659L101.98 9.401l25.11.026-62.966 108.06z\" fill=\"#41b883\" />\n                      \u003C/svg> Vue \u003C/h2>\n                    \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-bottom: 1rem; border-top-width: 4px;\" class=\"mb-4 border-t-4\" />\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; margin-bottom: 0.25rem; margin-top: 1.5rem;\" class=\"mb-1 mt-6\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 18px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://dev.to/jacobandrewsky/how-to-use-pinia-for-state-management-in-vue-535@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 How to Use Pinia for State Management in Vue \u003C/a>\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 In this article, you’ll learn how to use Pinia to manage application state in a Vue 3 project — from installation to real-world usage.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 1.5rem;\" class=\"mb-1 mt-6\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 18px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://hackernoon.com/vuejs-propagating-props-like-a-pro@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 Vue.js: Propagating Props Like a Pro\u003C/a>\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 Probably the cleanest way to forward base props from a wrapper component in Vue.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 1.5rem;\" class=\"mb-1 mt-6\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 18px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://medium.com/vue-mastery/top-ai-tools-for-developers-b598235f1f18@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 Top AI Tools for Developers\u003C/a>\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 In this article, you’ll explore how you can gain a competitive edge by incorporating AI development tools into your workflow.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 1.5rem;\" class=\"mb-1 mt-6\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 18px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://dev.to/jacobandrewsky/handling-internalisation-i18n-in-vue-2nof@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 Handling internationalisation (i18n) in Vue \u003C/a>\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 This article introduces you to the topic of i18n and show you how you can achieve that in both Vue and Nuxt frameworks.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 1.5rem;\" class=\"mb-1 mt-6\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 18px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://supersaas.dev/blog/i-cannot-live-without-these-vueuse-utils/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 I cannot live without these VueUse utils\u003C/a>\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 Fayaz shares his most used VueUse utils, some of them are really underrated.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\n                    \u003Ch2 style=\"margin-bottom: 0px; margin-top: 2.5rem; font-size: 24px;\" class=\"mb-0 mt-10 text-[24px]\">\u003Csvg style=\"height:25px;width:25px;\" viewbox=\"0 0 900 900\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n                        \u003Cpath d=\"M504.908 750H839.476C850.103 750.001 860.542 747.229 869.745 741.963C878.948 736.696 886.589 729.121 891.9 719.999C897.211 710.876 900.005 700.529 900 689.997C899.995 679.465 897.193 669.12 891.873 660.002L667.187 274.289C661.876 265.169 654.237 257.595 645.036 252.329C635.835 247.064 625.398 244.291 614.773 244.291C604.149 244.291 593.711 247.064 584.511 252.329C575.31 257.595 567.67 265.169 562.36 274.289L504.908 372.979L392.581 179.993C387.266 170.874 379.623 163.301 370.42 158.036C361.216 152.772 350.777 150 340.151 150C329.525 150 319.086 152.772 309.883 158.036C300.679 163.301 293.036 170.874 287.721 179.993L8.12649 660.002C2.80743 669.12 0.00462935 679.465 5.72978e-06 689.997C-0.00461789 700.529 2.78909 710.876 8.10015 719.999C13.4112 729.121 21.0523 736.696 30.255 741.963C39.4576 747.229 49.8973 750.001 60.524 750H270.538C353.748 750 415.112 713.775 457.336 643.101L559.849 467.145L614.757 372.979L779.547 655.834H559.849L504.908 750ZM267.114 655.737L120.551 655.704L340.249 278.586L449.87 467.145L376.474 593.175C348.433 639.03 316.577 655.737 267.114 655.737Z\" fill=\"#00DC82\" />\n                      \u003C/svg> Nuxt \u003C/h2>\n                    \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-bottom: 1rem; border-top-width: 4px;\" class=\"mb-4 border-t-4\" />\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; margin-bottom: 0.25rem; margin-top: 1.5rem;\" class=\"mb-1 mt-6\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 18px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://nuxt.com/showcase@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 Nuxt Showcase\u003C/a>\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 See real world web applications built with Nuxt around the world.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 1.5rem;\" class=\"mb-1 mt-6\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 18px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://hub.nuxt.com/changelog/hub-autorag@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 Introducing hubAutoRAG()\u003C/a>\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 Create fully-managed RAG pipelines to power your Nuxt AI applications with accurate and up-to-date information.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\n                    \u003Ch2 style=\"margin-bottom: 0px; margin-top: 2.5rem; font-size: 24px;\" class=\"mb-0 mt-10 text-[24px]\">💡 Nuxt Tip: Data Fetching Improvements\u003C/h2>\n                    \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-bottom: 1rem; border-top-width: 4px;\" class=\"mb-4 border-t-4\" />\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px;\" class=\"mt-2 text-[16px]\">\u003Ca style=\"color:#067df7;text-decoration:none; color: rgb(66,184,131); text-decoration-line: underline; text-decoration-thickness: 1px;\" href=\"https://nuxt.com/blog/v3-17@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\"> Nuxt 3.17 \u003C/a> introduced significant improvements to the data composables \u003Ccode class=\"cino\" style=\"background-color: rgb(240,240,240); color: rgb(53,73,94); padding-left: 0.25rem;\n    padding-right: 0.25rem; border-radius: 0.25rem;\">useAsyncData\u003C/code>\u003Cspan class=\"cio\" style=\"display:none; background-color: rgb(240,240,240); color: rgb(53,73,94); padding-left: 0.25rem;\n    padding-right: 0.25rem; border-radius: 0.25rem;\">useAsyncData\u003C/span> and \u003Ccode class=\"cino\" style=\"background-color: rgb(240,240,240); color: rgb(53,73,94); padding-left: 0.25rem;\n    padding-right: 0.25rem; border-radius: 0.25rem;\">useFetch\u003C/code>\u003Cspan class=\"cio\" style=\"display:none; background-color: rgb(240,240,240); color: rgb(53,73,94); padding-left: 0.25rem;\n    padding-right: 0.25rem; border-radius: 0.25rem;\">useFetch\u003C/span>. \u003C/p>\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px;\" class=\"mt-2 text-[16px]\"> All calls to these composables with the same key now share the underlying refs, ensuring consistency across your application: \u003C/p>\u003Cpre class=\"shiki poimandres\" style=\"background-color:#1b1e28;display:block;white-space:pre;font-family:monospace;border-radius:5px;max-width:80vw;overflow:auto;padding:10px;\" tabindex=\"0\">\u003Cspan>\u003Cpre class=\"shiki poimandres\" style=\"background-color:#1b1e28;color:#a6accd\" tabindex=\"0\">\u003Ccode style=\"display: table; width: 100%;\">\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">1\u003C/span>\u003Cspan style=\"color:#767C9DB0;font-style:italic\">// 1️⃣ ComponentA.vue\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">2\u003C/span>\u003Cspan style=\"color:#91B4D5\">const\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> { data: \u003C/span>\u003Cspan style=\"color:#E4F0FB\">users\u003C/span>\u003Cspan style=\"color:#A6ACCD\">, \u003C/span>\u003Cspan style=\"color:#E4F0FB\">pending\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> } \u003C/span>\u003Cspan style=\"color:#91B4D5\">=\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\"> useAsyncData\u003C/span>\u003Cspan style=\"color:#A6ACCD\">(\u003C/span>\u003Cspan style=\"color:#A6ACCD\">'\u003C/span>\u003Cspan style=\"color:#5DE4C7\">users\u003C/span>\u003Cspan style=\"color:#A6ACCD\">'\u003C/span>\u003Cspan style=\"color:#A6ACCD\">, \u003C/span>\u003Cspan style=\"color:#E4F0FB\">fetchUsers\u003C/span>\u003Cspan style=\"color:#A6ACCD\">)\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">3\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">4\u003C/span>\u003Cspan style=\"color:#767C9DB0;font-style:italic\">// 2️⃣ ComponentB.vue\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">5\u003C/span>\u003Cspan style=\"color:#767C9DB0;font-style:italic\">// This will reference the same data state as ComponentA\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">6\u003C/span>\u003Cspan style=\"color:#91B4D5\">const\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> { data: \u003C/span>\u003Cspan style=\"color:#E4F0FB\">users\u003C/span>\u003Cspan style=\"color:#A6ACCD\">, \u003C/span>\u003Cspan style=\"color:#E4F0FB\">status\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> } \u003C/span>\u003Cspan style=\"color:#91B4D5\">=\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\"> useAsyncData\u003C/span>\u003Cspan style=\"color:#A6ACCD\">(\u003C/span>\u003Cspan style=\"color:#A6ACCD\">'\u003C/span>\u003Cspan style=\"color:#5DE4C7\">users\u003C/span>\u003Cspan style=\"color:#A6ACCD\">'\u003C/span>\u003Cspan style=\"color:#A6ACCD\">, \u003C/span>\u003Cspan style=\"color:#E4F0FB\">fetchUsers\u003C/span>\u003Cspan style=\"color:#A6ACCD\">)\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">7\u003C/span>\u003Cspan style=\"color:#767C9DB0;font-style:italic\">// When either component refreshes the data, both will update consistently\u003C/span>\u003C/span>\u003C/code>\u003C/pre>\u003C/span>\u003C/pre>\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px;\" class=\"mt-2 text-[16px]\"> You can now use computed refs, plain refs, or getter functions as keys: \u003C/p>\u003Cpre class=\"shiki poimandres\" style=\"background-color:#1b1e28;display:block;white-space:pre;font-family:monospace;border-radius:5px;max-width:80vw;overflow:auto;padding:10px;\" tabindex=\"0\">\u003Cspan>\u003Cpre class=\"shiki poimandres\" style=\"background-color:#1b1e28;color:#a6accd\" tabindex=\"0\">\u003Ccode style=\"display: table; width: 100%;\">\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">1\u003C/span>\u003Cspan style=\"color:#91B4D5\">const\u003C/span>\u003Cspan style=\"color:#E4F0FB\"> userId\u003C/span>\u003Cspan style=\"color:#91B4D5\"> =\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\"> ref\u003C/span>\u003Cspan style=\"color:#A6ACCD\">(\u003C/span>\u003Cspan style=\"color:#A6ACCD\">'\u003C/span>\u003Cspan style=\"color:#5DE4C7\">123\u003C/span>\u003Cspan style=\"color:#A6ACCD\">'\u003C/span>\u003Cspan style=\"color:#A6ACCD\">)\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">2\u003C/span>\u003Cspan style=\"color:#91B4D5\">const\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> { data: \u003C/span>\u003Cspan style=\"color:#E4F0FB\">user\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> } \u003C/span>\u003Cspan style=\"color:#91B4D5\">=\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\"> useAsyncData\u003C/span>\u003Cspan style=\"color:#A6ACCD\">(\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">3\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\">  computed\u003C/span>\u003Cspan style=\"color:#A6ACCD\">(() \u003C/span>\u003Cspan style=\"color:#91B4D5\">=>\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> `\u003C/span>\u003Cspan style=\"color:#5DE4C7\">user-\u003C/span>\u003Cspan style=\"color:#A6ACCD\">${\u003C/span>\u003Cspan style=\"color:#E4F0FB\">userId\u003C/span>\u003Cspan style=\"color:#A6ACCD\">.\u003C/span>\u003Cspan style=\"color:#E4F0FB\">value\u003C/span>\u003Cspan style=\"color:#A6ACCD\">}`\u003C/span>\u003Cspan style=\"color:#A6ACCD\">),\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">4\u003C/span>\u003Cspan style=\"color:#A6ACCD\">  () \u003C/span>\u003Cspan style=\"color:#91B4D5\">=>\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\"> fetchUser\u003C/span>\u003Cspan style=\"color:#A6ACCD\">(\u003C/span>\u003Cspan style=\"color:#E4F0FB\">userId\u003C/span>\u003Cspan style=\"color:#A6ACCD\">.\u003C/span>\u003Cspan style=\"color:#E4F0FB\">value\u003C/span>\u003Cspan style=\"color:#A6ACCD\">)\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">5\u003C/span>\u003Cspan style=\"color:#A6ACCD\">)\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">6\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">7\u003C/span>\u003Cspan style=\"color:#767C9DB0;font-style:italic\">// Changing the userId will automatically trigger a new data fetch\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">8\u003C/span>\u003Cspan style=\"color:#767C9DB0;font-style:italic\">// and clean up the old data if no other components are using it\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">9\u003C/span>\u003Cspan style=\"color:#E4F0FB\">userId\u003C/span>\u003Cspan style=\"color:#A6ACCD\">.\u003C/span>\u003Cspan style=\"color:#E4F0FB\">value\u003C/span>\u003Cspan style=\"color:#91B4D5\"> =\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> '\u003C/span>\u003Cspan style=\"color:#5DE4C7\">456\u003C/span>\u003Cspan style=\"color:#A6ACCD\">'\u003C/span>\u003C/span>\u003C/code>\u003C/pre>\u003C/span>\u003C/pre>\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px;\" class=\"mt-2 text-[16px]\"> Multiple components watching the same data source will now trigger only a single data fetch when dependencies change: \u003C/p>\u003Cpre class=\"shiki poimandres\" style=\"background-color:#1b1e28;display:block;white-space:pre;font-family:monospace;border-radius:5px;max-width:80vw;overflow:auto;padding:10px;\" tabindex=\"0\">\u003Cspan>\u003Cpre class=\"shiki poimandres\" style=\"background-color:#1b1e28;color:#a6accd\" tabindex=\"0\">\u003Ccode style=\"display: table; width: 100%;\">\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">1\u003C/span>\u003Cspan style=\"color:#767C9DB0;font-style:italic\">// In multiple components:\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">2\u003C/span>\u003Cspan style=\"color:#91B4D5\">const\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> { \u003C/span>\u003Cspan style=\"color:#E4F0FB\">data\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> } \u003C/span>\u003Cspan style=\"color:#91B4D5\">=\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\"> useAsyncData\u003C/span>\u003Cspan style=\"color:#A6ACCD\">(\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">3\u003C/span>\u003Cspan style=\"color:#A6ACCD\">  '\u003C/span>\u003Cspan style=\"color:#5DE4C7\">users\u003C/span>\u003Cspan style=\"color:#A6ACCD\">'\u003C/span>\u003Cspan style=\"color:#A6ACCD\">, \u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">4\u003C/span>\u003Cspan style=\"color:#A6ACCD\">  () \u003C/span>\u003Cspan style=\"color:#91B4D5\">=>\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\"> $fetch\u003C/span>\u003Cspan style=\"color:#A6ACCD\">(\u003C/span>\u003Cspan style=\"color:#A6ACCD\">`\u003C/span>\u003Cspan style=\"color:#5DE4C7\">/api/users?page=\u003C/span>\u003Cspan style=\"color:#A6ACCD\">${\u003C/span>\u003Cspan style=\"color:#E4F0FB\">route\u003C/span>\u003Cspan style=\"color:#A6ACCD\">.\u003C/span>\u003Cspan style=\"color:#E4F0FB\">query\u003C/span>\u003Cspan style=\"color:#A6ACCD\">.\u003C/span>\u003Cspan style=\"color:#E4F0FB\">page\u003C/span>\u003Cspan style=\"color:#A6ACCD\">}`\u003C/span>\u003Cspan style=\"color:#A6ACCD\">),\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">5\u003C/span>\u003Cspan style=\"color:#A6ACCD\">  {\u003C/span>\u003Cspan style=\"color:#ADD7FF\"> watch\u003C/span>\u003Cspan style=\"color:#A6ACCD\">:\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> [()\u003C/span>\u003Cspan style=\"color:#91B4D5\"> =>\u003C/span>\u003Cspan style=\"color:#E4F0FB\"> route\u003C/span>\u003Cspan style=\"color:#A6ACCD\">.\u003C/span>\u003Cspan style=\"color:#E4F0FB\">query\u003C/span>\u003Cspan style=\"color:#A6ACCD\">.\u003C/span>\u003Cspan style=\"color:#E4F0FB\">page\u003C/span>\u003Cspan style=\"color:#A6ACCD\">]\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> }\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">6\u003C/span>\u003Cspan style=\"color:#A6ACCD\">)\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">7\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">8\u003C/span>\u003Cspan style=\"color:#767C9DB0;font-style:italic\">// When route.query.page changes, only one fetch operation will occur\u003C/span>\u003C/span>\n\u003Cspan class=\"line\" style=\"display: table-row; line-height: 1.5; height: 1.5em;\">\u003Cspan class=\"line-number\" style=\"padding-left: 5px; padding-right: 15px; color: #636E7B; user-select: none;\">9\u003C/span>\u003Cspan style=\"color:#767C9DB0;font-style:italic\">// All components using this key will update simultaneously\u003C/span>\u003C/span>\u003C/code>\u003C/pre>\u003C/span>\u003C/pre>\n                    \u003Ch2 style=\"margin-bottom: 0px; margin-top: 2.5rem; font-size: 24px;\" class=\"mb-0 mt-10 text-[24px]\">📅 Events\u003C/h2>\n                    \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-bottom: 1rem; border-top-width: 4px;\" class=\"mb-4 border-t-4\" />\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; margin-bottom: 0.25rem; margin-top: 0.25rem;\" class=\"mb-1 mt-1\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 16px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://vueconf.us/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">Vueconf.US\u003C/a> (19 - 21 May 2025, Tampa, Florida) \u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 0.25rem;\" class=\"mb-1 mt-1\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 16px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://madvue.es/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">MadVue\u003C/a> (29 May 2025, Madrid, Spain) \u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 0.25rem;\" class=\"mb-1 mt-1\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 16px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://pragvue.com/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">PragVue\u003C/a> (23 September 2025, Czech Republic) \u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 0.25rem;\" class=\"mb-1 mt-1\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 16px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://vuefes.jp/2025/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">VueFes\u003C/a> (25 October 2025, Otemachi, Japan) \u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\n                    \u003Ch2 style=\"margin-bottom: 0px; margin-top: 2.5rem; font-size: 24px;\" class=\"mb-0 mt-10 text-[24px]\">💬 Quote of the week\u003C/h2>\n                    \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-bottom: 1rem; border-top-width: 4px;\" class=\"mb-4 border-t-4\" />\u003Cimg style=\"display:block;outline:none;border:none;text-decoration:none; border-radius: 0.375rem; margin-top: 1rem;\n    margin-bottom: 1rem; width: 100%; max-width: 600px;\" src=\"https://mokkapps.twic.pics/weekly-vue.news/issues/v2/161/quote.png?twic=v1/cover=600\" alt=\"Quote of the week\" class=\"rounded-md my-4 w-full max-w-[600px]\" />\n                    \u003Ch2 style=\"margin-bottom: 0px; margin-top: 2.5rem; font-size: 24px;\" class=\"mb-0 mt-10 text-[24px]\">🧑🏻‍💻 In Other News\u003C/h2>\n                    \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-bottom: 1rem; border-top-width: 4px;\" class=\"mb-4 border-t-4\" />\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; margin-bottom: 0.25rem; margin-top: 1.5rem;\" class=\"mb-1 mt-6\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 18px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://antfu.me/posts/categorize-deps@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 Categorize Your Dependencies\u003C/a>\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 Anthony Fu explains how he uses named catalogs to categorize dependencies.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 1.5rem;\" class=\"mb-1 mt-6\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 18px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://sia.codes/posts/web-perf-tips-2025/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 14 web performance tips for 2025\u003C/a>\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 This post offers 14 tips on improving your website performance.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 1.5rem;\" class=\"mb-1 mt-6\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 18px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://www.youtube.com/watch?v=6IlTjqU_Tc0@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📹 How To Detect Memory Leaks In Your Web App\u003C/a>\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 In this video, you will learn the concept of memory leaks in JavaScript and which debugging techniques you can apply to find them.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\n                    \u003Ch2 style=\"margin-bottom: 0px; margin-top: 2.5rem; font-size: 24px;\" class=\"mb-0 mt-10 text-[24px]\">😂 Fun\u003C/h2>\n                    \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-bottom: 1rem; border-top-width: 4px;\" class=\"mb-4 border-t-4\" />\u003Cimg style=\"display:block;outline:none;border:none;text-decoration:none; border-radius: 0.375rem; margin-top: 1rem;\n    margin-bottom: 1rem; width: 100%; max-width: 600px;\" src=\"https://mokkapps.twic.pics/weekly-vue.news/issues/v2/161/fun.png?twic=v1/cover=600\" alt=\"Programmer Humor\" class=\"rounded-md my-4 w-full max-w-[600px]\" />\n                    \u003Ch2 style=\"margin-bottom: 0px; margin-top: 2.5rem; font-size: 24px;\" class=\"mb-0 mt-10 text-[24px]\">🔗 Want more Vue & Nuxt content?\u003C/h2>\n                    \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-bottom: 1rem; border-top-width: 4px;\" class=\"mb-4 border-t-4\" />\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; margin-bottom: 0.25rem; margin-top: 0.25rem; margin-left: 2rem; display: list-item;\" class=\"mb-1 mt-1 ml-8 list-item\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 16px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://michaelnthiessen.com/newsletter@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">More Exclusive Vue Tips\u003C/a>: Join Michael Thiessen's newsletter and get great Vue tips and insights delivered to your inbox each\n                            week.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 0.25rem; margin-left: 2rem; display: list-item;\" class=\"mb-1 mt-1 ml-8 list-item\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 16px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://www.youtube.com/@TheAlexLichter@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">Weekly Vue & Nuxt Videos\u003C/a>: You must subscribe Alexander Lichter's YouTube channel if you are interested in Vue & Nuxt.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\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; margin-bottom: 0.25rem; margin-top: 0.25rem; margin-left: 2rem; display: list-item;\" class=\"mb-1 mt-1 ml-8 list-item\">\u003Ca style=\"color:#067df7;text-decoration:none; font-size: 16px; color: rgb(66,184,131); text-decoration-thickness: 1px; text-decoration-line: underline; text-underline-offset: 6px; line-height: 1.625;\" href=\"https://dejavue.fm/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">DejaVue Podcast\u003C/a>: A weekly podcast about Vue.js and the ecosystem around it.\u003C/p>\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\n                    \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-top: 1.5rem;\n    margin-bottom: 1.5rem;\" class=\"my-6\" />\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px;\" class=\"mt-2 text-[16px]\"> Comments? Join the discussion about this issue in our \u003Ca style=\"color:#067df7;text-decoration:none; color: rgb(66,184,131); text-decoration-line: underline; text-decoration-thickness: 1px;\" href=\"https://discord.gg/AWxF7cq3Qj@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\"> Discord community \u003C/a>. \u003C/p>\n                    \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px;\" class=\"mt-2 text-[16px]\">Until next week,\u003C/p>\n                    \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n                      \u003Ctbody>\n                        \u003Ctr>\n                          \u003Ctd />\n                          \u003Ctd role=\"presentation\">\u003Cimg style=\"display:block;outline:none;border:none;text-decoration:none; height: 3rem; width: 3rem; border-radius: 9999px;\" src=\"https://mokkapps.twic.pics/weekly-vue.news/2024-profile-pic-2.png?twic=v1/cover=200\" class=\"h-12 w-12 rounded-full\" />\u003C/td>\n                          \u003Ctd role=\"presentation\">\n                            \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0;\">\u003Ca style=\"color:#067df7;text-decoration:none; color: rgb(66,184,131); text-decoration-line: underline; text-decoration-thickness: 1px;\" href=\"https://mokkapps.de@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\"> Michael Hoffmann \u003C/a> (Curator) \u003C/p>\n                          \u003C/td>\n                          \u003Ctd role=\"presentation\" class=\"w-1/3\" style=\"width: 33.333333%;\" />\n                        \u003C/tr>\n                      \u003C/tbody>\n                    \u003C/table>\n                  \u003C/td>\n                \u003C/tr>\n              \u003C/tbody>\n            \u003C/table>\n            \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-top: 0.75rem;\n    margin-bottom: 0.75rem;\" class=\"my-3\" />\n            \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px; font-weight: 700;\" class=\"mt-2 text-[16px] font-bold\"> To support me: \u003C/p>\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; margin-top: 0.5rem; font-size: 16px; margin-left: 2rem; display: list-item;\" class=\"mt-2 text-[16px] ml-8 list-item\"> 😘 Recommend the newsletter to your friends: it really helps! \u003C/p>\n                  \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px; margin-left: 2rem; display: list-item;\" class=\"mt-2 text-[16px] ml-8 list-item\"> 💸 \u003Ca style=\"color:#067df7;text-decoration:none; color: rgb(66,184,131); text-decoration-line: underline; text-decoration-thickness: 1px;\" href=\"https://weekly-vue.news/sponsor\" target=\"_blank\" class=\"hover:text-[#35495E]\"> Sponsor \u003C/a> this newsletter \u003C/p>\n                  \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px; margin-left: 2rem; display: list-item;\" class=\"mt-2 text-[16px] ml-8 list-item\"> 🦋 \u003Ca style=\"color:#067df7;text-decoration:none; color: rgb(66,184,131); text-decoration-line: underline; text-decoration-thickness: 1px;\" href=\"https://bsky.app/profile/weekly-vue.news\" target=\"_blank\" class=\"hover:text-[#35495E]\"> Repost \u003C/a> the latest BlueSky post \u003C/p>\n                  \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.5rem; font-size: 16px; margin-left: 2rem; display: list-item;\" class=\"mt-2 text-[16px] ml-8 list-item\"> 📨 Reply to this email: feedback is welcome \u003C/p>\n                  \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; font-size: 12px; font-style: italic; color: rgb(112,106,123);\" class=\"text-[12px] italic text-[#706a7b]\"> * Some of my links are affiliate links; if you make a purchase, I gain a small percentage at no extra cost. Thank you for supporting my newsletter. \u003C/p>\n                \u003C/tr>\n              \u003C/tbody>\n            \u003C/table>\n            \u003Chr style=\"width:100%;border:none;border-top:1px solid #eaeaea; margin-top: 0.75rem;\n    margin-bottom: 0.75rem;\" class=\"my-3\" />\n          \u003C/td>\n        \u003C/tr>\n      \u003C/tbody>\n    \u003C/table>\n    \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n      \u003Ctbody>\n        \u003Ctr>\n          \u003Ctd>\n            \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-bottom: 0.5rem; text-align: center; color: rgb(112,106,123); font-size: 12px;\" class=\"mb-2 text-center text-[#706a7b] text-[12px]\">\u003Ca style=\"color:#067df7;text-decoration:none; color: rgb(66,184,131); text-decoration-line: underline; text-decoration-thickness: 1px;\" href=\"{{ UnsubscribeURL }}\" target=\"_blank\" class=\"hover:text-[#35495E]\"> Unsubscribe \u003C/a>\u003C/p>\n            \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0px; text-align: center; color: rgb(112,106,123); font-size: 12px;\" class=\"mt-0 text-center text-[#706a7b] text-[12px]\"> Holzapfelkreuther Str. 19, 81375 Munich, Germany \u003C/p> {{ TrackView }}\n          \u003C/td>\n        \u003C/tr>\n      \u003C/tbody>\n    \u003C/table>\n  \u003C/body>\n\n\u003C/html>",161,197,{"absoluteUrl":14,"relativeUrl":15},"https://mokkapps.twic.pics/weekly-vue.news/issues/v2/161/og.png","/issues/v2/161/og.png","2025-05-12T13:00:00Z","Weekly Vue News #197 - Nuxt Data Fetching Improvements","/issues/v2/161",2,1794479147642]