[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"github-release-nuxt-fonts-v1.0.0":3,"$f2v3tzw7dti6zg":-1},{"adjacent":4,"latestReleases":12,"relatedArticles":14,"relatedArticlesAreVersioned":8,"release":15},{"newer":5,"older":11},{"htmlUrl":6,"id":7,"isPrerelease":8,"name":9,"publishedAt":10,"tagName":9},"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Freleases\u002Ftag\u002Fv1.0.1","01a12bb1-53e2-70f5-a78e-672083f4ed2f",false,"v1.0.1","2026-10-11T13:42:33.000Z",null,[13],{"id":7,"isPrerelease":8,"name":9,"publishedAt":10,"tagName":9},[],{"htmlUrl":16,"id":17,"isPrerelease":8,"name":18,"projectId":19,"projectName":20,"projectOwner":21,"projectRepo":22,"projectUrl":23,"publishedAt":24,"summary":25,"tagName":18,"updatedAt":26,"breakingChangesHtml":11,"displayName":27,"hasBreakingChanges":8,"indexable":28,"notesHtml":29,"version":30},"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Freleases\u002Ftag\u002Fv1.0.0","01a12bb1-53e9-7522-abfa-7ddd4e011804","v1.0.0","019d75be-cf05-755b-ada6-4e2ab1570b77","Nuxt Fonts","nuxt","fonts","https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts","2026-10-11T13:07:26.000Z","Nuxt Fonts v1.0.0 marks its first stable release, integrating the latest versions of `unifont`, `fontaine`, and `fontless`. Key updates include caching font metadata per project, enforcing build failures on font errors, and improved handling of `@font-face` descriptors. Additionally, fonts are now served from `\u002F_nuxt\u002Ffonts` in Vite builds, with support for CDN URLs and enhanced configuration options.","2026-10-11T16:00:33.665Z","Nuxt Fonts v1.0.0",true,"\u003Cblockquote>\n\u003Cp>v1.0.0 is the first stable release of Nuxt Fonts.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>Nuxt Fonts has been in production use for over a year, and the underlying stack it is built on has now stabilised: \u003Ca href=\"https:\u002F\u002Funifont.dev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>unifont\u003C\u002Fcode>\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Funjs\u002Ffontaine\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>fontaine\u003C\u002Fcode>\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffontless\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>fontless\u003C\u002Fcode>\u003C\u002Fa> all reached v1 alongside this release.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>unifont\u003C\u002Fcode> resolves font metadata from providers\u003C\u002Fli>\n\u003Cli>\u003Ccode>fontaine\u003C\u002Fcode> uses that metadata to cut layout shift\u003C\u002Fli>\n\u003Cli>\u003Ccode>fontless\u003C\u002Fcode> does the whole thing in Vite with zero config\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>… and of course, \u003Ccode>@nuxt\u002Ffonts\u003C\u002Fcode> wraps all three and wires them into Nuxt.\u003C\u002Fp>\n\u003Cp>Most projects should be able to upgrade simply by bumping the version, but read on for full details...!\u003C\u002Fp>\n\u003Ch2>🚨 Breaking (or significant) changes\u003C\u002Fh2>\n\u003Ch3>Font metadata is cached per project\u003C\u002Fh3>\n\u003Cp>Font metadata and downloaded font files are now cached in \u003Ccode>node_modules\u002F.cache\u002Fnuxt\u002Ffonts\u002Fmeta\u003C\u002Fcode> relative to your project root rather than to the directory you run Nuxt from. The first build after upgrading will re-resolve and re-download fonts.\u003C\u002Fp>\n\u003Cp>You can now configure the location with the \u003Ca href=\"https:\u002F\u002Ffonts.nuxt.com\u002Fget-started\u002Fconfiguration#cache\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>cache\u003C\u002Fcode>\u003C\u002Fa> option, pass your own \u003Ca href=\"https:\u002F\u002Funstorage.unjs.io\u002F\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">unstorage\u003C\u002Fa> instance, or disable persistent caching with \u003Ccode>cache: false\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">export default defineNuxtConfig({\n  fonts: {\n    cache: &#39;.cache\u002Ffonts&#39;,\n  },\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Font failures fail production builds\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Ffonts.nuxt.com\u002Fget-started\u002Fconfiguration#throwonerror\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>throwOnError\u003C\u002Fcode>\u003C\u002Fa> now defaults to \u003Ccode>true\u003C\u002Fcode> outside of dev mode. Rather than producing a build with a missing font, the build fails when a provider errors, when a font file cannot be downloaded after retries, or when you set \u003Ccode>provider\u003C\u002Fcode> on a family and that provider does not contain it.\u003C\u002Fp>\n\u003Cp>A family that cannot be found by any provider still warns rather than failing, as does an unknown provider name, so fonts you declare yourself in CSS are unaffected.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">export default defineNuxtConfig({\n  fonts: {\n    throwOnError: false,\n  },\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Family-level \u003Ccode>@font-face\u003C\u002Fcode> descriptors now apply to provider fonts\u003C\u002Fh3>\n\u003Cp>\u003Ccode>display\u003C\u002Fcode> and \u003Ccode>unicodeRange\u003C\u002Fcode> set on a family were previously only honoured for families you declared manually with \u003Ccode>src\u003C\u002Fcode>, and were silently dropped for fonts resolved from a provider. They now apply in both cases. Descriptors other than \u003Ccode>display\u003C\u002Fcode>, \u003Ccode>weight\u003C\u002Fcode> and \u003Ccode>style\u003C\u002Fcode> (such as \u003Ccode>stretch\u003C\u002Fcode>, \u003Ccode>featureSettings\u003C\u002Fcode> and \u003Ccode>variationSettings\u003C\u002Fcode>) are also no longer dropped from manually declared families.\u003C\u002Fp>\n\u003Cp>If you set any of these options on a family and relied on them being ignored, your generated CSS will change. Setting \u003Ccode>unicodeRange\u003C\u002Fcode> on a family marks it as subsetted, so it is no longer preloaded by default; set \u003Ca href=\"https:\u002F\u002Ffonts.nuxt.com\u002Fget-started\u002Fconfiguration#preload\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>preload\u003C\u002Fcode>\u003C\u002Fa> explicitly if you still want a preload link for it.\u003C\u002Fp>\n\u003Ch3>Injected \u003Ccode>@font-face\u003C\u002Fcode> rules are minified with \u003Ccode>lightningcss\u003C\u002Fcode>\u003C\u002Fh3>\n\u003Cp>Generated \u003Ccode>@font-face\u003C\u002Fcode> declarations were previously minified with esbuild unless you had opted into \u003Ccode>css.lightningcss\u003C\u002Fcode>. They are now always minified with lightningcss, so the exact serialisation of the CSS we inject may differ (for example \u003Ccode>local(Font Name)\u003C\u002Fcode> rather than \u003Ccode>local(&quot;Font Name&quot;)\u003C\u002Fcode>). This is cosmetic, but it will show up in snapshot tests.\u003C\u002Fp>\n\u003Ch3>The default \u003Ccode>400 700\u003C\u002Fcode> weight range is applied\u003C\u002Fh3>\n\u003Cp>\u003Ccode>weights\u003C\u002Fcode> has always been documented as defaulting to \u003Ccode>[&#39;400 700&#39;]\u003C\u002Fcode>, but the default was set on the wrong option and never reached the resolver, so families without an explicit \u003Ccode>weights\u003C\u002Fcode> resolved at weight \u003Ccode>400\u003C\u002Fcode> alone. The documented default now takes effect (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fissues\u002F619\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">#619\u003C\u002Fa>).\u003C\u002Fp>\n\u003Cp>A family you didn&#39;t set \u003Ccode>weights\u003C\u002Fcode> on will resolve a bold face as well as a regular one, so expect additional \u003Ccode>@font-face\u003C\u002Fcode> rules and an additional file downloaded per family. Text that silently fell back to a synthesised bold will now render in the real one.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">export default defineNuxtConfig({\n  fonts: {\n    defaults: {\n      weights: [400],\n    },\n  },\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Fonts are served from \u003Ccode>\u002F_nuxt\u002Ffonts\u003C\u002Fcode> in Vite builds\u003C\u002Fh3>\n\u003Cp>Production builds with the Vite builder now emit font files as Vite build assets under \u003Ccode>app.buildAssetsDir\u003C\u002Fcode>, so they are served from \u003Ccode>\u002F_nuxt\u002Ffonts\u002F&lt;hash&gt;.woff2\u003C\u002Fcode> rather than \u003Ccode>\u002F_fonts\u002F&lt;hash&gt;.woff2\u003C\u002Fcode>. Vite owns their URLs, which means \u003Ccode>app.cdnURL\u003C\u002Fcode>, a relative \u003Ccode>app.baseURL\u003C\u002Fcode> and \u003Ccode>experimental.renderBuiltUrl\u003C\u002Fcode> all now apply to fonts as they do to every other built asset.\u003C\u002Fp>\n\u003Cp>The location of a font file is an implementation detail rather than a stable URL contract. If you have hard-coded \u003Ccode>\u002F_fonts\u002F\u003C\u002Fcode> anywhere (a CDN rule, a CSP directive, a cache header, a test), point it at your build assets directory instead. Fonts are still served from \u003Ccode>\u002F_fonts\u003C\u002Fcode> in development and with the webpack and rspack builders.\u003C\u002Fp>\n\u003Ch3>\u003Ccode>app.cdnURL\u003C\u002Fcode> now applies to fonts\u003C\u002Fh3>\n\u003Cp>This follows from the change above. \u003Ccode>cdnURL\u003C\u002Fcode> was previously never applied to font URLs, so fonts were always served same-origin. They now come from your CDN.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>[!IMPORTANT]\u003Cbr>Browsers always fetch fonts in CORS mode, so the CDN must respond with an \u003Ccode>Access-Control-Allow-Origin\u003C\u002Fcode> header that covers your site. Without it, fonts that previously loaded fail silently and the browser falls back to the next family in the stack. If you set \u003Ccode>cdnURL\u003C\u002Fcode> and don&#39;t control the headers on it, check this before upgrading.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch3>\u003Ccode>assets.prefix\u003C\u002Fcode> is relative to \u003Ccode>buildAssetsDir\u003C\u002Fcode> in Vite builds\u003C\u002Fh3>\n\u003Cp>\u003Ccode>assets.prefix\u003C\u002Fcode> now names a directory inside \u003Ccode>app.buildAssetsDir\u003C\u002Fcode> in Vite production builds, and defaults to \u003Ccode>fonts\u003C\u002Fcode>. Setting \u003Ccode>prefix: &#39;\u002Fmy-fonts&#39;\u003C\u002Fcode> serves fonts from \u003Ccode>\u002F_nuxt\u002Fmy-fonts\u003C\u002Fcode> rather than from \u003Ccode>\u002Fmy-fonts\u003C\u002Fcode>. It remains a public path in development and with the webpack and rspack builders.\u003C\u002Fp>\n\u003Ch3>\u003Ccode>global: true\u003C\u002Fcode> families get font fallback metrics\u003C\u002Fh3>\n\u003Cp>\u003Ccode>global\u003C\u002Fcode> is the escape hatch for fonts we can&#39;t detect from your CSS, but until now that meant the fonts most likely to cause layout shift were the ones we did least about: the \u003Ccode>@font-face\u003C\u002Fcode> went into a global stylesheet and no fallback metric overrides were generated at all.\u003C\u002Fp>\n\u003Cp>We now generate those overrides at every usage site we can see, so \u003Ccode>font-family: &#39;Anton&#39;\u003C\u002Fcode> in a component becomes \u003Ccode>font-family: &#39;Anton&#39;, &#39;Anton Fallback: Arial&#39;, ...\u003C\u002Fcode> with the matching \u003Ccode>size-adjust\u003C\u002Fcode> and \u003Ccode>ascent-override\u003C\u002Fcode> rules alongside it, exactly as it would for a family that wasn&#39;t declared globally. The \u003Ccode>@font-face\u003C\u002Fcode> rule itself still comes from the global stylesheet and isn&#39;t duplicated, and preload hints are unchanged. Usage we can&#39;t scan (an SVG, a family chosen at runtime) keeps working as before.\u003C\u002Fp>\n\u003Cp>Set \u003Ccode>fallbacks: []\u003C\u002Fcode> on the family if you don&#39;t want the fallback rules.\u003C\u002Fp>\n\u003Ch3>The \u003Ccode>local\u003C\u002Fcode> provider only scans layer \u003Ccode>public\u002F\u003C\u002Fcode> directories\u003C\u002Fh3>\n\u003Cp>The \u003Ca href=\"https:\u002F\u002Ffonts.nuxt.com\u002Fget-started\u002Fproviders#local\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>local\u003C\u002Fcode> provider\u003C\u002Fa> previously scanned every directory in \u003Ccode>nitro.publicAssets\u003C\u002Fcode>, including those that modules register for their own files. It now scans only the \u003Ccode>public\u002F\u003C\u002Fcode> directory of your project and of each layer.\u003C\u002Fp>\n\u003Cp>If you relied on fonts in another \u003Ccode>nitro.publicAssets\u003C\u002Fcode> directory, add it to \u003Ca href=\"https:\u002F\u002Ffonts.nuxt.com\u002Fget-started\u002Fproviders#fonts-installed-from-npm\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>local.dirs\u003C\u002Fcode>\u003C\u002Fa>:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">export default defineNuxtConfig({\n  fonts: {\n    local: {\n      dirs: [&#39;..\u002Fsome-module\u002Ffonts&#39;],\n    },\n  },\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>⚠️ Deprecations\u003C\u002Fh2>\n\u003Ch3>\u003Ccode>experimental.processCSSVariables\u003C\u002Fcode>\u003C\u002Fh3>\n\u003Cp>\u003Ccode>fonts.experimental.processCSSVariables\u003C\u002Fcode> has moved to \u003Ccode>fonts.processCSSVariables\u003C\u002Fcode>. The old location still works and now warns.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">export default defineNuxtConfig({\n  fonts: {\n    processCSSVariables: true,\n  },\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>\u003Ccode>fonts:public-asset-context\u003C\u002Fcode>\u003C\u002Fh3>\n\u003Cp>Use \u003Ca href=\"https:\u002F\u002Ffonts.nuxt.com\u002Fadvanced#fontsresolved\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>fonts:resolved\u003C\u002Fcode>\u003C\u002Fa> instead. It reports each family as it is resolved, with the URL every font file is served from and a \u003Ccode>readFont()\u003C\u002Fcode> to read its contents, so there&#39;s no need to reconstruct paths from the asset context. (The old hook still works.)\u003C\u002Fp>\n\u003Ch2>✨ Features\u003C\u002Fh2>\n\u003Ch3>A new DevTools panel\u003C\u002Fh3>\n\u003Cp>The Fonts panel in \u003Ca href=\"https:\u002F\u002Fdevtools.nuxt.com\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Nuxt DevTools\u003C\u002Fa> has been rebuilt on \u003Ccode>fontless\u003C\u002Fcode>. It lists every family resolved for your app, the provider that served it, the faces generated for it, where each one is used, and any warnings raised while resolving it.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F287f08a8-f92e-4a3d-a585-ab4ea80432db\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F287f08a8-f92e-4a3d-a585-ab4ea80432db\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>webpack and rspack support\u003C\u002Fh3>\n\u003Cp>Nuxt Fonts now works with the webpack and rspack builders. Previously our CSS transform ran after \u003Ccode>css-loader\u003C\u002Fcode> had already turned stylesheets into JavaScript modules, so no \u003Ccode>@font-face\u003C\u002Fcode> rule was ever injected, and a family declared with \u003Ccode>global: true\u003C\u002Fcode> failed the client build outright.\u003C\u002Fp>\n\u003Cp>The transform now runs immediately before \u003Ccode>css-loader\u003C\u002Fcode>, which means it sees your styles after Sass and PostCSS have run, so a family named only through a preprocessor variable is detected too. There&#39;s nothing to change on your side, but a build that silently shipped no web fonts will now download them and serve them from \u003Ccode>\u002F_fonts\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch3>Arbitrary variable axes\u003C\u002Fh3>\n\u003Cp>Variable font axes beyond \u003Ccode>wght\u003C\u002Fcode> now resolve from providers that publish them, so you can ask for \u003Ccode>wdth\u003C\u002Fcode>, \u003Ccode>slnt\u003C\u002Fcode>, \u003Ccode>opsz\u003C\u002Fcode> and more.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">export default defineNuxtConfig({\n  fonts: {\n    families: [\n      {\n        name: &#39;Roboto Flex&#39;,\n        provider: &#39;google&#39;,\n        providerOptions: {\n          google: {\n            experimental: {\n              variableAxis: { wdth: [[&#39;75&#39;, &#39;100&#39;]] },\n            },\n          },\n        },\n      },\n    ],\n  },\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Subsetting fonts to the glyphs you use\u003C\u002Fh3>\n\u003Cp>The new \u003Ccode>glyphs\u003C\u002Fcode> option reduces every font file we emit to the characters needed to render the text you give it, which can dramatically cut the bytes shipped for icon fonts and single-language sites.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">export default defineNuxtConfig({\n  fonts: {\n    defaults: {\n      glyphs: &#39;Handgloves &amp; 0123&#39;,\n    },\n  },\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Where a provider can subset server-side the characters are passed through to it, so the full file is never downloaded. Every other file is subsetted after download, which needs the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpapandreou\u002Fsubset-font\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>subset-font\u003C\u002Fcode>\u003C\u002Fa> package; we&#39;ll offer to install it the first time you run Nuxt with \u003Ccode>glyphs\u003C\u002Fcode> set.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>[!IMPORTANT]\u003Cbr>Before enabling subsetting, make sure the font licence allows you to do so. Many do not.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch3>Preloading by subset\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Ffonts.nuxt.com\u002Fget-started\u002Fconfiguration#preload\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>preload\u003C\u002Fcode>\u003C\u002Fa> (on \u003Ccode>defaults\u003C\u002Fcode> and on individual \u003Ccode>families\u003C\u002Fcode>) accepts \u003Ccode>{ subsets: [...] }\u003C\u002Fcode> or a filter function, so you can preload just the subsets your app needs.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">export default defineNuxtConfig({\n  fonts: {\n    defaults: {\n      preload: { subsets: [&#39;latin&#39;] },\n    },\n  },\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Named font weights\u003C\u002Fh3>\n\u003Cp>\u003Ccode>weights\u003C\u002Fcode> accepts CSS keywords (\u003Ccode>normal\u003C\u002Fcode>, \u003Ccode>bold\u003C\u002Fcode>, \u003Ccode>light\u003C\u002Fcode>, ...) in config, and the \u003Ccode>local\u003C\u002Fcode> provider recognises them in filenames, so \u003Ccode>MyFont-Bold.woff2\u003C\u002Fcode> is picked up as weight \u003Ccode>700\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch3>Scanning additional local font directories\u003C\u002Fh3>\n\u003Cp>The \u003Ccode>local\u003C\u002Fcode> provider can scan directories beyond \u003Ccode>public\u002F\u003C\u002Fcode>, and now reports which filenames it looked for when a family cannot be resolved, which makes misnamed files much easier to debug.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">export default defineNuxtConfig({\n  fonts: {\n    local: {\n      paths: [&#39;assets\u002Ffonts&#39;],\n    },\n  },\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Reuse resolved fonts from another module\u003C\u002Fh3>\n\u003Cp>Modules that need the fonts your app already uses - for example, to \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt-modules\u002Fog-image\u002F\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">render an OG image\u003C\u002Fa> or a PDF - had to reverse-engineer internal build machinery to find them, then re-resolve and re-download the same families themselves.\u003C\u002Fp>\n\u003Cp>The new \u003Ccode>fonts:resolved\u003C\u002Fcode> hook reports each family as it is resolved, with the URL every font file is served from and a \u003Ccode>readFont()\u003C\u002Fcode> to read its contents, so nothing has to be resolved or downloaded more than once.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-ts\">const files = new Map&lt;string, () =&gt; Promise&lt;Buffer&gt;&gt;()\n\nnuxt.hook(&#39;fonts:resolved&#39;, (font) =&gt; {\n  for (const file of font.files) {\n    files.set(file.url, file.readFont)\n  }\n})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Listeners run while your stylesheets are transformed, so collect what you need and call \u003Ccode>readFont()\u003C\u002Fcode> later. See \u003Ca href=\"https:\u002F\u002Ffonts.nuxt.com\u002Fadvanced#fontsresolved\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">the hook documentation\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Custom CSS variable prefixes\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Ffonts.nuxt.com\u002Fget-started\u002Fconfiguration#processcssvariables\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>processCSSVariables\u003C\u002Fcode>\u003C\u002Fa> accepts a custom prefix, so \u003Ccode>processCSSVariables: &#39;my-app&#39;\u003C\u002Fcode> processes \u003Ccode>--my-app-*\u003C\u002Fcode> variables only.\u003C\u002Fp>\n\u003Ch2>🩹 Fixes\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>Font asset URLs respect the app \u003Ccode>baseURL\u003C\u002Fcode> and a custom \u003Ccode>cdnURL\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Inlined \u003Ccode>@font-face\u003C\u002Fcode> rules are deduplicated in the rendered HTML\u003C\u002Fli>\n\u003Cli>Font downloads are retried before a build is failed\u003C\u002Fli>\n\u003Cli>Local variable fonts with weight ranges resolve correctly\u003C\u002Fli>\n\u003Cli>Fallback metrics are generated for fonts in the public directory\u003C\u002Fli>\n\u003Cli>Nitro v3 and Nuxt 5 compatibility\u003C\u002Fli>\n\u003Cli>Devtools UI works under a custom \u003Ccode>baseURL\u003C\u002Fcode> and with \u003Ccode>@nuxt\u002Fdevtools\u003C\u002Fcode> v4\u003C\u002Fli>\n\u003Cli>Deprecated \u003Ccode>experimental.processCSSVariables\u003C\u002Fcode> now warns rather than being silently ignored\u003C\u002Fli>\n\u003Cli>Dev font server errors are passed to the next middleware instead of hanging the request\u003C\u002Fli>\n\u003Cli>Multiple \u003Ccode>families\u003C\u002Fcode> entries sharing a name are all applied\u003C\u002Fli>\n\u003Cli>The \u003Ccode>local\u003C\u002Fcode> provider detects camel-cased variable font markers in filenames\u003C\u002Fli>\n\u003Cli>Font faces injected into bundled CSS resolve their URLs correctly\u003C\u002Fli>\n\u003Cli>Hoisted global font faces are minified\u003C\u002Fli>\n\u003Cli>Fallbacks are not regenerated for already-transformed declarations\u003C\u002Fli>\n\u003Cli>The \u003Ccode>local\u003C\u002Fcode> provider no longer scans \u003Ccode>nitro.publicAssets\u003C\u002Fcode> directories registered by modules\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>🙏 Thank you\u003C\u002Fh2>\n\u003Cp>Thank you so much to everyone who has contributed to \u003Ccode>@nuxt\u002Ffonts\u003C\u002Fcode>, \u003Ccode>unifont\u003C\u002Fcode>, \u003Ccode>fontaine\u003C\u002Fcode> and \u003Ccode>fontless\u003C\u002Fcode> to get us here. ❤️\u003C\u002Fp>\n\u003Ch2>🚀 How to upgrade\u003C\u002Fh2>\n\u003Cp>After upgrading to the latest version, clear your font cache and rebuild:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\">rm -rf node_modules\u002F.cache\u002Fnuxt\u002Ffonts\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Please read the \u003Ca href=\"https:\u002F\u002Ffonts.nuxt.com\u002Fget-started\u002Fupgrade\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">upgrade guide\u003C\u002Fa> for the full detail, and let me know how you get on! 🙏\u003C\u002Fp>\n\u003Ch2>👉 Changelog\u003C\u002Fh2>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcompare\u002Fv0.14.0...v1.0.0\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">compare changes\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>🚀 Enhancements\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>use devframe-based devtools from \u003Ccode>fontless\u003C\u002Fcode> (#937)\u003C\u002Fli>\n\u003Cli>add \u003Ccode>fonts:resolved\u003C\u002Fcode> hook (#921)\u003C\u002Fli>\n\u003Cli>⚠️  serve fonts as vite build assets under \u003Ccode>buildAssetsDir\u003C\u002Fcode> (#918)\u003C\u002Fli>\n\u003Cli>generate fallback metrics for \u003Ccode>global\u003C\u002Fcode> families where used (#915)\u003C\u002Fli>\n\u003Cli>inject font faces under the webpack and rspack builders (#914)\u003C\u002Fli>\n\u003Cli>support resolving variable font axes (#909)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>local:\u003C\u002Fstrong> accept named font weights in config and filename aliases (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F136ac36\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>136ac36\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>deps:\u003C\u002Fstrong> update \u003Ccode>fontless\u003C\u002Fcode> to \u003Ccode>0.4.3\u003C\u002Fcode> (#421)\u003C\u002Fli>\n\u003Cli>subset downloaded fonts to the glyphs a family declares (#131)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>local:\u003C\u002Fstrong> report filenames looked for when a family can&#39;t be resolved (#895)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>npm:\u003C\u002Fstrong> resolve installed font packages with \u003Ccode>resolve\u003C\u002Fcode> + \u003Ccode>exists\u003C\u002Fcode> hooks (#894)\u003C\u002Fli>\n\u003Cli>⚠️  \u003Cstrong>deps:\u003C\u002Fstrong> update \u003Ccode>fontless\u003C\u002Fcode> and \u003Ccode>unifont\u003C\u002Fcode> (#887)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>local:\u003C\u002Fstrong> support scanning font files from additional directories (#876)\u003C\u002Fli>\n\u003Cli>configurable font cache (#869)\u003C\u002Fli>\n\u003Cli>⚠️  \u003Cstrong>deps:\u003C\u002Fstrong> update \u003Ccode>unifont\u003C\u002Fcode>, \u003Ccode>fontaine\u003C\u002Fcode> and \u003Ccode>fontless\u003C\u002Fcode> (#868)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🩹 Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>resolve urls of font faces injected into bundled css (#939)\u003C\u002Fli>\n\u003Cli>minify hoisted global font faces (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F6103883\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>6103883\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>don&#39;t regenerate fallbacks for already-transformed declarations (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F60d7904\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>60d7904\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>local:\u003C\u002Fstrong> only scan layer \u003Ccode>public\u002F\u003C\u002Fcode> directories (#938)\u003C\u002Fli>\n\u003Cli>support multiple \u003Ccode>families\u003C\u002Fcode> entries with the same name (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002Fd7987a8\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>d7987a8\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>local:\u003C\u002Fstrong> detect camel-cased variable font markers (#931)\u003C\u002Fli>\n\u003Cli>use explicit file extensions in relative imports (#930)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>local:\u003C\u002Fstrong> scan for font files during module setup (#929)\u003C\u002Fli>\n\u003Cli>use \u003Ccode>fontless\u003C\u002Fcode> preload selection (#920)\u003C\u002Fli>\n\u003Cli>fail before downloading fonts that need a missing \u003Ccode>subset-font\u003C\u002Fcode> (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F00436e1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>00436e1\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>respect user weights if provided (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F8b6d7f0\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>8b6d7f0\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>apply the default \u003Ccode>400 700\u003C\u002Fcode> weight range (#619)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>local:\u003C\u002Fstrong> generate fallback metrics for public directory fonts (#171)\u003C\u002Fli>\n\u003Cli>nitro v3 compatibility (#898)\u003C\u002Fli>\n\u003Cli>warn when deprecated \u003Ccode>experimental.processCSSVariables\u003C\u002Fcode> is set (#892)\u003C\u002Fli>\n\u003Cli>pass dev font server errors to the next middleware (#891)\u003C\u002Fli>\n\u003Cli>deduplicate inlined \u003Ccode>@font-face\u003C\u002Fcode> rules in rendered html (#879)\u003C\u002Fli>\n\u003Cli>retry font downloads and fail production builds on font errors (#877)\u003C\u002Fli>\n\u003Cli>support local variable fonts with weight ranges (#794)\u003C\u002Fli>\n\u003Cli>inline font faces from global stylesheets (#875)\u003C\u002Fli>\n\u003Cli>prefix font asset URLs with app \u003Ccode>baseURL\u003C\u002Fcode> (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F1f13e79\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>1f13e79\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>respect \u003Ccode>baseURL\u003C\u002Fcode> when serving devtools UI (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F918d036\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>918d036\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>consider global fonts for preloading as well (#856)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>devtools:\u003C\u002Fstrong> use hook for compat with devtools v4 (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F05ae60c\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>05ae60c\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>strip style queries when tracking fonts to preload (#872)\u003C\u002Fli>\n\u003Cli>pass a real H3Event in storybook mode (#807)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>💅 Refactors\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>let \u003Ccode>fontless\u003C\u002Fcode> fill per-category fallback defaults (#893)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>client:\u003C\u002Fstrong> migrate away from devtools-ui-kit (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002Fad5b781\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>ad5b781\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>📖 Documentation\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>add docs for devtools panel and \u003Ccode>fonts:resolved\u003C\u002Fcode> (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002Fc9478ca\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>c9478ca\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>document variable font usage and naming (#933)\u003C\u002Fli>\n\u003Cli>note that non-default subsets need configuring (#932)\u003C\u002Fli>\n\u003Cli>cover unicode ranges in \u003Ccode>glyphs\u003C\u002Fcode> and provider failure isolation (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F4b7a21b\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>4b7a21b\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>correct some inaccuracies in the docs (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F823edb0\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>823edb0\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>refresh the docs site for v1 (#919)\u003C\u002Fli>\n\u003Cli>note that lightningcss minification needs the optional peer (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F8928fb0\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>8928fb0\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>update upgrade guide (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F5f41ed3\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>5f41ed3\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>document \u003Ccode>global\u003C\u002Fcode> as the escape hatch for undetectable font usage (#917)\u003C\u002Fli>\n\u003Cli>drop mention of tailwindcss v3 (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002Fb764025\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>b764025\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🏡 Chore\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>fix typecheck against the module stub (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F99bb608\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>99bb608\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>pin nuxt 5 playground (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F7a46fde\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>7a46fde\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>client:\u003C\u002Fstrong> don&#39;t overwrite built client when running playground (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002Fbb36013\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>bb36013\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>exempt first-party packages from pnpm \u003Ccode>minimumReleaseAge\u003C\u002Fcode> (#862)\u003C\u002Fli>\n\u003Cli>replace \u003Ccode>latest\u003C\u002Fcode> ranges with caret ranges (#861)\u003C\u002Fli>\n\u003Cli>migrate to pnpm v11 (#831)\u003C\u002Fli>\n\u003Cli>migrate npm badges and links to npmx.dev (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002Fa5c61fb\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>a5c61fb\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>✅ Tests\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>tolerate per-file font face duplication in bundled css (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002Fa5a4dd9\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>a5a4dd9\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>clear the font cache of every fixture and playground (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F7995bd1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>7995bd1\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>cover tailwind v4 \u003Ccode>--default-font-family\u003C\u002Fcode> theme variables (#890)\u003C\u002Fli>\n\u003Cli>cover family-level font-face descriptor overrides (#888)\u003C\u002Fli>\n\u003Cli>cover font URLs in inlined styles with a custom \u003Ccode>cdnURL\u003C\u002Fcode> (#880)\u003C\u002Fli>\n\u003Cli>drop tailwindcss v3 (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002Fd7921fb\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>d7921fb\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>use human readable font names in snapshots (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002Fd119be1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>d119be1\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>refresh snapshots + make resilient to vite 8 changes (#857)\u003C\u002Fli>\n\u003Cli>update test assertions for vite 8 (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F16e87f6\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>16e87f6\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>mock adobe api responses (#819)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🤖 CI\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>use \u003Ccode>pnpm\u002Fsetup\u003C\u002Fcode> and \u003Ccode>devEngines\u003C\u002Fcode> (#907)\u003C\u002Fli>\n\u003Cli>adopt uppt for release workflow (#866)\u003C\u002Fli>\n\u003Cli>run ci for merge groups (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F8c3dd7f\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>8c3dd7f\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>migrate agentscan-action to v2 (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F7dd7a38\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>7dd7a38\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>add agent-scan workflow to flag bot-authored PRs (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F349b7ba\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>349b7ba\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>rename workflow (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002F8154aa6\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>8154aa6\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>avoid checkout for reproduction comment (\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnuxt\u002Ffonts\u002Fcommit\u002Fed921dc\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">\u003Ccode>ed921dc\u003C\u002Fcode>\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🎉 New Contributors\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Peter Uithoven (@peteruithoven)\u003C\u002Fli>\n\u003Cli>Meliceanu (@Meliceanu)\u003C\u002Fli>\n\u003Cli>Cynthia Rey (@cyyynthia)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>❤️ Contributors\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Daniel Roe (@danielroe)\u003C\u002Fli>\n\u003Cli>Harlan Wilton (@harlan-zw)\u003C\u002Fli>\n\u003Cli>Peter Uithoven (@peteruithoven)\u003C\u002Fli>\n\u003Cli>Meliceanu (@Meliceanu)\u003C\u002Fli>\n\u003Cli>Cynthia Rey (@cyyynthia)\u003C\u002Fli>\n\u003C\u002Ful>\n","1.0.0"]