[{"data":1,"prerenderedAt":20},["ShallowReactive",2],{"$fUDnMm8-DrCNlwNS3hYz8t_yORpj9egpqUexocg09zXU":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},9,361,46,3834,1776,"\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/meta>\n    \u003C/meta>\n  \u003C/head>\n  \u003Ctitle>Skip Navigation Links\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 &amp; 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 #169\u003C/h2>\n                    \u003Ch1 style=\"margin-top: 0.5rem;\" class=\"mt-2\">Skip Navigation Links\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/132\" 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&#39;ve been looking into the job market, and it&#39;s tough out there.\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]\">Freelance Vue &amp; Nuxt projects are nearly nonexistent in Germany right now, and it seems like the whole industry is in a bit of a slowdown. Let&#39;s keep our fingers crossed that things pick up soon.\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]\"> Meanwhile, I&#39;ve got some great content for you in this issue to keep the learning going!\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]\">Have a lovely week ☀️\u003C/p>\n                    \u003Ctable align=\"center\" width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" class=\"rounded-md border border-solid border-[#eaeaea] px-3 py-1 mt-8\" style=\"border-radius: 0.375rem; border-width: 1px; border-style: solid; border-color: rgb(234,234,234); padding-left: 0.75rem;\n    padding-right: 0.75rem; padding-top: 0.25rem;\n    padding-bottom: 0.25rem; margin-top: 2rem;\">\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; margin-top: 0.25rem; font-weight: 700;\" class=\"mt-1 font-bold\">Sponsored\u003C/p>\n                                \u003C/tr>\n                              \u003C/tbody>\n                            \u003C/table>\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/132/vue-school.png?twic=v1/cover=600\" alt=\"Nuxt Nation 2024 x Vue.js Forge Ep5\" class=\"rounded-md my-4 w-full max-w-[600px]\">\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://nuxtnation.com/?utm_source=weekvn&amp;utm_medium=email&amp;utm_campaign=outreach@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">Nuxt Nation 2024 x Vue.js Forge Ep5\u003C/a>\u003C/p>\n                                \u003C/tr>\n                              \u003C/tbody>\n                            \u003C/table>\n                            \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px; font-weight: 700;\" class=\"mt-1 mb-0 text-[16px] font-bold\">🗓️ When: November 12-14\u003C/p>\n                            \u003Cp style=\"font-size:14px;line-height:24px;margin:16px 0; margin-top: 0.25rem; margin-bottom: 0px; font-size: 16px; font-weight: 700;\" class=\"mt-1 mb-0 text-[16px] font-bold\">💸 FREE to attend!\u003C/p>\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]\">Join the Nuxt Nation online conference for the latest updates on Nuxt, with live panels, Q&amp;As, and insights from Evan You, Sebastien Chopin, Anthony Fu, and others, covering topics from Nuxt 4 and VoidZero to Nuxt Auth and Nuxt UI. Then, dive into Vue.js Forge for hands-on coding sessions with Vue experts.\u003C/p>\u003C/img>\n                          \u003C/td>\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 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://www.thedevspace.io/community/django-vue@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 How to Create a Modern App with Django and 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 tutorial, you learn how to create a modern single-page application using Django as the backend, Vue as the frontend, and GraphQL as the API manipulation language that connects them together.\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://alexop.dev/posts/create-pwa-vue3-vite-4-steps/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 Create a Native-Like App in 4 Steps: PWA Magic with Vue 3 and Vite\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 blog post explains how to use Vite PWA to generate a PWA with Vue 3. \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]\">👉🏻A full GitHub example is included.\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=VldVWN2i710@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📹 Master Vue in 15 Minutes: From React Developer to Vue 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]\">👉🏻 A video specifically for React developers transitioning to 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-top: 0.25rem; margin-bottom: 0px; font-size: 16px;\" class=\"mt-1 mb-0 text-[16px]\">👉🏻 In just 15 minutes, the author breaks down Vue&#39;s core concepts, compares them to React, and helps you smoothly transfer your skills.\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=zo20Mwwrtp0@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📹 How to Pick a JavaScript Framework\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]\"> 👉🏻 The Syntax team breaks down when frameworks like Vue, Svelte, and Astro are worth it—and when they might just add complexity.\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://tailwind.primevue.org/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">🛠️ Brand-new Tailwind version of PrimeVue\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]\">👉🏻 90+ Vue UI Components with Tailwind\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]\">👉🏻 Intellisense Support\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]\">👉🏻 Fully customizable with code ownership model\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]\">👉🏻 No APIs, no overrides, no JS\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]\">👉🏻 Production Ready\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]\">👉🏻 Open Source\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]\">💡 Vue Tip: Skip Navigation Links\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]\"> You should put a link at the top of each page that takes users straight to the main part of the page. This helps users skip parts of the page that are repeated many times. \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]\"> It&#39;s usually done at the top of \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;\">App.vue\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;\">App.vue\u003C/span>, since it&#39;s the first thing people notice on your pages: \u003C/p>\u003Cpre class=\"shiki poimandres\" style=\"background-color:#1b1e28;display:block;white-space:pre;font-family:monospace;padding:10px;border-radius:5px;max-width:80vw;overflow:auto;\" 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:#E4F0FB\">&#x3C;\u003C/span>\u003Cspan style=\"color:#5DE4C7\">ul\u003C/span>\u003Cspan style=\"color:#5FB3A1;font-style:italic\"> class\u003C/span>\u003Cspan style=\"color:#A6ACCD\">=\u003C/span>\u003Cspan style=\"color:#A6ACCD\">\"\u003C/span>\u003Cspan style=\"color:#5DE4C7\">skip-links\u003C/span>\u003Cspan style=\"color:#A6ACCD\">\"\u003C/span>\u003Cspan style=\"color:#E4F0FB\">>\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:#E4F0FB\">  &#x3C;\u003C/span>\u003Cspan style=\"color:#5DE4C7\">li\u003C/span>\u003Cspan style=\"color:#E4F0FB\">>\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:#E4F0FB\">    &#x3C;\u003C/span>\u003Cspan style=\"color:#5DE4C7\">a\u003C/span>\u003Cspan style=\"color:#5FB3A1;font-style:italic\"> href\u003C/span>\u003Cspan style=\"color:#A6ACCD\">=\u003C/span>\u003Cspan style=\"color:#A6ACCD\">\"\u003C/span>\u003Cspan style=\"color:#5DE4C7\">#main\u003C/span>\u003Cspan style=\"color:#A6ACCD\">\"\u003C/span>\u003Cspan style=\"color:#5FB3A1;font-style:italic\"> ref\u003C/span>\u003Cspan style=\"color:#A6ACCD\">=\u003C/span>\u003Cspan style=\"color:#A6ACCD\">\"\u003C/span>\u003Cspan style=\"color:#5DE4C7\">skipLink\u003C/span>\u003Cspan style=\"color:#A6ACCD\">\"\u003C/span>\u003Cspan style=\"color:#5FB3A1;font-style:italic\"> class\u003C/span>\u003Cspan style=\"color:#A6ACCD\">=\u003C/span>\u003Cspan style=\"color:#A6ACCD\">\"\u003C/span>\u003Cspan style=\"color:#5DE4C7\">skip-link\u003C/span>\u003Cspan style=\"color:#A6ACCD\">\"\u003C/span>\u003Cspan style=\"color:#E4F0FB\">>\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\">      Skip to main content\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:#E4F0FB\">    &#x3C;/\u003C/span>\u003Cspan style=\"color:#5DE4C7\">a\u003C/span>\u003Cspan style=\"color:#E4F0FB\">>\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:#E4F0FB\">  &#x3C;/\u003C/span>\u003Cspan style=\"color:#5DE4C7\">li\u003C/span>\u003Cspan style=\"color:#E4F0FB\">>\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:#E4F0FB\">&#x3C;/\u003C/span>\u003Cspan style=\"color:#5DE4C7\">ul\u003C/span>\u003Cspan style=\"color:#E4F0FB\">>\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]\"> To hide the link unless it is focused, you can add the following style: \u003C/p>\u003Cpre class=\"shiki poimandres\" style=\"background-color:#1b1e28;display:block;white-space:pre;font-family:monospace;padding:10px;border-radius:5px;max-width:80vw;overflow:auto;\" 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:#E4F0FBD0;font-style:italic\">.\u003C/span>\u003Cspan style=\"color:#5FB3A1;font-style:italic\">skip-link\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:#ADD7FF\">  white-space\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#ADD7FF\">nowrap\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:#ADD7FF\">  margin\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#5DE4C7\">1em\u003C/span>\u003Cspan style=\"color:#ADD7FF\"> auto\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:#ADD7FF\">  top\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#5DE4C7\">0\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:#ADD7FF\">  position\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#ADD7FF\">fixed\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:#ADD7FF\">  left\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#5DE4C7\">50%\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:#ADD7FF\">  margin-left\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#5DE4C7\">-72px\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;\">8\u003C/span>\u003Cspan style=\"color:#ADD7FF\">  opacity\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#5DE4C7\">0\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;\">9\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;\">10\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;\">11\u003C/span>\u003Cspan style=\"color:#E4F0FBD0;font-style:italic\">.\u003C/span>\u003Cspan style=\"color:#5FB3A1;font-style:italic\">skip-link\u003C/span>\u003Cspan style=\"color:#E4F0FBD0;font-style:italic\">:\u003C/span>\u003Cspan style=\"color:#91B4D5;font-style:italic\">focus\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;\">12\u003C/span>\u003Cspan style=\"color:#ADD7FF\">  opacity\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#5DE4C7\">1\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;\">13\u003C/span>\u003Cspan style=\"color:#ADD7FF\">  background-color\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#ADD7FF\">white\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;\">14\u003C/span>\u003Cspan style=\"color:#ADD7FF\">  padding\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#5DE4C7\">0.5em\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;\">15\u003C/span>\u003Cspan style=\"color:#ADD7FF\">  border\u003C/span>\u003Cspan style=\"color:#A6ACCD\">: \u003C/span>\u003Cspan style=\"color:#5DE4C7\">1px\u003C/span>\u003Cspan style=\"color:#ADD7FF\"> solid\u003C/span>\u003Cspan style=\"color:#ADD7FF\"> black\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;\">16\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]\"> When a user switches routes, bring focus back to the skip link. Focus on the skip link&#39;s template ref can be achieved by calling focus on the skip link&#39;s template ref (assuming usage of \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;\">vue-router\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;\">vue-router\u003C/span>): \u003C/p>\u003Cpre class=\"shiki poimandres\" style=\"background-color:#1b1e28;display:block;white-space:pre;font-family:monospace;padding:10px;border-radius:5px;max-width:80vw;overflow:auto;\" 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:#E4F0FB\">&#x3C;\u003C/span>\u003Cspan style=\"color:#5DE4C7\">script\u003C/span>\u003Cspan style=\"color:#91B4D5;font-style:italic\"> setup\u003C/span>\u003Cspan style=\"color:#E4F0FB\">>\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:#5DE4C7\">import \u003C/span>\u003Cspan style=\"color:#A6ACCD\">{\u003C/span>\u003Cspan style=\"color:#ADD7FF\"> ref\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\"> from\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> '\u003C/span>\u003Cspan style=\"color:#5DE4C7\">vue\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:#5DE4C7\">import \u003C/span>\u003Cspan style=\"color:#A6ACCD\">{\u003C/span>\u003Cspan style=\"color:#ADD7FF\"> useRoute\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> }\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> from\u003C/span>\u003Cspan style=\"color:#A6ACCD\"> '\u003C/span>\u003Cspan style=\"color:#5DE4C7\">vue-router\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>\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:#91B4D5\">const\u003C/span>\u003Cspan style=\"color:#E4F0FB\"> route\u003C/span>\u003Cspan style=\"color:#91B4D5\"> =\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\"> useRoute\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:#91B4D5\">const\u003C/span>\u003Cspan style=\"color:#E4F0FB\"> skipLink\u003C/span>\u003Cspan style=\"color:#91B4D5\"> =\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\"> ref\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:#E4F0FBD0\">watch\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;\">9\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\">path\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;\">10\u003C/span>\u003Cspan style=\"color:#A6ACCD\">  () \u003C/span>\u003Cspan style=\"color:#91B4D5\">=>\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;\">11\u003C/span>\u003Cspan style=\"color:#E4F0FB\">    skipLink\u003C/span>\u003Cspan style=\"color:#A6ACCD\">.\u003C/span>\u003Cspan style=\"color:#E4F0FB\">value\u003C/span>\u003Cspan style=\"color:#A6ACCD\">.\u003C/span>\u003Cspan style=\"color:#E4F0FBD0\">focus\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;\">12\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;\">13\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;\">14\u003C/span>\u003Cspan style=\"color:#E4F0FB\">&#x3C;/\u003C/span>\u003Cspan style=\"color:#5DE4C7\">script\u003C/span>\u003Cspan style=\"color:#E4F0FB\">>\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]\"> For more information, check out the \u003Ca style=\"color:#067df7;text-decoration:none; color: rgb(66,184,131); text-decoration-line: underline; text-decoration-thickness: 1px;\" href=\"https://www.w3.org/WAI/WCAG21/Techniques/general/G1.html@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">documentation on skip link to main content\u003C/a>\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 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://sst.dev/docs/start/aws/nuxt@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 Nuxt on AWS with SST\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]\">👉🏻 You can now create and deploy a Nuxt app to AWS with SST.\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=R1YLXgCVSec@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">🛠️ nuxi vs nuxt\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]\">👉🏻 Daniel Roe briefly explains what&#39;s the difference between running \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;\">nuxt\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;\">nuxt\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;\">nuxi\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;\">nuxi\u003C/span> from the command line.\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://github.com/RihanArfan/chat-with-pdf@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">🛠️ Chat with PDF\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]\">👉🏻 An open-source, full-stack AI-powered application with Nuxt to ask questions about PDF documents.\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://cursorful.com/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">🛠️ Cursorful\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]\">👉🏻 A Chrome extension that automatically creates beautiful browser recordings with pans and zooms that help emphasize your actions.\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]\">👉🏻 Built with 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: 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://github.com/selemondev/nuxt-formkit-tempo@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">🛠️ Nuxt Formkit Tempo\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]\">👉🏻 The unofficial Nuxt module port of \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;\">@formkit/tempo\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;\">@formkit/tempo\u003C/span>.\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]\">📅 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://nuxtnation.com/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">Nuxt Nation\u003C/a> (12 - 13 November 2024, Virtual Conference) \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://www.vuetoronto.com/tickets@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">VueConf Toronto\u003C/a> (18 - 20 November 2024, Toronto, Canada) \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://vuejs.amsterdam/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">Vuejs Amsterdam\u003C/a> (12 - 13 March 2025, Amsterdam, Netherlands) \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/132/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://www.thecoder.cafe/p/unit-tests-as-documentation@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 Unit Tests As Documentation\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]\">👉🏻 Unit tests can serve as living documentation within the code itself, explaining how code behaves, staying in sync with code changes, and covering edge cases.\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://hallofshame.design/@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">📕 Dark Patterns Hall of Shame\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]\">👉🏻 The Hall of Shame critiques poor design practices and dark patterns, specifically in websites, apps, and user experiences.\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://chromewebstore.google.com/detail/atomic-css-devtools/cbjhfeooiomphlikkblgdageenemhpgc@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">🛠️ Atomic CSS Devtools\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 new Chrome extension creates a compact view of an element&#39;s property &amp; values and allows you to quickly toggle and change them.\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://ftwa.mathix.dev/#create-web-app@TrackLink\" target=\"_blank\" class=\"hover:text-[#35495E]\">🛠️ FTWA\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]\">👉🏻 Allows users to turn any website into a lightweight, fast, and visually appealing app.\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]\">👉🏻 It removes the need for browser frames and creates a native app-like experience.\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/132/bug-fixing-ways.png?twic=v1/cover=600\" alt=\"Ways to fix a bug\" 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 &amp; 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&#39;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 &amp; Nuxt Videos\u003C/a>: You must subscribe Alexander Lichter&#39;s YouTube channel if you are interested in Vue &amp; 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/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://twitter.com/weekly_vue_news\" target=\"_blank\" class=\"hover:text-[#35495E]\">Repost\u003C/a> the latest X thread\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/hr>\n            \u003C/hr>\n            \u003C/hr>\n            \u003C/hr>\u003C/img>\u003C/hr>\n            \u003C/hr>\u003C/img>\u003C/hr>\n            \u003C/hr>\n            \u003C/hr>\n            \u003C/hr>\n            \u003C/hr>\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/td>\n    \u003C/tr>\n    \u003C/tbody>\n    \u003C/table>\n  \u003C/body>\n\n\u003C/html>",132,169,{"absoluteUrl":14,"relativeUrl":15},"https://mokkapps.twic.pics/weekly-vue.news/issues/v2/132/og.png","/issues/v2/132/og.png","2024-10-28T14:00:00Z","Weekly Vue News #169 - Skip Navigation Links","/issues/v2/132",2,1794479153771]