\n\n### Describe the bug\n\nWith the default settings and `experimental.typedPages: true` the generated types are not correctly picked up.\n\nIf I rename `RouteNamedMapI18n` to `RouteNamedMap` the types are available.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell\n\n```",[3176],{"name":3177,"color":3178},"pending triage","c2e0c6",3771,"nuxt-modules","i18n","open","useRoute needs suffix to work","2025-08-05T16:28:06Z","https://github.com/nuxt-modules/i18n/issues/3771",0.7500806,{"description":3188,"labels":3189,"number":3191,"owner":3180,"repository":3181,"state":3182,"title":3192,"updated_at":3193,"url":3194,"score":3195},"### Describe the feature\n\nWhen loading and fetching messages for external sources, the current advised solution (https://i18n.nuxtjs.org/docs/composables/define-i18n-locale) is during build time, which means for every change in messages we need to run the build/deploy again.\n\n\"A function that is the dynamic locale messages loading, that has the following parameters:\"\n\nDoes this mean that all the messages are fetched only during build, and after that they are lazy loaded?\n\nIt would be nice to have a feature, where the messages are cached and aren't loaded during build time.\n\nWould it be possible to implement this?\n\n### Additional information\n\n- [x] Would you be willing to help implement this feature?\n- [ ] Could this feature be implemented as a module?\n\n### Final checks\n\n- [x] Read the [contribution guide](https://nuxt.com/docs/community/contribution) (The contribution guideline of nuxt-modules/i18n is compliant with Nuxt too).\n- [x] Check existing [discussions](https://github.com/nuxt-modules/i18n/discussions) and [issues](https://github.com/nuxt/nuxt/issues).",[3190],{"name":3177,"color":3178},3699,"Runtime dynamic loading of messages","2025-10-10T17:49:00Z","https://github.com/nuxt-modules/i18n/issues/3699",0.7535477,{"description":3197,"labels":3198,"number":3203,"owner":3180,"repository":3181,"state":3182,"title":3204,"updated_at":3205,"url":3206,"score":3207},"### Environment\n\nnpx nuxi info\nWorking directory: C:/Users/senem/MEM22 nuxi 01:42:27\nNuxt project info: (copied to clipboard) nuxi 01:42:27\n\n------------------------------\n- Operating System: Windows_NT\n- Node Version: v20.19.4\n- Nuxt Version: 3.17.7\n- CLI Version: 3.26.2\n- Nitro Version: 2.12.3\n- Package Manager: npm@10.8.2\n- Builder: -\n- User Config: compatibilityDate, devtools, ssr, app, pages, modules, css, postcss, supabase, vite, sourcemap, routeRules, nitro, site, sitemap, plugins, headers, i18n\n- Runtime Modules: @nuxtjs/i18n@10.0.3, @nuxt/eslint@1.6.0, @nuxt/icon@1.15.0, @nuxt/image@1.10.0, @nuxtjs/tailwindcss@6.14.0, @nuxtjs/supabase@1.5.3, @nuxtjs/sitemap@7.4.3\n- Build Modules: -\n------------------------------\n\n👉 Report an issue: https://github.com/nuxt/nuxt/issues/new?template=bug-report.yml\n👉 Suggest an improvement: https://github.com/nuxt/nuxt/discussions/new\n👉 Read documentation: https://nuxt.com\n\n### Reproduction\n\nhttps://github.com/EnsMsgLu/nuxt-i18n-issue\n\n### Describe the bug\n\nit doesnt working with subdomains \n\n\n\n### Additional context\n\n_No response_\n\n### Logs\n\n```shell\n\n```",[3199,3200],{"name":3177,"color":3178},{"name":3201,"color":3202},"need reproduction","CD234A",3767,"Its not working Home page on Subdomain","2025-07-31T10:28:33Z","https://github.com/nuxt-modules/i18n/issues/3767",0.75476944,{"description":3209,"labels":3210,"number":3212,"owner":3180,"repository":3181,"state":3182,"title":3213,"updated_at":3214,"url":3215,"score":3216},"### Environment\n\n------------------------------\n- Operating System: Windows_NT\n- Node Version: v19.9.0\n- Nuxt Version: 3.17.3\n- CLI Version: 3.25.1\n- Nitro Version: 2.11.12\n- Package Manager: npm@9.6.3\n- Builder: -\n- User Config: modules, i18n, tailwindcss, css, plugins, devtools, compatibilityDate, runtimeConfig, vite, nitro\n- Runtime Modules: @geeks.solutions/nuxt-sections@3.0.1, @nuxt/image@1.10.0, @nuxtjs/i18n@9.5.4, @nuxtjs/tailwindcss@6.14.0, nuxt-lazytube@0.2.2, nuxt3-leaflet@1.0.13, @pinia/nuxt@0.11.0\n- Build Modules: -\n------------------------------\n\n\n### Reproduction\n\n* nuxt.config.ts\n\n```ts\nexport default defineNuxtConfig({\n ...(process.env.NODE_ENV === 'development' && {\n devServer: {\n https: {},\n host: '0.0.0.0',\n port: 443,\n }\n }),\n modules: [\n \"@geeks.solutions/nuxt-sections\",\n \"@nuxt/image\",\n \"@nuxtjs/i18n\",\n \"@nuxtjs/tailwindcss\",\n \"nuxt-lazytube\",\n \"nuxt3-leaflet\",\n \"@pinia/nuxt\"\n ],\n i18n: {\n detectBrowserLanguage: false,\n defaultLocale: \"en\",\n locales: [\n {\n name: \"French\",\n code: \"fr\",\n iso: \"fr\",\n file: \"fr.js\"\n },\n {\n name: \"English\",\n code: \"en\",\n iso: \"en\",\n file: \"en.js\"\n }\n ],\n langDir: \"lang/\",\n experimental: {\n localeDetector: 'localeDetector.ts'\n }\n },\n tailwindcss: {\n\n },\n css: [\n '~/assets/css/default.css'\n ],\n plugins: [\n '~/plugins/vue-dragscroll.js'\n ],\n devtools: { enabled: true },\n compatibilityDate: '2025-05-13',\n vite: {\n optimizeDeps: {\n include: ['quill', '@devdcodes9/quill-emojijs', 'quill-table-ui'],\n }\n },\n nitro: {\n compressPublicAssets: {\n gzip: true,\n brotli: true\n }\n }\n})\n```\n\n* localeDetector.ts inside i18n directory\n\n```ts\nconsole.log(\"Detector file loaded\")\n\n// Detect based on query, cookie, header\nexport default defineI18nLocaleDetector((event, config) => {\n\n console.log(\"Event\", event)\n\n // try to get locale from query\n const query = tryQueryLocale(event, { lang: '' }) // disable locale default value with `lang` option\n if (query) {\n return query.toString()\n }\n\n // try to get locale from cookie\n const cookie = tryCookieLocale(event, { lang: '', name: 'i18n_redirected' }) // disable locale default value with `lang` option\n if (cookie) {\n return cookie.toString()\n }\n\n // try to get locale from header (`accept-header`)\n const header = tryHeaderLocale(event, { lang: '' }) // disable locale default value with `lang` option\n if (header) {\n return header.toString()\n }\n\n // If the locale cannot be resolved up to this point, it is resolved with the value `defaultLocale` of the locale config passed to the function\n return config.defaultLocale\n})\n```\n\n* nuxi prepare\n* nuxi dev\n\n### Describe the bug\n\nI am trying to use the experimental localeDetector feature.\nThe localeDetector file is loaded and confirmed by having `Detector file loaded` logged on the server console.\n\nThe problem I am facing is that defineI18nLocaleDetector is never called and no Event is logged.\nAm I missing something ?\n\n### Additional context\n\nIn the documentation I saw that the local detector function is called per request on the server, so why the code inside the defineI18nLocaleDetector is never reached\n\n### Logs\n\n```shell\nNo errors logged at all\n```",[3211],{"name":3177,"color":3178},3651,"Code inside defineI18nLocaleDetector is not reached","2025-05-29T06:34:13Z","https://github.com/nuxt-modules/i18n/issues/3651",0.7552747,{"description":3218,"labels":3219,"number":3221,"owner":3180,"repository":3181,"state":3182,"title":3222,"updated_at":3223,"url":3224,"score":3225},"### Environment\n\n------------------------------\n- Operating System: Windows_NT\n- Node Version: v22.12.0\n- Nuxt Version: 4.0.1\n- CLI Version: 3.26.4\n- Nitro Version: 2.12.4\n- Package Manager: npm@11.1.0\n- Builder: -\n- User Config: modules, imports, devtools, app, css, router, site, colorMode, runtimeConfig, generate, dev, compatibilityDate, nitro, debug, eslint, i18n, ogImage, robots, security, vuefire\n- Runtime Modules: @nuxt/ui@3.2.0, @nuxt/eslint@1.7.0, @nuxtjs/seo@3.1.0, @nuxtjs/i18n@10.0.2, nuxt-security@2.3.0, nuxt-vuefire@1.1.0\n- Build Modules: -\n------------------------------\n\n### Reproduction\n\nThe problem starts to appear after updating to nuxt-i18n v10 module\n\nWhat we can do to replicate:\nhttps://stackblitz.com/edit/bobbiegoede-nuxt-i18n-starter-dwb5kaqj?file=nuxt.config.ts\n\n### Describe the bug\n\nAfter updating i19n from version 9.5.6 to 10.0.2 I receive the following error on startup\n\n```\n[16:02:12] ERROR [request error] [unhandled] [GET] http://localhost:3000/__nuxt_error?error=true&url=%2Fdashboard&statusCode=500&statusMessage=Internal+Server+Error&message=(0%2C+__vite_ssr_import_0__.getApps)+is+not+a+function&stack=(0%2C+__vite_ssr_import_0__.getApps)+is+not+a+function%0Aat+ensureAdminApp+(/project/node_modules/vuefire/dist/server/index.mjs:42:17)%0Aat+/project/node_modules/nuxt-vuefire/dist/runtime/admin/plugin.server.js:13:62)%0Aat+/project/node_modules/nuxt/dist/app/nuxt.js:142:40)%0Aat+fn+(/project/node_modules/nuxt/dist/app/nuxt.js:220:36)%0Aat+Object.callAsync+(/project/node_modules/unctx/dist/index.mjs:72:47)%0Aat+/project/node_modules/nuxt/dist/app/nuxt.js:225:52)%0Aat+Object.runWithContext+(/project/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4020:18)%0Aat+callWithNuxt+(/project/node_modules/nuxt/dist/app/nuxt.js:225:24)%0Aat+/project/node_modules/nuxt/dist/app/nuxt.js:61:41)%0Aat+EffectScope.run+(/project/node_modules/@vue/reactivity/dist/reactivity.cjs.js:97:16)\n\nℹ Error: _ctx.$t is not a function\n\n ⁃ at _sfc_ssrRender (/project/components/Navigation.vue:175:15)\n\n 171 ┃ \u003CUButton\n 172 ┃ variant=\"ghost\"\n 173 ┃ :aria-label=\"item.label\"\n 174 ┃ >\n ❯ 175 ┃ \u003CUIcon :name=\"item.icon\" />\n 176 ┃ {{ item.label }}\n 177 ┃ \u003C/UButton>\n\n ⁃ at renderComponentSubTree (/project/node_modules/@vue/server-renderer/dist/server-renderer.cjs.js:737:9) \n ⁃ at renderComponentVNode (/project/node_modules/@vue/server-renderer/dist/server-renderer.cjs.js:686:12) \n ⁃ at ssrRenderComponent (/project/node_modules/@vue/server-renderer/dist/server-renderer.cjs.js:100:10) \n ⁃ at _sfc_ssrRender (/project/layouts/default.vue:28:41) \n ⁃ at renderComponentSubTree (/project/node_modules/@vue/server-renderer/dist/server-renderer.cjs.js:737:9) \n ⁃ at renderVNode (/project/node_modules/@vue/server-renderer/dist/server-renderer.cjs.js:801:14) \n ⁃ at callWithNuxt (/project/node_modules/nuxt/dist/app/nuxt.js:225:24)\n\n[CAUSE]\nTypeError {\n message: '_ctx.$t is not a function',\n stack: '_ctx.$t is not a function\\n' +\n 'at _sfc_ssrRender (/project/components/Navigation.vue:175:15)\\n' +\n 'at renderComponentSubTree (/project/node_modules/@vue/server-renderer/dist/server-renderer.cjs.js:737:9)\\n' +\n 'at renderComponentVNode (/project/node_modules/@vue/server-renderer/dist/server-renderer.cjs.js:686:12)\\n' +\n 'at ssrRenderComponent (/project/node_modules/@vue/server-renderer/dist/server-renderer.cjs.js:100:10)\\n' +\n 'at _sfc_ssrRender (/project/layouts/default.vue:28:41)\\n' +\n '...'\n}\n```\n\n\nHence I can't start the whole application.\n\nI tried to reproduce it in the stackblitz, but all works fine there. Maybe it has something to do with my envirnoment as I deleted all .nuxt files and also removed all node modules/reinstalled them\n\n\n### Additional context\n\n\nAlso I have a previous error which then causes the application to crash:\n```\n WARN [Vue warn]: Property \"$t\" was accessed during render but is not defined on instance. 14:28:44 \n at \u003CHeaderBar>\n at \u003CDefault ref=Ref\u003C undefined > >\n at \u003CAsyncComponentWrapper ref=Ref\u003C undefined > >\n at \u003CLayoutLoader key=\"default\" layoutProps={\n ref: RefImpl {\n dep: Dep {\n computed: undefined,\n version: 0,\n activeLink: undefined,\n subs: undefined,\n map: undefined,\n key: undefined,\n sc: 0,\n __v_skip: true,\n subsHead: undefined\n },\n __v_isRef: true,\n __v_isShallow: true,\n _rawValue: undefined,\n _value: undefined\n }\n } name=\"default\" >\n at \u003CNuxtLayoutProvider layoutProps={\n ref: RefImpl {\n dep: Dep {\n computed: undefined,\n version: 0,\n activeLink: undefined,\n subs: undefined,\n map: undefined,\n key: undefined,\n sc: 0,\n __v_skip: true,\n subsHead: undefined\n },\n __v_isRef: true,\n __v_isShallow: true,\n _rawValue: undefined,\n _value: undefined\n }\n } key=\"default\" name=\"default\" ... >\n at \u003CNuxtLayout>\n at \u003CError error=(0 , __vite_ssr_import_0__.getApps) is not a function\n\n at ensureAdminApp (/app/node_modules/vuefire/dist/server/index.mjs:36:41)\n at /app/node_modules/nuxt-vuefire/dist/runtime/admin/plugin.server.js:12:68\n at /app/node_modules/nuxt/dist/app/nuxt.js:156:60\n at fn (/app/node_modules/nuxt/dist/app/nuxt.js:233:44)\n at Object.callAsync (/app/node_modules/unctx/dist/index.mjs:68:55)\n at /app/node_modules/nuxt/dist/app/nuxt.js:236:56\n at Object.runWithContext (/app/node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4002:18)\n at callWithNuxt (/app/node_modules/nuxt/dist/app/nuxt.js:236:24)\n at /app/node_modules/nuxt/dist/app/nuxt.js:55:41\n at EffectScope.run (/app/node_modules/@vue/reactivity/dist/reactivity.cjs.js:85:16) >\n at \u003CNuxtRoot>\n\n[nuxt-app] vue:error: 9.872ms 14:28:44 \n[nuxt-app] app:error: 0.022ms 14:28:44 \n[nitro-runtime] error: 0.571ms\n```\n\nWhen I remove nuxt-vuefire. It works again, no error on startup.\n\nWhen I downgrade to 9.5.6 for the i18n module, it works too even with nuxt-vuefire and even with it throwing an error directly\n\n### Logs\n\n```shell\n\n```",[3220],{"name":3177,"color":3178},3755,"_ctx.$t is not a function","2025-07-23T13:58:47Z","https://github.com/nuxt-modules/i18n/issues/3755",0.7578976,{"description":3227,"labels":3228,"number":3235,"owner":3180,"repository":3181,"state":3236,"title":3237,"updated_at":3238,"url":3239,"score":3240},"### Describe the feature\n\nI just don't get why...\n\n\u003Cimg width=\"1280\" height=\"598\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/f68d4571-9a47-4f45-8865-6c5d0238d924\" />\n\n\u003Cimg width=\"1905\" height=\"881\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/01e98f50-1f5f-4867-9622-70e90f7e7e93\" />\n\n### Additional information\n\n- [ ] Would you be willing to help implement this feature?\n- [ ] Could this feature be implemented as a module?\n\n### Final checks\n\n- [x] Read the [contribution guide](https://nuxt.com/docs/community/contribution) (The contribution guideline of nuxt-modules/i18n is compliant with Nuxt too).\n- [x] Check existing [discussions](https://github.com/nuxt-modules/i18n/discussions) and [issues](https://github.com/nuxt/nuxt/issues).",[3229,3232],{"name":3230,"color":3231},"good first issue","7057ff",{"name":3233,"color":3234},"need documentation","33aa3f",3776,"closed","Missing documentation in the code, yet present on the website","2025-09-04T10:00:37Z","https://github.com/nuxt-modules/i18n/issues/3776",0.686898,{"description":3242,"labels":3243,"number":3244,"owner":3180,"repository":3181,"state":3236,"title":3245,"updated_at":3246,"url":3247,"score":3248},"The current version of @nuxtjs/i18n includes @oxc-parser/wasm@0.60.0 as a dependency. This package has been officially deprecated by its maintainers:\n\n> Package no longer supported.\n> Author message: \"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.\"\n> — [npmjs.com/package/@oxc-parser/wasm](https://www.npmjs.com/package/@oxc-parser/wasm)\n\n```\n└─┬ @nuxtjs/i18n@9.5.6\n └── @oxc-parser/wasm@0.60.0\n```\n\nThis introduces unnecessary risk and maintenance overhead for downstream projects relying on @nuxtjs/i18n.\n\nIt is recommended to either:\n- Remove the dependency if not critical, or\n- Replace it with a maintained and supported alternative.\n\nPlease evaluate and take appropriate action to ensure long-term package stability and avoid reliance on unmaintained modules.",[],3720,"Remove or replace deprecated @oxc-parser/wasm@0.60.0 dependency","2025-07-21T09:18:13Z","https://github.com/nuxt-modules/i18n/issues/3720",0.7063454,{"description":3250,"labels":3251,"number":3253,"owner":3180,"repository":3181,"state":3236,"title":3254,"updated_at":3255,"url":3256,"score":3257},"### Describe the feature\n\nIt took me hours of fiddling around, to find out that in order to setup language fallback (in case of missing translation in the current language), I have to create `frontend/i18n/i18n.config.ts` with the following content:\n```\nexport default defineI18nConfig(() => {\n return {\n fallbackLocale: 'en-US',\n }\n})\n```\nNote that AI tools usually suggest adding configuration entries in `nuxt.config.ts`, and usually these fields are deprecated fields. My AI tools got lost completely while trying to resolve this.\nI believe this is a crucial information for implementers. Please add it to the project's guide.\n\n### Additional information\n\n- [ ] Would you be willing to help implement this feature?\n- [ ] Could this feature be implemented as a module?\n\n### Final checks\n\n- [x] Read the [contribution guide](https://nuxt.com/docs/community/contribution) (The contribution guideline of nuxt-modules/i18n is compliant with Nuxt too).\n- [x] Check existing [discussions](https://github.com/nuxt-modules/i18n/discussions) and [issues](https://github.com/nuxt/nuxt/issues).",[3252],{"name":3177,"color":3178},3596,"Doc: add clear instructions how to set language fallback","2025-05-12T14:17:43Z","https://github.com/nuxt-modules/i18n/issues/3596",0.7130572,{"description":3259,"labels":3260,"number":3262,"owner":3180,"repository":3181,"state":3236,"title":3263,"updated_at":3264,"url":3265,"score":3266},"### Environment\r\n\r\nOperating System: Windows 11\r\n\r\nPackages:\r\n@esbuild/linux-x64@0.23.1 extraneous\r\n@nuxtjs/i18n@8.5.2\r\n@parcel/watcher-linux-x64-glibc@2.4.1 extraneous\r\n@parcel/watcher-linux-x64-musl@2.4.1 extraneous\r\n@rollup/rollup-linux-x64-gnu@4.21.2 extraneous\r\n@rollup/rollup-linux-x64-musl@4.21.2 extraneous\r\nnode-addon-api@7.1.1 extraneous\r\nnuxt-typed-router@3.6.5\r\nnuxt@3.13.\r\n\r\nPackage Manager: npm\r\n\r\n### Reproduction\r\n\r\n1. Install nuxt-typed-router\r\n2. Install @nuxtjs/i18n\r\n3. Set strategy for @nuxtjs/i18n in nuxt.config.ts to 'prefix'\r\n4. Get [unhandledRejection] Declaration or statement expected during build\r\n\r\nhttps://stackblitz.com/edit/bobbiegoede-nuxt-i18n-starter-qm6vpw?file=package.json,nuxt.config.ts,i18n.config.ts\r\n\r\n### Describe the bug\r\n\r\nWhen both I18n and nuxt-typed-router are installed and strategy for I18n is set to \"prefix\", the nuxt-typed-router throws this exception: \r\n\r\n[unhandledRejection] Declaration or statement expected. (128:8) \r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Logs\r\n\r\n_No response_",[3261],{"name":3177,"color":3178},3091,"[unhandledRejection] Declaration or statement expected - @nuxt/i18n + nuxt-typed-router","2025-05-16T12:00:31Z","https://github.com/nuxt-modules/i18n/issues/3091",0.7241606,{"description":3268,"labels":3269,"number":3273,"owner":3180,"repository":3181,"state":3236,"title":3274,"updated_at":3275,"url":3276,"score":3277},"## Updates\n\n- 2024/01/02: Updated reproduction and steps to reproduce at https://github.com/nuxt-modules/i18n/issues/2524#issuecomment-1873823456\n- 2025/05/02: Updated reproduction for v9.5.4: https://github.com/nuxt-modules/i18n/issues/2524#issuecomment-2847024120\n\n## Original post\n\n### Environment\n\nWorking directory: /home/projects/aoniwxvlm.github 13:55:30\nNuxt project info: 13:55:30\n\n------------------------------\n- Operating System: Linux\n- Node Version: v18.18.0\n- Nuxt Version: 3.8.0\n- CLI Version: 3.9.1\n- Nitro Version: 2.7.0\n- Package Manager: npm@9.4.2\n- Builder: -\n- User Config: devtools, modules, i18n\n- Runtime Modules: @nuxtjs/i18n@8.0.0-rc.5\n- Build Modules: -\n------------------------------\n\n### Reproduction\n\nhttps://stackblitz.com/edit/github-fyaxh8\n\n### Describe the bug\n\nThe root redirect takes the `Accept-Language` header into account:\n\n```\ncurl -H \"Accept-Language: fr\" -I http://localhost:3000\n```\n\n```\nHTTP/1.1 302 Found\naccess-control-allow-origin: *\nlocation: /fr\ncontent-type: text/html\ndate: Wed, 25 Oct 2023 11:49:52 GMT\nconnection: close\n```\n\nBut everything else does not:\n\n```\ncurl -H \"Accept-Language: fr\" -I http://localhost:3000/foo\n```\n\n```\nHTTP/1.1 302 Found\naccess-control-allow-origin: *\nlocation: /en/foo\ncontent-type: text/html\ndate: Wed, 25 Oct 2023 11:49:41 GMT\nconnection: close\n```\n\nThis also relates to #2131 because I'm using the `prefix` strategy, which means I should actually get a 404 on the `/foo` request. Therefore, I think fixing #2131 will also fix this issue, but not vice versa.\n\n### Additional context\n\n_No response_\n\n### Logs\n\n_No response_",[3270],{"name":3271,"color":3272},"scope: language detection","1B89B8",2524,"Inconsistent handling of `Accept-Language` header","2025-06-22T23:03:38Z","https://github.com/nuxt-modules/i18n/issues/2524",0.7367554,["Reactive",3279],{},["Set"],["ShallowReactive",3282],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fkEOtuMuUW7BYr-J5i_cIQfg4nfVDknb3sshT62e7bys":-1},"/nuxt-modules/i18n/3605"]