@intlayer/docs 9.3.3 → 9.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -1
- package/authors.json +1 -1
- package/blog/ar/i18n_using_next-i18next.md +52 -13
- package/blog/ar/i18n_using_next-intl.md +20 -2
- package/blog/de/i18n_using_next-i18next.md +37 -37
- package/blog/de/i18n_using_next-intl.md +18 -0
- package/blog/en/i18n_using_next-i18next.md +35 -0
- package/blog/en/i18n_using_next-intl.md +18 -0
- package/blog/en/rag_powered_documentation_assistant.md +4 -1
- package/blog/en-GB/i18n_using_next-i18next.md +28 -1
- package/blog/en-GB/i18n_using_next-intl.md +18 -0
- package/blog/es/i18n_using_next-i18next.md +52 -13
- package/blog/es/i18n_using_next-intl.md +18 -0
- package/blog/fr/i18n_using_next-i18next.md +27 -0
- package/blog/fr/i18n_using_next-intl.md +18 -0
- package/blog/hi/i18n_using_next-i18next.md +52 -13
- package/blog/hi/i18n_using_next-intl.md +18 -0
- package/blog/id/i18n_using_next-i18next.md +40 -13
- package/blog/id/i18n_using_next-intl.md +18 -0
- package/blog/it/i18n_using_next-i18next.md +40 -13
- package/blog/it/i18n_using_next-intl.md +18 -0
- package/blog/ja/i18n_using_next-i18next.md +27 -0
- package/blog/ja/i18n_using_next-intl.md +18 -0
- package/blog/ko/i18n_using_next-i18next.md +40 -13
- package/blog/ko/i18n_using_next-intl.md +18 -0
- package/blog/pl/i18n_using_next-i18next.md +40 -13
- package/blog/pl/i18n_using_next-intl.md +18 -0
- package/blog/pt/i18n_using_next-i18next.md +52 -13
- package/blog/pt/i18n_using_next-intl.md +18 -0
- package/blog/ru/i18n_using_next-i18next.md +37 -37
- package/blog/ru/i18n_using_next-intl.md +19 -1
- package/blog/tr/i18n_using_next-i18next.md +40 -13
- package/blog/tr/i18n_using_next-intl.md +18 -0
- package/blog/uk/i18n_using_next-i18next.md +53 -26
- package/blog/uk/i18n_using_next-intl.md +30 -12
- package/blog/vi/i18n_using_next-i18next.md +40 -13
- package/blog/vi/i18n_using_next-intl.md +18 -0
- package/blog/zh/i18n_using_next-i18next.md +31 -31
- package/blog/zh/i18n_using_next-intl.md +22 -4
- package/dist/cjs/authors2.cjs +1 -1
- package/dist/cjs/generated/docs.entry.cjs +140 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/authors2.mjs +1 -1
- package/dist/esm/generated/docs.entry.mjs +140 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +7 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/agent_skills.md +7 -7
- package/docs/ar/analytics.md +57 -13
- package/docs/ar/benchmark/tanstack.md +6 -0
- package/docs/ar/bundle_optimization.md +2 -2
- package/docs/ar/cli/ci.md +2 -0
- package/docs/ar/cli/doc-review.md +9 -1
- package/docs/ar/cli/fill.md +0 -8
- package/docs/ar/cli/index.md +2 -0
- package/docs/ar/cli/list_projects.md +0 -2
- package/docs/ar/cli/login.md +28 -0
- package/docs/ar/compiler.md +14 -0
- package/docs/ar/configuration.md +19 -17
- package/docs/ar/custom_domains.md +33 -0
- package/docs/ar/custom_url_rewrites.md +9 -5
- package/docs/ar/dictionary/html.md +16 -14
- package/docs/ar/dictionary/markdown.md +7 -3
- package/docs/ar/dictionary/plurial.md +92 -123
- package/docs/ar/dynamic_dictionaries/variants.md +24 -36
- package/docs/ar/formatters.md +0 -128
- package/docs/ar/how_works_intlayer.md +8 -1
- package/docs/ar/interest_of_intlayer.md +17 -1
- package/docs/ar/intlayer_visual_editor.md +12 -0
- package/docs/ar/intlayer_with_adonisjs.md +5 -3
- package/docs/ar/intlayer_with_analog.md +18 -1
- package/docs/ar/intlayer_with_angular_19.md +18 -1
- package/docs/ar/intlayer_with_angular_21.md +18 -1
- package/docs/ar/intlayer_with_astro.md +42 -1
- package/docs/ar/intlayer_with_astro_lit.md +18 -1
- package/docs/ar/intlayer_with_astro_preact.md +24 -1
- package/docs/ar/intlayer_with_astro_react.md +18 -1
- package/docs/ar/intlayer_with_astro_solid.md +18 -1
- package/docs/ar/intlayer_with_astro_svelte.md +18 -1
- package/docs/ar/intlayer_with_astro_vanilla.md +18 -1
- package/docs/ar/intlayer_with_astro_vue.md +18 -1
- package/docs/ar/intlayer_with_create_react_app.md +55 -119
- package/docs/ar/intlayer_with_elysia.md +343 -0
- package/docs/ar/intlayer_with_express.md +11 -3
- package/docs/ar/intlayer_with_fastify.md +5 -3
- package/docs/ar/intlayer_with_hono.md +48 -3
- package/docs/ar/intlayer_with_lynx+react.md +31 -1
- package/docs/ar/intlayer_with_nestjs.md +19 -3
- package/docs/ar/intlayer_with_next-i18next.md +11 -0
- package/docs/ar/intlayer_with_nextjs_14.md +234 -37
- package/docs/ar/intlayer_with_nextjs_15.md +219 -1
- package/docs/ar/intlayer_with_nextjs_16.md +171 -45
- package/docs/ar/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +160 -5
- package/docs/ar/intlayer_with_nextjs_page_router.md +16 -29
- package/docs/ar/intlayer_with_nuxt.md +18 -1
- package/docs/ar/intlayer_with_react_native+expo.md +1 -1
- package/docs/ar/intlayer_with_react_router_v7.md +48 -1
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +192 -53
- package/docs/ar/intlayer_with_solid_start.md +13 -1
- package/docs/ar/intlayer_with_storybook.md +18 -1
- package/docs/ar/intlayer_with_svelte_kit.md +26 -17
- package/docs/ar/intlayer_with_tanstack+solid.md +250 -7
- package/docs/ar/intlayer_with_tanstack.md +284 -50
- package/docs/ar/intlayer_with_vanilla.md +18 -1
- package/docs/ar/intlayer_with_vite+lit.md +22 -1
- package/docs/ar/intlayer_with_vite+preact.md +52 -17
- package/docs/ar/intlayer_with_vite+react.md +22 -13
- package/docs/ar/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/ar/intlayer_with_vite+solid.md +29 -49
- package/docs/ar/intlayer_with_vite+svelte.md +43 -13
- package/docs/ar/intlayer_with_vite+vanilla.md +20 -1
- package/docs/ar/intlayer_with_vite+vue.md +33 -15
- package/docs/ar/introduction.md +1 -1
- package/docs/ar/live-sync.md +13 -2
- package/docs/ar/mcp_server.md +34 -21
- package/docs/ar/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ar/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ar/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ar/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ar/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ar/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ar/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ar/packages/intlayer/getDictionary.md +155 -0
- package/docs/ar/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ar/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ar/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ar/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ar/packages/intlayer/getLocaleLang.md +0 -2
- package/docs/ar/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/ar/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/ar/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/ar/packages/intlayer/getTranslation.md +2 -0
- package/docs/ar/packages/next-intlayer/t.md +20 -0
- package/docs/ar/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ar/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ar/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ar/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ar/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ar/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ar/packages/vite-intlayer/intlayerPrune.md +10 -2
- package/docs/ar/per_locale_file.md +13 -13
- package/docs/ar/readme.md +1 -0
- package/docs/ar/releases/v6.md +16 -2
- package/docs/ar/releases/v9.md +2 -0
- package/docs/ar/self_hosting.md +67 -24
- package/docs/bn/bundle_optimization.md +2 -2
- package/docs/bn/configuration.md +12 -9
- package/docs/bn/intlayer_with_fastify.md +5 -3
- package/docs/bn/intlayer_with_hono.md +5 -3
- package/docs/cs/bundle_optimization.md +2 -2
- package/docs/cs/configuration.md +12 -9
- package/docs/cs/intlayer_with_fastify.md +5 -3
- package/docs/cs/intlayer_with_hono.md +5 -3
- package/docs/de/analytics.md +57 -13
- package/docs/de/benchmark/tanstack.md +6 -0
- package/docs/de/bundle_optimization.md +2 -2
- package/docs/de/cli/ci.md +2 -0
- package/docs/de/cli/doc-review.md +9 -1
- package/docs/de/cli/fill.md +0 -8
- package/docs/de/cli/index.md +2 -0
- package/docs/de/cli/init.md +0 -8
- package/docs/de/cli/list_projects.md +0 -2
- package/docs/de/cli/login.md +28 -0
- package/docs/de/compiler.md +14 -0
- package/docs/de/configuration.md +19 -17
- package/docs/de/custom_domains.md +34 -0
- package/docs/de/custom_url_rewrites.md +7 -5
- package/docs/de/dictionary/enumeration.md +0 -183
- package/docs/de/dictionary/html.md +18 -18
- package/docs/de/dictionary/insertion.md +0 -14
- package/docs/de/dictionary/markdown.md +31 -14
- package/docs/de/dictionary/plurial.md +70 -272
- package/docs/de/dynamic_dictionaries/variants.md +24 -0
- package/docs/de/formatters.md +12 -39
- package/docs/de/how_works_intlayer.md +8 -1
- package/docs/de/intlayer_CMS.md +26 -21
- package/docs/de/intlayer_visual_editor.md +12 -0
- package/docs/de/intlayer_with_adonisjs.md +5 -3
- package/docs/de/intlayer_with_analog.md +1 -1
- package/docs/de/intlayer_with_angular_19.md +1 -1
- package/docs/de/intlayer_with_angular_21.md +1 -1
- package/docs/de/intlayer_with_astro.md +25 -1
- package/docs/de/intlayer_with_astro_lit.md +1 -1
- package/docs/de/intlayer_with_astro_preact.md +7 -1
- package/docs/de/intlayer_with_astro_react.md +1 -1
- package/docs/de/intlayer_with_astro_solid.md +1 -1
- package/docs/de/intlayer_with_astro_svelte.md +1 -1
- package/docs/de/intlayer_with_astro_vanilla.md +1 -1
- package/docs/de/intlayer_with_astro_vue.md +1 -1
- package/docs/de/intlayer_with_create_react_app.md +51 -0
- package/docs/de/intlayer_with_elysia.md +343 -0
- package/docs/de/intlayer_with_express.md +7 -3
- package/docs/de/intlayer_with_fastify.md +5 -3
- package/docs/de/intlayer_with_hono.md +5 -3
- package/docs/de/intlayer_with_lynx+react.md +14 -27
- package/docs/de/intlayer_with_nestjs.md +5 -3
- package/docs/de/intlayer_with_next-intl.md +0 -5
- package/docs/de/intlayer_with_nextjs_14.md +240 -10
- package/docs/de/intlayer_with_nextjs_15.md +201 -1
- package/docs/de/intlayer_with_nextjs_16.md +96 -36
- package/docs/de/intlayer_with_nextjs_compiler.md +467 -10
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +126 -5
- package/docs/de/intlayer_with_nextjs_page_router.md +5 -44
- package/docs/de/intlayer_with_nuxt.md +1 -1
- package/docs/de/intlayer_with_react_native+expo.md +1 -1
- package/docs/de/intlayer_with_react_router_v7.md +31 -1
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +103 -13
- package/docs/de/intlayer_with_solid_start.md +13 -1
- package/docs/de/intlayer_with_storybook.md +1 -1
- package/docs/de/intlayer_with_svelte_kit.md +7 -1
- package/docs/de/intlayer_with_tanstack+solid.md +158 -7
- package/docs/de/intlayer_with_tanstack.md +349 -179
- package/docs/de/intlayer_with_vanilla.md +1 -1
- package/docs/de/intlayer_with_vite+lit.md +5 -1
- package/docs/de/intlayer_with_vite+preact.md +9 -5
- package/docs/de/intlayer_with_vite+react.md +5 -3
- package/docs/de/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/de/intlayer_with_vite+solid.md +12 -13
- package/docs/de/intlayer_with_vite+svelte.md +25 -1
- package/docs/de/intlayer_with_vite+vanilla.md +3 -1
- package/docs/de/intlayer_with_vite+vue.md +16 -3
- package/docs/de/introduction.md +1 -1
- package/docs/de/live-sync.md +39 -0
- package/docs/de/mcp_server.md +34 -21
- package/docs/de/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/de/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/de/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/de/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/de/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/de/packages/elysia-intlayer/exports.md +136 -0
- package/docs/de/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/de/packages/intlayer/getDictionary.md +155 -0
- package/docs/de/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/de/packages/intlayer/getEnumeration.md +2 -0
- package/docs/de/packages/intlayer/getIntlayer.md +197 -0
- package/docs/de/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/de/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/de/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/de/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/de/packages/intlayer/getTranslation.md +2 -0
- package/docs/de/packages/next-intlayer/t.md +20 -0
- package/docs/de/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/de/packages/next-intlayer/useLocale.md +2 -0
- package/docs/de/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/de/packages/react-intlayer/useI18n.md +31 -0
- package/docs/de/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/de/packages/solid-intlayer/useRewriteURL.md +0 -2
- package/docs/de/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/de/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/de/per_locale_file.md +13 -13
- package/docs/de/readme.md +3 -2
- package/docs/de/releases/v6.md +33 -33
- package/docs/de/releases/v9.md +2 -0
- package/docs/de/self_hosting.md +68 -24
- package/docs/en/analytics.md +526 -34
- package/docs/en/bundle_optimization.md +2 -2
- package/docs/en/cli/index.md +2 -0
- package/docs/en/cli/login.md +28 -0
- package/docs/en/configuration.md +12 -9
- package/docs/en/custom_domains.md +39 -2
- package/docs/en/dictionary/html.md +16 -16
- package/docs/en/dynamic_dictionaries/variants.md +41 -18
- package/docs/en/formatters.md +5 -2
- package/docs/en/intlayer_with_adonisjs.md +5 -3
- package/docs/en/intlayer_with_elysia.md +339 -0
- package/docs/en/intlayer_with_express.md +5 -3
- package/docs/en/intlayer_with_fastify.md +5 -4
- package/docs/en/intlayer_with_hono.md +5 -3
- package/docs/en/intlayer_with_nestjs.md +5 -3
- package/docs/en/intlayer_with_nextjs_14.md +103 -8
- package/docs/en/intlayer_with_nextjs_15.md +105 -1
- package/docs/en/intlayer_with_nextjs_16.md +105 -1
- package/docs/en/intlayer_with_nextjs_compiler.md +43 -18
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +125 -5
- package/docs/en/intlayer_with_nextjs_page_router.md +4 -28
- package/docs/en/intlayer_with_tanstack+solid.md +157 -6
- package/docs/en/intlayer_with_tanstack.md +159 -7
- package/docs/en/mcp_server.md +34 -19
- package/docs/en/packages/elysia-intlayer/exports.md +134 -0
- package/docs/en/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/en/packages/intlayer/exports.md +19 -14
- package/docs/en/packages/intlayer/getDictionary.md +154 -0
- package/docs/en/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/en/packages/intlayer/getIntlayer.md +196 -0
- package/docs/en/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/en/packages/next-intlayer/exports.md +14 -10
- package/docs/en/packages/next-intlayer/t.md +33 -9
- package/docs/en/packages/next-intlayer/useDictionary.md +5 -2
- package/docs/en/packages/next-intlayer/useIntlayer.md +35 -1
- package/docs/en/packages/react-intlayer/exports.md +14 -11
- package/docs/en/packages/react-intlayer/useI18n.md +35 -1
- package/docs/en/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/en/packages/vite-intlayer/intlayerPrune.md +1 -1
- package/docs/en/readme.md +1 -0
- package/docs/en/self_hosting.md +77 -20
- package/docs/en-GB/analytics.md +28 -5
- package/docs/en-GB/benchmark/tanstack.md +6 -0
- package/docs/en-GB/bundle_optimization.md +2 -2
- package/docs/en-GB/cli/ci.md +2 -0
- package/docs/en-GB/cli/doc-review.md +7 -1
- package/docs/en-GB/cli/fill.md +0 -8
- package/docs/en-GB/cli/index.md +2 -0
- package/docs/en-GB/cli/list_projects.md +0 -2
- package/docs/en-GB/cli/login.md +28 -0
- package/docs/en-GB/compiler.md +14 -0
- package/docs/en-GB/configuration.md +12 -9
- package/docs/en-GB/custom_domains.md +34 -0
- package/docs/en-GB/custom_url_rewrites.md +7 -5
- package/docs/en-GB/dictionary/condition.md +0 -201
- package/docs/en-GB/dictionary/content_file.md +0 -3
- package/docs/en-GB/dictionary/enumeration.md +0 -183
- package/docs/en-GB/dictionary/file.md +0 -166
- package/docs/en-GB/dictionary/gender.md +0 -212
- package/docs/en-GB/dictionary/html.md +17 -15
- package/docs/en-GB/dictionary/insertion.md +0 -4
- package/docs/en-GB/dictionary/markdown.md +7 -3
- package/docs/en-GB/dictionary/plurial.md +68 -271
- package/docs/en-GB/dictionary/translation.md +0 -133
- package/docs/en-GB/dynamic_dictionaries/variants.md +24 -0
- package/docs/en-GB/formatters.md +0 -164
- package/docs/en-GB/how_works_intlayer.md +7 -0
- package/docs/en-GB/interest_of_intlayer.md +1 -1
- package/docs/en-GB/intlayer_visual_editor.md +12 -0
- package/docs/en-GB/intlayer_with_adonisjs.md +5 -3
- package/docs/en-GB/intlayer_with_analog.md +1 -1
- package/docs/en-GB/intlayer_with_angular_19.md +1 -1
- package/docs/en-GB/intlayer_with_angular_21.md +1 -1
- package/docs/en-GB/intlayer_with_astro.md +25 -1
- package/docs/en-GB/intlayer_with_astro_lit.md +1 -1
- package/docs/en-GB/intlayer_with_astro_preact.md +7 -1
- package/docs/en-GB/intlayer_with_astro_react.md +1 -1
- package/docs/en-GB/intlayer_with_astro_solid.md +1 -1
- package/docs/en-GB/intlayer_with_astro_svelte.md +1 -1
- package/docs/en-GB/intlayer_with_astro_vanilla.md +1 -1
- package/docs/en-GB/intlayer_with_astro_vue.md +1 -1
- package/docs/en-GB/intlayer_with_create_react_app.md +10 -78
- package/docs/en-GB/intlayer_with_elysia.md +339 -0
- package/docs/en-GB/intlayer_with_express.md +11 -3
- package/docs/en-GB/intlayer_with_fastify.md +5 -4
- package/docs/en-GB/intlayer_with_hono.md +5 -3
- package/docs/en-GB/intlayer_with_lynx+react.md +9 -54
- package/docs/en-GB/intlayer_with_nestjs.md +5 -3
- package/docs/en-GB/intlayer_with_nextjs_14.md +181 -10
- package/docs/en-GB/intlayer_with_nextjs_15.md +196 -1
- package/docs/en-GB/intlayer_with_nextjs_16.md +226 -1
- package/docs/en-GB/intlayer_with_nextjs_compiler.md +165 -5
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +140 -5
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/en-GB/intlayer_with_nuxt.md +1 -1
- package/docs/en-GB/intlayer_with_react_native+expo.md +1 -1
- package/docs/en-GB/intlayer_with_react_router_v7.md +111 -1
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +261 -64
- package/docs/en-GB/intlayer_with_solid_start.md +13 -1
- package/docs/en-GB/intlayer_with_storybook.md +1 -1
- package/docs/en-GB/intlayer_with_svelte_kit.md +110 -5
- package/docs/en-GB/intlayer_with_tanstack+solid.md +160 -7
- package/docs/en-GB/intlayer_with_tanstack.md +382 -112
- package/docs/en-GB/intlayer_with_vanilla.md +1 -1
- package/docs/en-GB/intlayer_with_vite+lit.md +3 -1
- package/docs/en-GB/intlayer_with_vite+preact.md +104 -5
- package/docs/en-GB/intlayer_with_vite+react.md +110 -1
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/en-GB/intlayer_with_vite+solid.md +81 -18
- package/docs/en-GB/intlayer_with_vite+svelte.md +133 -1
- package/docs/en-GB/intlayer_with_vite+vanilla.md +3 -1
- package/docs/en-GB/intlayer_with_vite+vue.md +169 -24
- package/docs/en-GB/live-sync.md +13 -2
- package/docs/en-GB/mcp_server.md +34 -21
- package/docs/en-GB/packages/elysia-intlayer/exports.md +134 -0
- package/docs/en-GB/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/en-GB/packages/intlayer/getDictionary.md +154 -0
- package/docs/en-GB/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/en-GB/packages/intlayer/getEnumeration.md +2 -0
- package/docs/en-GB/packages/intlayer/getIntlayer.md +196 -0
- package/docs/en-GB/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/en-GB/packages/intlayer/getLocalizedPath.md +45 -4
- package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/en-GB/packages/next-intlayer/t.md +20 -0
- package/docs/en-GB/packages/next-intlayer/useIntlayer.md +31 -4
- package/docs/en-GB/packages/next-intlayer/useLocale.md +2 -0
- package/docs/en-GB/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/en-GB/packages/react-intlayer/useI18n.md +31 -0
- package/docs/en-GB/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/en-GB/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/en-GB/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/en-GB/per_locale_file.md +13 -13
- package/docs/en-GB/readme.md +3 -2
- package/docs/en-GB/releases/v6.md +30 -28
- package/docs/en-GB/self_hosting.md +60 -29
- package/docs/es/agent_skills.md +7 -7
- package/docs/es/analytics.md +57 -13
- package/docs/es/benchmark/tanstack.md +6 -0
- package/docs/es/bundle_optimization.md +2 -2
- package/docs/es/cli/ci.md +2 -0
- package/docs/es/cli/doc-review.md +13 -1
- package/docs/es/cli/fill.md +0 -8
- package/docs/es/cli/index.md +2 -0
- package/docs/es/cli/list_projects.md +0 -2
- package/docs/es/cli/login.md +28 -2
- package/docs/es/compat/next-intl.md +0 -2
- package/docs/es/compiler.md +14 -0
- package/docs/es/component_i18n.md +4 -0
- package/docs/es/configuration.md +19 -17
- package/docs/es/custom_domains.md +34 -0
- package/docs/es/custom_url_rewrites.md +7 -5
- package/docs/es/dictionary/enumeration.md +0 -154
- package/docs/es/dictionary/html.md +16 -16
- package/docs/es/dictionary/markdown.md +7 -3
- package/docs/es/dictionary/plurial.md +72 -275
- package/docs/es/dynamic_dictionaries/variants.md +24 -0
- package/docs/es/formatters.md +24 -113
- package/docs/es/how_works_intlayer.md +5 -0
- package/docs/es/intlayer_CMS.md +16 -8
- package/docs/es/intlayer_visual_editor.md +12 -0
- package/docs/es/intlayer_with_adonisjs.md +5 -3
- package/docs/es/intlayer_with_analog.md +1 -1
- package/docs/es/intlayer_with_angular_19.md +1 -1
- package/docs/es/intlayer_with_angular_21.md +1 -1
- package/docs/es/intlayer_with_astro.md +25 -1
- package/docs/es/intlayer_with_astro_lit.md +1 -1
- package/docs/es/intlayer_with_astro_preact.md +7 -1
- package/docs/es/intlayer_with_astro_react.md +1 -1
- package/docs/es/intlayer_with_astro_solid.md +1 -1
- package/docs/es/intlayer_with_astro_svelte.md +1 -1
- package/docs/es/intlayer_with_astro_vanilla.md +1 -1
- package/docs/es/intlayer_with_astro_vue.md +1 -1
- package/docs/es/intlayer_with_create_react_app.md +55 -26
- package/docs/es/intlayer_with_elysia.md +339 -0
- package/docs/es/intlayer_with_express.md +11 -32
- package/docs/es/intlayer_with_fastify.md +5 -3
- package/docs/es/intlayer_with_hono.md +5 -3
- package/docs/es/intlayer_with_lynx+react.md +14 -1
- package/docs/es/intlayer_with_nestjs.md +19 -3
- package/docs/es/intlayer_with_nextjs_14.md +179 -51
- package/docs/es/intlayer_with_nextjs_15.md +198 -1
- package/docs/es/intlayer_with_nextjs_16.md +130 -67
- package/docs/es/intlayer_with_nextjs_compiler.md +45 -5
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +146 -5
- package/docs/es/intlayer_with_nextjs_page_router.md +16 -29
- package/docs/es/intlayer_with_nuxt.md +1 -1
- package/docs/es/intlayer_with_react_native+expo.md +1 -1
- package/docs/es/intlayer_with_react_router_v7.md +31 -1
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +30 -30
- package/docs/es/intlayer_with_solid_start.md +13 -1
- package/docs/es/intlayer_with_storybook.md +1 -1
- package/docs/es/intlayer_with_svelte_kit.md +7 -1
- package/docs/es/intlayer_with_tanstack+solid.md +158 -7
- package/docs/es/intlayer_with_tanstack.md +337 -193
- package/docs/es/intlayer_with_vanilla.md +1 -1
- package/docs/es/intlayer_with_vite+lit.md +5 -1
- package/docs/es/intlayer_with_vite+preact.md +37 -5
- package/docs/es/intlayer_with_vite+react.md +3 -1
- package/docs/es/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/es/intlayer_with_vite+solid.md +12 -37
- package/docs/es/intlayer_with_vite+svelte.md +3 -1
- package/docs/es/intlayer_with_vite+vanilla.md +3 -1
- package/docs/es/intlayer_with_vite+vue.md +16 -3
- package/docs/es/live-sync.md +13 -4
- package/docs/es/mcp_server.md +34 -19
- package/docs/es/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/es/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/es/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/es/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/es/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/es/packages/elysia-intlayer/exports.md +134 -0
- package/docs/es/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/es/packages/intlayer/getDictionary.md +155 -0
- package/docs/es/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/es/packages/intlayer/getEnumeration.md +2 -0
- package/docs/es/packages/intlayer/getIntlayer.md +197 -0
- package/docs/es/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/es/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/es/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/es/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/es/packages/intlayer/getTranslation.md +2 -0
- package/docs/es/packages/next-intlayer/t.md +20 -0
- package/docs/es/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/es/packages/next-intlayer/useLocale.md +2 -0
- package/docs/es/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/es/packages/react-intlayer/useI18n.md +31 -0
- package/docs/es/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/es/packages/solid-intlayer/useRewriteURL.md +0 -2
- package/docs/es/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/es/packages/vite-intlayer/intlayerPrune.md +10 -2
- package/docs/es/per_locale_file.md +13 -13
- package/docs/es/readme.md +3 -2
- package/docs/es/releases/v6.md +8 -2
- package/docs/es/releases/v9.md +2 -0
- package/docs/es/self_hosting.md +67 -24
- package/docs/fr/CI_CD.md +2 -0
- package/docs/fr/agent_skills.md +7 -7
- package/docs/fr/analytics.md +79 -13
- package/docs/fr/benchmark/tanstack.md +6 -0
- package/docs/fr/bundle_optimization.md +2 -2
- package/docs/fr/cli/ci.md +2 -0
- package/docs/fr/cli/doc-review.md +7 -1
- package/docs/fr/cli/fill.md +0 -8
- package/docs/fr/cli/index.md +2 -0
- package/docs/fr/cli/list_projects.md +0 -2
- package/docs/fr/cli/login.md +28 -0
- package/docs/fr/compiler.md +14 -0
- package/docs/fr/configuration.md +19 -19
- package/docs/fr/custom_domains.md +34 -0
- package/docs/fr/custom_url_rewrites.md +7 -5
- package/docs/fr/dictionary/condition.md +0 -201
- package/docs/fr/dictionary/html.md +17 -17
- package/docs/fr/dictionary/markdown.md +7 -3
- package/docs/fr/dictionary/plurial.md +79 -110
- package/docs/fr/dynamic_dictionaries/variants.md +24 -0
- package/docs/fr/formatters.md +0 -106
- package/docs/fr/how_works_intlayer.md +5 -2
- package/docs/fr/intlayer_CMS.md +26 -21
- package/docs/fr/intlayer_visual_editor.md +12 -0
- package/docs/fr/intlayer_with_adonisjs.md +5 -3
- package/docs/fr/intlayer_with_astro.md +24 -0
- package/docs/fr/intlayer_with_create_react_app.md +55 -0
- package/docs/fr/intlayer_with_elysia.md +339 -0
- package/docs/fr/intlayer_with_express.md +11 -69
- package/docs/fr/intlayer_with_fastify.md +5 -3
- package/docs/fr/intlayer_with_hono.md +5 -3
- package/docs/fr/intlayer_with_lynx+react.md +13 -0
- package/docs/fr/intlayer_with_nestjs.md +19 -3
- package/docs/fr/intlayer_with_nextjs_14.md +237 -9
- package/docs/fr/intlayer_with_nextjs_15.md +179 -8
- package/docs/fr/intlayer_with_nextjs_16.md +125 -29
- package/docs/fr/intlayer_with_nextjs_compiler.md +45 -5
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +143 -4
- package/docs/fr/intlayer_with_nextjs_page_router.md +15 -28
- package/docs/fr/intlayer_with_nuxt.md +29 -0
- package/docs/fr/intlayer_with_react_native+expo.md +1 -1
- package/docs/fr/intlayer_with_react_router_v7.md +31 -0
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +29 -1
- package/docs/fr/intlayer_with_solid_start.md +13 -1
- package/docs/fr/intlayer_with_svelte_kit.md +6 -0
- package/docs/fr/intlayer_with_tanstack+solid.md +157 -8
- package/docs/fr/intlayer_with_tanstack.md +302 -156
- package/docs/fr/intlayer_with_vite+lit.md +4 -0
- package/docs/fr/intlayer_with_vite+preact.md +36 -4
- package/docs/fr/intlayer_with_vite+react.md +2 -0
- package/docs/fr/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/fr/intlayer_with_vite+solid.md +11 -36
- package/docs/fr/intlayer_with_vite+svelte.md +2 -0
- package/docs/fr/intlayer_with_vite+vanilla.md +2 -0
- package/docs/fr/intlayer_with_vite+vue.md +15 -2
- package/docs/fr/live-sync.md +13 -2
- package/docs/fr/mcp_server.md +34 -19
- package/docs/fr/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/fr/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/fr/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/fr/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/fr/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/fr/packages/elysia-intlayer/exports.md +134 -0
- package/docs/fr/packages/elysia-intlayer/intlayer.md +137 -0
- package/docs/fr/packages/intlayer/getDictionary.md +154 -0
- package/docs/fr/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/fr/packages/intlayer/getEnumeration.md +2 -0
- package/docs/fr/packages/intlayer/getIntlayer.md +196 -0
- package/docs/fr/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/fr/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/fr/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/fr/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/fr/packages/intlayer/getTranslation.md +2 -0
- package/docs/fr/packages/next-intlayer/t.md +20 -0
- package/docs/fr/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/fr/packages/next-intlayer/useLocale.md +2 -0
- package/docs/fr/packages/react-intlayer/useI18n.md +31 -0
- package/docs/fr/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/fr/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/fr/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/fr/per_locale_file.md +13 -13
- package/docs/fr/readme.md +3 -2
- package/docs/fr/releases/v6.md +8 -2
- package/docs/fr/releases/v9.md +2 -0
- package/docs/fr/self_hosting.md +67 -24
- package/docs/hi/agent_skills.md +7 -7
- package/docs/hi/analytics.md +28 -5
- package/docs/hi/benchmark/tanstack.md +6 -0
- package/docs/hi/bundle_optimization.md +2 -2
- package/docs/hi/cli/ci.md +2 -0
- package/docs/hi/cli/doc-review.md +10 -2
- package/docs/hi/cli/fill.md +0 -8
- package/docs/hi/cli/index.md +2 -0
- package/docs/hi/cli/list_projects.md +0 -2
- package/docs/hi/cli/login.md +28 -0
- package/docs/hi/compiler.md +14 -0
- package/docs/hi/configuration.md +19 -17
- package/docs/hi/custom_domains.md +33 -0
- package/docs/hi/custom_url_rewrites.md +7 -5
- package/docs/hi/dictionary/content_file.md +0 -2
- package/docs/hi/dictionary/html.md +36 -15
- package/docs/hi/dictionary/insertion.md +0 -14
- package/docs/hi/dictionary/markdown.md +31 -14
- package/docs/hi/dictionary/plurial.md +81 -113
- package/docs/hi/dynamic_dictionaries/variants.md +24 -0
- package/docs/hi/formatters.md +12 -37
- package/docs/hi/how_works_intlayer.md +8 -1
- package/docs/hi/interest_of_intlayer.md +17 -1
- package/docs/hi/intlayer_visual_editor.md +12 -0
- package/docs/hi/intlayer_with_adonisjs.md +5 -3
- package/docs/hi/intlayer_with_analog.md +18 -1
- package/docs/hi/intlayer_with_angular_19.md +21 -1
- package/docs/hi/intlayer_with_angular_21.md +18 -1
- package/docs/hi/intlayer_with_astro.md +44 -1
- package/docs/hi/intlayer_with_astro_lit.md +47 -4
- package/docs/hi/intlayer_with_astro_preact.md +50 -1
- package/docs/hi/intlayer_with_astro_react.md +44 -1
- package/docs/hi/intlayer_with_astro_solid.md +44 -1
- package/docs/hi/intlayer_with_astro_svelte.md +44 -1
- package/docs/hi/intlayer_with_astro_vanilla.md +44 -1
- package/docs/hi/intlayer_with_astro_vue.md +20 -1
- package/docs/hi/intlayer_with_create_react_app.md +53 -418
- package/docs/hi/intlayer_with_elysia.md +343 -0
- package/docs/hi/intlayer_with_express.md +9 -17
- package/docs/hi/intlayer_with_fastify.md +5 -3
- package/docs/hi/intlayer_with_hono.md +44 -3
- package/docs/hi/intlayer_with_lynx+react.md +26 -11
- package/docs/hi/intlayer_with_next-i18next.md +21 -0
- package/docs/hi/intlayer_with_nextjs_14.md +234 -35
- package/docs/hi/intlayer_with_nextjs_15.md +224 -9
- package/docs/hi/intlayer_with_nextjs_16.md +135 -11
- package/docs/hi/intlayer_with_nextjs_compiler.md +49 -5
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +163 -5
- package/docs/hi/intlayer_with_nextjs_page_router.md +29 -36
- package/docs/hi/intlayer_with_nuxt.md +47 -1
- package/docs/hi/intlayer_with_react_native+expo.md +1 -1
- package/docs/hi/intlayer_with_react_router_v7.md +50 -1
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +162 -46
- package/docs/hi/intlayer_with_solid_start.md +13 -1
- package/docs/hi/intlayer_with_storybook.md +18 -1
- package/docs/hi/intlayer_with_svelte_kit.md +26 -1
- package/docs/hi/intlayer_with_tanstack+solid.md +253 -7
- package/docs/hi/intlayer_with_tanstack.md +388 -158
- package/docs/hi/intlayer_with_vanilla.md +18 -1
- package/docs/hi/intlayer_with_vite+lit.md +22 -1
- package/docs/hi/intlayer_with_vite+preact.md +33 -100
- package/docs/hi/intlayer_with_vite+react.md +24 -8
- package/docs/hi/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/hi/intlayer_with_vite+solid.md +31 -26
- package/docs/hi/intlayer_with_vite+svelte.md +80 -1
- package/docs/hi/intlayer_with_vite+vanilla.md +20 -69
- package/docs/hi/intlayer_with_vite+vue.md +30 -10
- package/docs/hi/live-sync.md +39 -0
- package/docs/hi/mcp_server.md +34 -21
- package/docs/hi/packages/elysia-intlayer/exports.md +136 -0
- package/docs/hi/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/hi/packages/intlayer/getDictionary.md +156 -0
- package/docs/hi/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/hi/packages/intlayer/getEnumeration.md +2 -0
- package/docs/hi/packages/intlayer/getIntlayer.md +197 -0
- package/docs/hi/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/hi/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/hi/packages/intlayer/getLocalizedUrl.md +6 -15
- package/docs/hi/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/hi/packages/intlayer/getTranslation.md +2 -0
- package/docs/hi/packages/next-intlayer/t.md +20 -31
- package/docs/hi/packages/next-intlayer/useIntlayer.md +33 -0
- package/docs/hi/packages/next-intlayer/useLocale.md +2 -0
- package/docs/hi/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/hi/packages/react-intlayer/useI18n.md +31 -0
- package/docs/hi/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/hi/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/hi/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/hi/per_locale_file.md +13 -13
- package/docs/hi/readme.md +3 -2
- package/docs/hi/releases/v6.md +16 -2
- package/docs/hi/releases/v9.md +2 -0
- package/docs/hi/self_hosting.md +80 -26
- package/docs/id/agent_skills.md +6 -6
- package/docs/id/analytics.md +28 -5
- package/docs/id/benchmark/tanstack.md +6 -0
- package/docs/id/bundle_optimization.md +2 -2
- package/docs/id/cli/ci.md +2 -0
- package/docs/id/cli/doc-review.md +9 -1
- package/docs/id/cli/fill.md +0 -8
- package/docs/id/cli/index.md +2 -0
- package/docs/id/cli/login.md +28 -0
- package/docs/id/compiler.md +14 -0
- package/docs/id/configuration.md +19 -17
- package/docs/id/custom_domains.md +34 -0
- package/docs/id/custom_url_rewrites.md +7 -5
- package/docs/id/dictionary/content_file.md +0 -29
- package/docs/id/dictionary/file.md +0 -166
- package/docs/id/dictionary/gender.md +0 -212
- package/docs/id/dictionary/html.md +134 -16
- package/docs/id/dictionary/insertion.md +0 -14
- package/docs/id/dictionary/markdown.md +31 -14
- package/docs/id/dictionary/plurial.md +79 -110
- package/docs/id/dynamic_dictionaries/variants.md +24 -0
- package/docs/id/formatters.md +12 -39
- package/docs/id/interest_of_intlayer.md +1 -3
- package/docs/id/intlayer_with_adonisjs.md +5 -3
- package/docs/id/intlayer_with_analog.md +1 -1
- package/docs/id/intlayer_with_angular_19.md +1 -1
- package/docs/id/intlayer_with_angular_21.md +1 -1
- package/docs/id/intlayer_with_astro.md +25 -1
- package/docs/id/intlayer_with_astro_lit.md +1 -1
- package/docs/id/intlayer_with_astro_preact.md +7 -1
- package/docs/id/intlayer_with_astro_react.md +1 -1
- package/docs/id/intlayer_with_astro_solid.md +1 -1
- package/docs/id/intlayer_with_astro_svelte.md +1 -1
- package/docs/id/intlayer_with_astro_vanilla.md +1 -1
- package/docs/id/intlayer_with_astro_vue.md +1 -1
- package/docs/id/intlayer_with_create_react_app.md +43 -0
- package/docs/id/intlayer_with_elysia.md +343 -0
- package/docs/id/intlayer_with_express.md +5 -3
- package/docs/id/intlayer_with_fastify.md +5 -3
- package/docs/id/intlayer_with_hono.md +44 -3
- package/docs/id/intlayer_with_lynx+react.md +1 -1
- package/docs/id/intlayer_with_nestjs.md +5 -3
- package/docs/id/intlayer_with_nextjs_14.md +127 -8
- package/docs/id/intlayer_with_nextjs_15.md +104 -1
- package/docs/id/intlayer_with_nextjs_16.md +122 -3
- package/docs/id/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +142 -5
- package/docs/id/intlayer_with_nextjs_page_router.md +32 -25
- package/docs/id/intlayer_with_nuxt.md +1 -1
- package/docs/id/intlayer_with_react_native+expo.md +1 -1
- package/docs/id/intlayer_with_react_router_v7.md +31 -1
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +146 -51
- package/docs/id/intlayer_with_solid_start.md +13 -1
- package/docs/id/intlayer_with_storybook.md +1 -1
- package/docs/id/intlayer_with_svelte_kit.md +7 -1
- package/docs/id/intlayer_with_tanstack+solid.md +233 -7
- package/docs/id/intlayer_with_tanstack.md +371 -146
- package/docs/id/intlayer_with_vanilla.md +1 -1
- package/docs/id/intlayer_with_vite+lit.md +5 -1
- package/docs/id/intlayer_with_vite+preact.md +35 -5
- package/docs/id/intlayer_with_vite+react.md +5 -1
- package/docs/id/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/id/intlayer_with_vite+solid.md +12 -28
- package/docs/id/intlayer_with_vite+svelte.md +28 -1
- package/docs/id/intlayer_with_vite+vanilla.md +3 -1
- package/docs/id/intlayer_with_vite+vue.md +14 -3
- package/docs/id/introduction.md +1 -1
- package/docs/id/mcp_server.md +34 -21
- package/docs/id/packages/elysia-intlayer/exports.md +136 -0
- package/docs/id/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/id/packages/intlayer/getDictionary.md +155 -0
- package/docs/id/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/id/packages/intlayer/getEnumeration.md +2 -0
- package/docs/id/packages/intlayer/getIntlayer.md +197 -0
- package/docs/id/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/id/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/id/packages/intlayer/getLocalizedUrl.md +11 -32
- package/docs/id/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/id/packages/intlayer/getTranslation.md +2 -0
- package/docs/id/packages/next-intlayer/t.md +20 -0
- package/docs/id/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/id/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/id/packages/react-intlayer/useI18n.md +31 -0
- package/docs/id/packages/react-intlayer/useIntlayer.md +0 -44
- package/docs/id/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/id/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/id/per_locale_file.md +13 -13
- package/docs/id/readme.md +3 -2
- package/docs/id/self_hosting.md +62 -31
- package/docs/it/agent_skills.md +6 -6
- package/docs/it/analytics.md +28 -5
- package/docs/it/benchmark/tanstack.md +6 -0
- package/docs/it/bundle_optimization.md +2 -2
- package/docs/it/cli/ci.md +2 -0
- package/docs/it/cli/doc-review.md +9 -1
- package/docs/it/cli/fill.md +0 -8
- package/docs/it/cli/index.md +2 -0
- package/docs/it/cli/list_projects.md +0 -2
- package/docs/it/cli/login.md +28 -0
- package/docs/it/cli/watch.md +0 -2
- package/docs/it/compiler.md +14 -0
- package/docs/it/configuration.md +19 -17
- package/docs/it/custom_domains.md +34 -0
- package/docs/it/custom_url_rewrites.md +7 -5
- package/docs/it/dictionary/enumeration.md +30 -0
- package/docs/it/dictionary/file.md +0 -166
- package/docs/it/dictionary/html.md +18 -18
- package/docs/it/dictionary/markdown.md +7 -3
- package/docs/it/dictionary/plurial.md +70 -273
- package/docs/it/dynamic_dictionaries/variants.md +24 -0
- package/docs/it/formatters.md +24 -113
- package/docs/it/how_works_intlayer.md +8 -1
- package/docs/it/intlayer_CMS.md +26 -21
- package/docs/it/intlayer_visual_editor.md +12 -0
- package/docs/it/intlayer_with_adonisjs.md +5 -3
- package/docs/it/intlayer_with_analog.md +1 -1
- package/docs/it/intlayer_with_angular_19.md +1 -1
- package/docs/it/intlayer_with_angular_21.md +1 -1
- package/docs/it/intlayer_with_astro.md +25 -1
- package/docs/it/intlayer_with_astro_lit.md +1 -1
- package/docs/it/intlayer_with_astro_preact.md +7 -1
- package/docs/it/intlayer_with_astro_react.md +1 -1
- package/docs/it/intlayer_with_astro_solid.md +1 -1
- package/docs/it/intlayer_with_astro_svelte.md +1 -1
- package/docs/it/intlayer_with_astro_vanilla.md +1 -1
- package/docs/it/intlayer_with_astro_vue.md +1 -1
- package/docs/it/intlayer_with_create_react_app.md +57 -38
- package/docs/it/intlayer_with_elysia.md +343 -0
- package/docs/it/intlayer_with_express.md +9 -3
- package/docs/it/intlayer_with_fastify.md +5 -3
- package/docs/it/intlayer_with_hono.md +44 -3
- package/docs/it/intlayer_with_lynx+react.md +14 -10
- package/docs/it/intlayer_with_nestjs.md +5 -3
- package/docs/it/intlayer_with_nextjs_14.md +240 -10
- package/docs/it/intlayer_with_nextjs_15.md +197 -21
- package/docs/it/intlayer_with_nextjs_16.md +107 -3
- package/docs/it/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +141 -5
- package/docs/it/intlayer_with_nextjs_page_router.md +7 -29
- package/docs/it/intlayer_with_nuxt.md +1 -1
- package/docs/it/intlayer_with_react_native+expo.md +1 -1
- package/docs/it/intlayer_with_react_router_v7.md +31 -1
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +32 -2
- package/docs/it/intlayer_with_solid_start.md +13 -1
- package/docs/it/intlayer_with_storybook.md +1 -1
- package/docs/it/intlayer_with_svelte_kit.md +7 -1
- package/docs/it/intlayer_with_tanstack+solid.md +158 -7
- package/docs/it/intlayer_with_tanstack.md +322 -172
- package/docs/it/intlayer_with_vanilla.md +1 -1
- package/docs/it/intlayer_with_vite+lit.md +5 -1
- package/docs/it/intlayer_with_vite+preact.md +37 -5
- package/docs/it/intlayer_with_vite+react.md +5 -6
- package/docs/it/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/it/intlayer_with_vite+solid.md +12 -32
- package/docs/it/intlayer_with_vite+svelte.md +28 -1
- package/docs/it/intlayer_with_vite+vanilla.md +3 -1
- package/docs/it/intlayer_with_vite+vue.md +22 -3
- package/docs/it/introduction.md +1 -1
- package/docs/it/live-sync.md +13 -2
- package/docs/it/mcp_server.md +34 -21
- package/docs/it/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/it/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/it/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/it/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/it/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/it/packages/elysia-intlayer/exports.md +136 -0
- package/docs/it/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/it/packages/intlayer/getDictionary.md +154 -0
- package/docs/it/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/it/packages/intlayer/getEnumeration.md +2 -0
- package/docs/it/packages/intlayer/getIntlayer.md +197 -0
- package/docs/it/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/it/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/it/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/it/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/it/packages/intlayer/getTranslation.md +2 -0
- package/docs/it/packages/next-intlayer/t.md +20 -31
- package/docs/it/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/it/packages/next-intlayer/useLocale.md +2 -0
- package/docs/it/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/it/packages/react-intlayer/useI18n.md +31 -0
- package/docs/it/packages/react-intlayer/useIntlayer.md +0 -44
- package/docs/it/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/it/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/it/per_locale_file.md +13 -13
- package/docs/it/readme.md +3 -2
- package/docs/it/releases/v6.md +16 -2
- package/docs/it/releases/v8.md +2 -4
- package/docs/it/releases/v9.md +2 -0
- package/docs/it/self_hosting.md +61 -30
- package/docs/ja/agent_skills.md +6 -6
- package/docs/ja/analytics.md +57 -13
- package/docs/ja/benchmark/tanstack.md +6 -0
- package/docs/ja/bundle_optimization.md +2 -2
- package/docs/ja/cli/build.md +0 -14
- package/docs/ja/cli/ci.md +2 -0
- package/docs/ja/cli/doc-review.md +8 -0
- package/docs/ja/cli/fill.md +0 -8
- package/docs/ja/cli/index.md +2 -0
- package/docs/ja/cli/list_projects.md +0 -2
- package/docs/ja/cli/login.md +28 -0
- package/docs/ja/cli/push.md +0 -15
- package/docs/ja/compiler.md +14 -0
- package/docs/ja/configuration.md +19 -17
- package/docs/ja/custom_domains.md +32 -0
- package/docs/ja/custom_url_rewrites.md +7 -5
- package/docs/ja/dictionary/content_file.md +0 -13
- package/docs/ja/dictionary/html.md +19 -17
- package/docs/ja/dictionary/plurial.md +81 -115
- package/docs/ja/dynamic_dictionaries/variants.md +24 -0
- package/docs/ja/formatters.md +0 -164
- package/docs/ja/how_works_intlayer.md +7 -0
- package/docs/ja/interest_of_intlayer.md +19 -1
- package/docs/ja/intlayer_visual_editor.md +13 -1
- package/docs/ja/intlayer_with_adonisjs.md +5 -3
- package/docs/ja/intlayer_with_analog.md +20 -1
- package/docs/ja/intlayer_with_angular_19.md +18 -1
- package/docs/ja/intlayer_with_angular_21.md +18 -1
- package/docs/ja/intlayer_with_astro.md +42 -1
- package/docs/ja/intlayer_with_astro_lit.md +18 -1
- package/docs/ja/intlayer_with_astro_preact.md +18 -1
- package/docs/ja/intlayer_with_astro_react.md +18 -1
- package/docs/ja/intlayer_with_astro_solid.md +18 -1
- package/docs/ja/intlayer_with_astro_svelte.md +18 -1
- package/docs/ja/intlayer_with_astro_vanilla.md +18 -1
- package/docs/ja/intlayer_with_astro_vue.md +18 -1
- package/docs/ja/intlayer_with_create_react_app.md +55 -272
- package/docs/ja/intlayer_with_elysia.md +343 -0
- package/docs/ja/intlayer_with_express.md +11 -3
- package/docs/ja/intlayer_with_fastify.md +5 -3
- package/docs/ja/intlayer_with_hono.md +44 -3
- package/docs/ja/intlayer_with_lynx+react.md +28 -1
- package/docs/ja/intlayer_with_nestjs.md +19 -3
- package/docs/ja/intlayer_with_nextjs_14.md +199 -91
- package/docs/ja/intlayer_with_nextjs_15.md +218 -1
- package/docs/ja/intlayer_with_nextjs_16.md +124 -3
- package/docs/ja/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +170 -7
- package/docs/ja/intlayer_with_nextjs_page_router.md +3 -25
- package/docs/ja/intlayer_with_nuxt.md +18 -1
- package/docs/ja/intlayer_with_react_native+expo.md +1 -1
- package/docs/ja/intlayer_with_react_router_v7.md +148 -28
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +47 -2
- package/docs/ja/intlayer_with_solid_start.md +13 -1
- package/docs/ja/intlayer_with_storybook.md +18 -1
- package/docs/ja/intlayer_with_svelte_kit.md +528 -13
- package/docs/ja/intlayer_with_tanstack+solid.md +175 -9
- package/docs/ja/intlayer_with_tanstack.md +402 -216
- package/docs/ja/intlayer_with_vanilla.md +18 -1
- package/docs/ja/intlayer_with_vite+lit.md +22 -1
- package/docs/ja/intlayer_with_vite+preact.md +18 -5
- package/docs/ja/intlayer_with_vite+react.md +523 -1
- package/docs/ja/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/ja/intlayer_with_vite+solid.md +29 -43
- package/docs/ja/intlayer_with_vite+svelte.md +55 -13
- package/docs/ja/intlayer_with_vite+vanilla.md +20 -1
- package/docs/ja/intlayer_with_vite+vue.md +33 -6
- package/docs/ja/introduction.md +1 -1
- package/docs/ja/mcp_server.md +34 -19
- package/docs/ja/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ja/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ja/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ja/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ja/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ja/packages/astro-intlayer/exports.md +0 -4
- package/docs/ja/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ja/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ja/packages/intlayer/getDictionary.md +155 -0
- package/docs/ja/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ja/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ja/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ja/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ja/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/ja/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/ja/packages/intlayer/getMultilingualUrls.md +14 -50
- package/docs/ja/packages/intlayer/getPrefix.md +0 -2
- package/docs/ja/packages/intlayer/getTranslation.md +2 -0
- package/docs/ja/packages/next-intlayer/t.md +20 -0
- package/docs/ja/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ja/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ja/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ja/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ja/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ja/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ja/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/ja/per_locale_file.md +13 -13
- package/docs/ja/readme.md +3 -2
- package/docs/ja/releases/v6.md +16 -2
- package/docs/ja/self_hosting.md +67 -23
- package/docs/ko/agent_skills.md +7 -7
- package/docs/ko/analytics.md +57 -13
- package/docs/ko/benchmark/tanstack.md +6 -0
- package/docs/ko/bundle_optimization.md +2 -2
- package/docs/ko/cli/ci.md +2 -0
- package/docs/ko/cli/doc-review.md +8 -0
- package/docs/ko/cli/fill.md +0 -8
- package/docs/ko/cli/index.md +2 -0
- package/docs/ko/cli/login.md +28 -0
- package/docs/ko/cli/push.md +0 -15
- package/docs/ko/compat/next-i18next.md +2 -0
- package/docs/ko/compiler.md +14 -0
- package/docs/ko/configuration.md +19 -17
- package/docs/ko/custom_domains.md +34 -0
- package/docs/ko/custom_url_rewrites.md +7 -5
- package/docs/ko/dictionary/html.md +3 -1
- package/docs/ko/dictionary/markdown.md +7 -3
- package/docs/ko/dictionary/plurial.md +79 -111
- package/docs/ko/dynamic_dictionaries/variants.md +24 -0
- package/docs/ko/formatters.md +0 -184
- package/docs/ko/how_works_intlayer.md +7 -0
- package/docs/ko/intlayer_visual_editor.md +12 -0
- package/docs/ko/intlayer_with_adonisjs.md +5 -3
- package/docs/ko/intlayer_with_analog.md +3 -1
- package/docs/ko/intlayer_with_angular_19.md +1 -1
- package/docs/ko/intlayer_with_angular_21.md +1 -1
- package/docs/ko/intlayer_with_astro.md +109 -67
- package/docs/ko/intlayer_with_astro_lit.md +114 -70
- package/docs/ko/intlayer_with_astro_preact.md +111 -67
- package/docs/ko/intlayer_with_astro_react.md +107 -63
- package/docs/ko/intlayer_with_astro_solid.md +107 -63
- package/docs/ko/intlayer_with_astro_svelte.md +109 -65
- package/docs/ko/intlayer_with_astro_vanilla.md +108 -64
- package/docs/ko/intlayer_with_astro_vue.md +84 -64
- package/docs/ko/intlayer_with_create_react_app.md +53 -2
- package/docs/ko/intlayer_with_elysia.md +343 -0
- package/docs/ko/intlayer_with_express.md +11 -3
- package/docs/ko/intlayer_with_fastify.md +5 -3
- package/docs/ko/intlayer_with_hono.md +44 -3
- package/docs/ko/intlayer_with_lynx+react.md +52 -1
- package/docs/ko/intlayer_with_nestjs.md +19 -3
- package/docs/ko/intlayer_with_nextjs_14.md +200 -51
- package/docs/ko/intlayer_with_nextjs_15.md +157 -3
- package/docs/ko/intlayer_with_nextjs_16.md +108 -1
- package/docs/ko/intlayer_with_nextjs_compiler.md +374 -40
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +153 -11
- package/docs/ko/intlayer_with_nextjs_page_router.md +14 -80
- package/docs/ko/intlayer_with_nuxt.md +30 -30
- package/docs/ko/intlayer_with_react_native+expo.md +3 -3
- package/docs/ko/intlayer_with_react_router_v7.md +139 -107
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +276 -52
- package/docs/ko/intlayer_with_solid_start.md +13 -1
- package/docs/ko/intlayer_with_storybook.md +1 -5
- package/docs/ko/intlayer_with_svelte_kit.md +39 -33
- package/docs/ko/intlayer_with_tanstack+solid.md +160 -9
- package/docs/ko/intlayer_with_tanstack.md +380 -183
- package/docs/ko/intlayer_with_vanilla.md +1 -3
- package/docs/ko/intlayer_with_vite+lit.md +5 -1
- package/docs/ko/intlayer_with_vite+preact.md +37 -5
- package/docs/ko/intlayer_with_vite+react.md +417 -2
- package/docs/ko/intlayer_with_vite+react_compiler.md +2 -2
- package/docs/ko/intlayer_with_vite+solid.md +82 -9
- package/docs/ko/intlayer_with_vite+svelte.md +133 -100
- package/docs/ko/intlayer_with_vite+vanilla.md +3 -3
- package/docs/ko/intlayer_with_vite+vue.md +16 -1
- package/docs/ko/introduction.md +1 -1
- package/docs/ko/live-sync.md +0 -2
- package/docs/ko/mcp_server.md +34 -21
- package/docs/ko/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ko/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ko/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ko/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ko/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ko/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ko/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ko/packages/express-intlayer/t.md +1 -69
- package/docs/ko/packages/intlayer/getDictionary.md +155 -0
- package/docs/ko/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ko/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ko/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ko/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ko/packages/intlayer/getLocaleLang.md +0 -2
- package/docs/ko/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/ko/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/ko/packages/intlayer/getMultilingualUrls.md +14 -35
- package/docs/ko/packages/intlayer/getPrefix.md +0 -2
- package/docs/ko/packages/intlayer/getTranslation.md +2 -0
- package/docs/ko/packages/next-intlayer/t.md +20 -31
- package/docs/ko/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ko/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ko/packages/next-intlayer/usePathname.md +0 -4
- package/docs/ko/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ko/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ko/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ko/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ko/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/ko/per_locale_file.md +13 -13
- package/docs/ko/readme.md +3 -2
- package/docs/ko/releases/v6.md +16 -2
- package/docs/ko/releases/v8.md +2 -4
- package/docs/ko/self_hosting.md +61 -30
- package/docs/nl/bundle_optimization.md +2 -2
- package/docs/nl/configuration.md +12 -9
- package/docs/nl/intlayer_with_fastify.md +5 -3
- package/docs/nl/intlayer_with_hono.md +5 -3
- package/docs/pl/agent_skills.md +5 -5
- package/docs/pl/analytics.md +28 -5
- package/docs/pl/benchmark/tanstack.md +6 -0
- package/docs/pl/bundle_optimization.md +2 -2
- package/docs/pl/cli/ci.md +2 -0
- package/docs/pl/cli/doc-review.md +9 -1
- package/docs/pl/cli/fill.md +0 -8
- package/docs/pl/cli/index.md +2 -0
- package/docs/pl/cli/list_projects.md +0 -2
- package/docs/pl/cli/login.md +28 -0
- package/docs/pl/cli/watch.md +0 -2
- package/docs/pl/compiler.md +16 -0
- package/docs/pl/configuration.md +19 -17
- package/docs/pl/custom_domains.md +31 -0
- package/docs/pl/custom_url_rewrites.md +7 -5
- package/docs/pl/dictionary/file.md +0 -166
- package/docs/pl/dictionary/gender.md +0 -2
- package/docs/pl/dictionary/html.md +18 -18
- package/docs/pl/dictionary/insertion.md +0 -14
- package/docs/pl/dictionary/markdown.md +31 -14
- package/docs/pl/dictionary/plurial.md +87 -119
- package/docs/pl/dynamic_dictionaries/variants.md +24 -0
- package/docs/pl/formatters.md +12 -39
- package/docs/pl/intlayer_with_adonisjs.md +5 -3
- package/docs/pl/intlayer_with_analog.md +18 -1
- package/docs/pl/intlayer_with_angular_19.md +18 -1
- package/docs/pl/intlayer_with_angular_21.md +18 -1
- package/docs/pl/intlayer_with_astro.md +114 -1
- package/docs/pl/intlayer_with_astro_lit.md +18 -1
- package/docs/pl/intlayer_with_astro_preact.md +24 -1
- package/docs/pl/intlayer_with_astro_react.md +18 -1
- package/docs/pl/intlayer_with_astro_solid.md +18 -1
- package/docs/pl/intlayer_with_astro_svelte.md +18 -1
- package/docs/pl/intlayer_with_astro_vanilla.md +18 -1
- package/docs/pl/intlayer_with_astro_vue.md +18 -1
- package/docs/pl/intlayer_with_create_react_app.md +43 -0
- package/docs/pl/intlayer_with_elysia.md +343 -0
- package/docs/pl/intlayer_with_express.md +5 -3
- package/docs/pl/intlayer_with_fastify.md +5 -3
- package/docs/pl/intlayer_with_hono.md +44 -3
- package/docs/pl/intlayer_with_lynx+react.md +18 -1
- package/docs/pl/intlayer_with_nextjs_14.md +144 -12
- package/docs/pl/intlayer_with_nextjs_15.md +118 -5
- package/docs/pl/intlayer_with_nextjs_16.md +123 -1
- package/docs/pl/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +159 -5
- package/docs/pl/intlayer_with_nextjs_page_router.md +92 -37
- package/docs/pl/intlayer_with_nuxt.md +18 -1
- package/docs/pl/intlayer_with_react_native+expo.md +1 -1
- package/docs/pl/intlayer_with_react_router_v7.md +48 -3
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +31 -27
- package/docs/pl/intlayer_with_solid_start.md +13 -1
- package/docs/pl/intlayer_with_storybook.md +18 -1
- package/docs/pl/intlayer_with_svelte_kit.md +24 -1
- package/docs/pl/intlayer_with_tanstack+solid.md +250 -7
- package/docs/pl/intlayer_with_tanstack.md +416 -152
- package/docs/pl/intlayer_with_vanilla.md +18 -1
- package/docs/pl/intlayer_with_vite+lit.md +22 -1
- package/docs/pl/intlayer_with_vite+preact.md +52 -1
- package/docs/pl/intlayer_with_vite+react.md +22 -1
- package/docs/pl/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/pl/intlayer_with_vite+solid.md +29 -28
- package/docs/pl/intlayer_with_vite+svelte.md +43 -1
- package/docs/pl/intlayer_with_vite+vanilla.md +20 -1
- package/docs/pl/intlayer_with_vite+vue.md +24 -53
- package/docs/pl/introduction.md +1 -1
- package/docs/pl/mcp_server.md +34 -21
- package/docs/pl/migration_from_i18next_to_intlayer.md +100 -1
- package/docs/pl/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/pl/migration_from_next-intl_to_intlayer.md +1 -3
- package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/pl/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/pl/migration_from_vue-i18n_to_intlayer.md +124 -1
- package/docs/pl/packages/elysia-intlayer/exports.md +136 -0
- package/docs/pl/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/pl/packages/intlayer/getDictionary.md +154 -0
- package/docs/pl/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/pl/packages/intlayer/getEnumeration.md +2 -0
- package/docs/pl/packages/intlayer/getIntlayer.md +197 -0
- package/docs/pl/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/pl/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/pl/packages/intlayer/getLocalizedUrl.md +11 -25
- package/docs/pl/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/pl/packages/intlayer/getTranslation.md +2 -0
- package/docs/pl/packages/next-intlayer/t.md +20 -0
- package/docs/pl/packages/next-intlayer/useIntlayer.md +6 -0
- package/docs/pl/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/pl/packages/react-intlayer/useI18n.md +9 -0
- package/docs/pl/packages/react-intlayer/useIntlayer.md +0 -41
- package/docs/pl/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/pl/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/pl/per_locale_file.md +13 -13
- package/docs/pl/readme.md +3 -2
- package/docs/pl/releases/v9.md +2 -0
- package/docs/pl/self_hosting.md +61 -30
- package/docs/pt/agent_skills.md +6 -6
- package/docs/pt/analytics.md +28 -5
- package/docs/pt/benchmark/tanstack.md +6 -0
- package/docs/pt/bundle_optimization.md +2 -2
- package/docs/pt/cli/ci.md +2 -0
- package/docs/pt/cli/doc-review.md +9 -1
- package/docs/pt/cli/fill.md +0 -8
- package/docs/pt/cli/index.md +2 -0
- package/docs/pt/cli/list_projects.md +0 -6
- package/docs/pt/cli/login.md +28 -2
- package/docs/pt/cli/watch.md +0 -2
- package/docs/pt/compiler.md +16 -0
- package/docs/pt/configuration.md +19 -17
- package/docs/pt/custom_domains.md +34 -0
- package/docs/pt/custom_url_rewrites.md +7 -5
- package/docs/pt/dictionary/html.md +20 -18
- package/docs/pt/dictionary/insertion.md +0 -14
- package/docs/pt/dictionary/markdown.md +31 -14
- package/docs/pt/dictionary/plurial.md +70 -273
- package/docs/pt/dynamic_dictionaries/variants.md +24 -0
- package/docs/pt/formatters.md +24 -137
- package/docs/pt/how_works_intlayer.md +5 -0
- package/docs/pt/intlayer_CMS.md +26 -21
- package/docs/pt/intlayer_visual_editor.md +12 -2
- package/docs/pt/intlayer_with_adonisjs.md +5 -3
- package/docs/pt/intlayer_with_analog.md +1 -1
- package/docs/pt/intlayer_with_angular_19.md +1 -1
- package/docs/pt/intlayer_with_angular_21.md +1 -1
- package/docs/pt/intlayer_with_astro.md +97 -1
- package/docs/pt/intlayer_with_astro_lit.md +1 -9
- package/docs/pt/intlayer_with_astro_preact.md +7 -1
- package/docs/pt/intlayer_with_astro_react.md +1 -1
- package/docs/pt/intlayer_with_astro_solid.md +1 -1
- package/docs/pt/intlayer_with_astro_svelte.md +1 -1
- package/docs/pt/intlayer_with_astro_vanilla.md +1 -1
- package/docs/pt/intlayer_with_astro_vue.md +1 -1
- package/docs/pt/intlayer_with_create_react_app.md +55 -35
- package/docs/pt/intlayer_with_elysia.md +344 -0
- package/docs/pt/intlayer_with_express.md +11 -3
- package/docs/pt/intlayer_with_fastify.md +5 -3
- package/docs/pt/intlayer_with_hono.md +44 -3
- package/docs/pt/intlayer_with_lynx+react.md +14 -10
- package/docs/pt/intlayer_with_nestjs.md +19 -3
- package/docs/pt/intlayer_with_nextjs_14.md +238 -8
- package/docs/pt/intlayer_with_nextjs_15.md +201 -1
- package/docs/pt/intlayer_with_nextjs_16.md +106 -1
- package/docs/pt/intlayer_with_nextjs_compiler.md +45 -5
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +142 -5
- package/docs/pt/intlayer_with_nextjs_page_router.md +5 -29
- package/docs/pt/intlayer_with_nuxt.md +1 -1
- package/docs/pt/intlayer_with_react_native+expo.md +1 -1
- package/docs/pt/intlayer_with_react_router_v7.md +38 -31
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +32 -4
- package/docs/pt/intlayer_with_solid_start.md +13 -1
- package/docs/pt/intlayer_with_storybook.md +1 -1
- package/docs/pt/intlayer_with_svelte_kit.md +7 -1
- package/docs/pt/intlayer_with_tanstack+solid.md +158 -7
- package/docs/pt/intlayer_with_tanstack.md +333 -189
- package/docs/pt/intlayer_with_vanilla.md +1 -1
- package/docs/pt/intlayer_with_vite+lit.md +5 -1
- package/docs/pt/intlayer_with_vite+preact.md +35 -1
- package/docs/pt/intlayer_with_vite+react.md +3 -1
- package/docs/pt/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/pt/intlayer_with_vite+solid.md +12 -37
- package/docs/pt/intlayer_with_vite+svelte.md +5 -1
- package/docs/pt/intlayer_with_vite+vanilla.md +3 -1
- package/docs/pt/intlayer_with_vite+vue.md +25 -53
- package/docs/pt/live-sync.md +13 -2
- package/docs/pt/mcp_server.md +34 -21
- package/docs/pt/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/pt/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/pt/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/pt/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/pt/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/pt/packages/elysia-intlayer/exports.md +136 -0
- package/docs/pt/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/pt/packages/intlayer/getDictionary.md +155 -0
- package/docs/pt/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/pt/packages/intlayer/getEnumeration.md +2 -0
- package/docs/pt/packages/intlayer/getIntlayer.md +197 -0
- package/docs/pt/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/pt/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/pt/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/pt/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/pt/packages/intlayer/getTranslation.md +2 -0
- package/docs/pt/packages/next-intlayer/t.md +20 -31
- package/docs/pt/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/pt/packages/next-intlayer/useLocale.md +2 -0
- package/docs/pt/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/pt/packages/react-intlayer/useI18n.md +31 -0
- package/docs/pt/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/pt/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/pt/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/pt/per_locale_file.md +13 -13
- package/docs/pt/readme.md +3 -2
- package/docs/pt/releases/v6.md +16 -2
- package/docs/pt/releases/v9.md +2 -0
- package/docs/pt/self_hosting.md +62 -31
- package/docs/ru/agent_skills.md +7 -7
- package/docs/ru/analytics.md +57 -13
- package/docs/ru/benchmark/tanstack.md +6 -0
- package/docs/ru/bundle_optimization.md +2 -2
- package/docs/ru/cli/ci.md +2 -0
- package/docs/ru/cli/doc-review.md +7 -1
- package/docs/ru/cli/fill.md +0 -8
- package/docs/ru/cli/index.md +2 -0
- package/docs/ru/cli/list_projects.md +0 -2
- package/docs/ru/cli/login.md +28 -0
- package/docs/ru/cli/watch.md +0 -2
- package/docs/ru/compiler.md +14 -0
- package/docs/ru/configuration.md +19 -17
- package/docs/ru/custom_domains.md +34 -0
- package/docs/ru/custom_url_rewrites.md +7 -5
- package/docs/ru/dictionary/condition.md +0 -163
- package/docs/ru/dictionary/enumeration.md +0 -183
- package/docs/ru/dictionary/file.md +0 -166
- package/docs/ru/dictionary/html.md +16 -14
- package/docs/ru/dictionary/markdown.md +10 -3
- package/docs/ru/dictionary/plurial.md +74 -276
- package/docs/ru/dictionary/translation.md +0 -133
- package/docs/ru/dynamic_dictionaries/variants.md +24 -0
- package/docs/ru/formatters.md +0 -158
- package/docs/ru/how_works_intlayer.md +8 -1
- package/docs/ru/intlayer_visual_editor.md +12 -0
- package/docs/ru/intlayer_with_adonisjs.md +5 -3
- package/docs/ru/intlayer_with_analog.md +1 -1
- package/docs/ru/intlayer_with_angular_19.md +1 -1
- package/docs/ru/intlayer_with_angular_21.md +1 -1
- package/docs/ru/intlayer_with_astro.md +25 -1
- package/docs/ru/intlayer_with_astro_lit.md +28 -4
- package/docs/ru/intlayer_with_astro_preact.md +25 -1
- package/docs/ru/intlayer_with_astro_react.md +25 -1
- package/docs/ru/intlayer_with_astro_solid.md +25 -1
- package/docs/ru/intlayer_with_astro_svelte.md +25 -1
- package/docs/ru/intlayer_with_astro_vanilla.md +25 -1
- package/docs/ru/intlayer_with_astro_vue.md +1 -1
- package/docs/ru/intlayer_with_create_react_app.md +55 -32
- package/docs/ru/intlayer_with_elysia.md +343 -0
- package/docs/ru/intlayer_with_express.md +7 -91
- package/docs/ru/intlayer_with_fastify.md +5 -3
- package/docs/ru/intlayer_with_hono.md +48 -3
- package/docs/ru/intlayer_with_lynx+react.md +14 -1
- package/docs/ru/intlayer_with_nestjs.md +19 -3
- package/docs/ru/intlayer_with_nextjs_14.md +244 -37
- package/docs/ru/intlayer_with_nextjs_15.md +181 -5
- package/docs/ru/intlayer_with_nextjs_16.md +106 -1
- package/docs/ru/intlayer_with_nextjs_compiler.md +47 -5
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +150 -5
- package/docs/ru/intlayer_with_nextjs_page_router.md +12 -85
- package/docs/ru/intlayer_with_nuxt.md +1 -1
- package/docs/ru/intlayer_with_react_native+expo.md +1 -1
- package/docs/ru/intlayer_with_react_router_v7.md +31 -1
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +32 -4
- package/docs/ru/intlayer_with_solid_start.md +13 -1
- package/docs/ru/intlayer_with_storybook.md +1 -1
- package/docs/ru/intlayer_with_svelte_kit.md +7 -1
- package/docs/ru/intlayer_with_tanstack+solid.md +160 -9
- package/docs/ru/intlayer_with_tanstack.md +343 -171
- package/docs/ru/intlayer_with_vanilla.md +1 -1
- package/docs/ru/intlayer_with_vite+lit.md +5 -1
- package/docs/ru/intlayer_with_vite+preact.md +35 -5
- package/docs/ru/intlayer_with_vite+react.md +3 -1
- package/docs/ru/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/ru/intlayer_with_vite+solid.md +12 -28
- package/docs/ru/intlayer_with_vite+svelte.md +30 -1
- package/docs/ru/intlayer_with_vite+vanilla.md +3 -1
- package/docs/ru/intlayer_with_vite+vue.md +11 -3
- package/docs/ru/introduction.md +1 -1
- package/docs/ru/mcp_server.md +34 -21
- package/docs/ru/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/ru/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/ru/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/ru/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/ru/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/ru/packages/elysia-intlayer/exports.md +136 -0
- package/docs/ru/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/ru/packages/intlayer/getDictionary.md +155 -0
- package/docs/ru/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/ru/packages/intlayer/getEnumeration.md +2 -0
- package/docs/ru/packages/intlayer/getIntlayer.md +197 -0
- package/docs/ru/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/ru/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/ru/packages/intlayer/getLocalizedUrl.md +6 -30
- package/docs/ru/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/ru/packages/intlayer/getTranslation.md +2 -0
- package/docs/ru/packages/next-intlayer/t.md +20 -31
- package/docs/ru/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/ru/packages/next-intlayer/useLocale.md +2 -0
- package/docs/ru/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/ru/packages/react-intlayer/useI18n.md +31 -0
- package/docs/ru/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/ru/packages/react-intlayer/useLocale.md +0 -50
- package/docs/ru/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ru/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/ru/per_locale_file.md +14 -13
- package/docs/ru/readme.md +3 -2
- package/docs/ru/releases/v6.md +16 -5
- package/docs/ru/releases/v9.md +2 -0
- package/docs/ru/self_hosting.md +61 -30
- package/docs/tr/agent_skills.md +6 -6
- package/docs/tr/analytics.md +28 -5
- package/docs/tr/benchmark/tanstack.md +6 -0
- package/docs/tr/bundle_optimization.md +2 -2
- package/docs/tr/cli/ci.md +2 -0
- package/docs/tr/cli/doc-review.md +7 -1
- package/docs/tr/cli/fill.md +0 -8
- package/docs/tr/cli/index.md +2 -0
- package/docs/tr/cli/list_projects.md +0 -6
- package/docs/tr/cli/login.md +28 -0
- package/docs/tr/cli/watch.md +0 -2
- package/docs/tr/compiler.md +14 -0
- package/docs/tr/configuration.md +19 -17
- package/docs/tr/custom_domains.md +28 -0
- package/docs/tr/custom_url_rewrites.md +7 -5
- package/docs/tr/dictionary/html.md +35 -14
- package/docs/tr/dictionary/markdown.md +31 -14
- package/docs/tr/dictionary/plurial.md +83 -115
- package/docs/tr/dynamic_dictionaries/variants.md +24 -0
- package/docs/tr/formatters.md +0 -145
- package/docs/tr/intlayer_visual_editor.md +12 -0
- package/docs/tr/intlayer_with_adonisjs.md +5 -3
- package/docs/tr/intlayer_with_analog.md +3 -1
- package/docs/tr/intlayer_with_angular_19.md +1 -1
- package/docs/tr/intlayer_with_angular_21.md +1 -1
- package/docs/tr/intlayer_with_astro.md +108 -1
- package/docs/tr/intlayer_with_astro_lit.md +9 -9
- package/docs/tr/intlayer_with_astro_preact.md +15 -9
- package/docs/tr/intlayer_with_astro_react.md +9 -9
- package/docs/tr/intlayer_with_astro_solid.md +9 -9
- package/docs/tr/intlayer_with_astro_svelte.md +9 -9
- package/docs/tr/intlayer_with_astro_vanilla.md +9 -9
- package/docs/tr/intlayer_with_astro_vue.md +1 -1
- package/docs/tr/intlayer_with_create_react_app.md +55 -0
- package/docs/tr/intlayer_with_elysia.md +343 -0
- package/docs/tr/intlayer_with_express.md +5 -3
- package/docs/tr/intlayer_with_fastify.md +5 -3
- package/docs/tr/intlayer_with_hono.md +44 -3
- package/docs/tr/intlayer_with_lynx+react.md +9 -1
- package/docs/tr/intlayer_with_nestjs.md +19 -3
- package/docs/tr/intlayer_with_nextjs_14.md +362 -5
- package/docs/tr/intlayer_with_nextjs_15.md +202 -1
- package/docs/tr/intlayer_with_nextjs_16.md +106 -1
- package/docs/tr/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +124 -14
- package/docs/tr/intlayer_with_nextjs_page_router.md +5 -29
- package/docs/tr/intlayer_with_nuxt.md +1 -1
- package/docs/tr/intlayer_with_react_native+expo.md +1 -1
- package/docs/tr/intlayer_with_react_router_v7.md +31 -1
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +32 -4
- package/docs/tr/intlayer_with_solid_start.md +13 -1
- package/docs/tr/intlayer_with_storybook.md +1 -1
- package/docs/tr/intlayer_with_svelte_kit.md +7 -1
- package/docs/tr/intlayer_with_tanstack+solid.md +233 -7
- package/docs/tr/intlayer_with_tanstack.md +352 -158
- package/docs/tr/intlayer_with_vanilla.md +1 -1
- package/docs/tr/intlayer_with_vite+lit.md +5 -1
- package/docs/tr/intlayer_with_vite+preact.md +35 -5
- package/docs/tr/intlayer_with_vite+react.md +5 -1
- package/docs/tr/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/tr/intlayer_with_vite+solid.md +12 -28
- package/docs/tr/intlayer_with_vite+svelte.md +30 -1
- package/docs/tr/intlayer_with_vite+vanilla.md +3 -1
- package/docs/tr/intlayer_with_vite+vue.md +16 -43
- package/docs/tr/introduction.md +1 -1
- package/docs/tr/live-sync.md +13 -2
- package/docs/tr/mcp_server.md +34 -21
- package/docs/tr/migration_from_i18next_to_intlayer.md +1 -1
- package/docs/tr/migration_from_next-i18next_to_intlayer.md +1 -1
- package/docs/tr/migration_from_next-intl_to_intlayer.md +1 -1
- package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/tr/migration_from_react-i18next_to_intlayer.md +1 -1
- package/docs/tr/migration_from_vue-i18n_to_intlayer.md +1 -1
- package/docs/tr/packages/elysia-intlayer/exports.md +136 -0
- package/docs/tr/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/tr/packages/intlayer/getDictionary.md +155 -0
- package/docs/tr/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/tr/packages/intlayer/getEnumeration.md +2 -0
- package/docs/tr/packages/intlayer/getIntlayer.md +197 -0
- package/docs/tr/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/tr/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/tr/packages/intlayer/getLocalizedUrl.md +11 -0
- package/docs/tr/packages/intlayer/getMultilingualUrls.md +6 -2
- package/docs/tr/packages/intlayer/getTranslation.md +2 -0
- package/docs/tr/packages/next-intlayer/t.md +20 -0
- package/docs/tr/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/tr/packages/next-intlayer/useLocale.md +2 -0
- package/docs/tr/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/tr/packages/react-intlayer/useI18n.md +31 -0
- package/docs/tr/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/tr/packages/solid-intlayer/useRewriteURL.md +0 -2
- package/docs/tr/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/tr/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/tr/per_locale_file.md +13 -13
- package/docs/tr/readme.md +3 -2
- package/docs/tr/releases/v6.md +16 -2
- package/docs/tr/self_hosting.md +68 -25
- package/docs/uk/CI_CD.md +2 -0
- package/docs/uk/agent_skills.md +5 -5
- package/docs/uk/analytics.md +28 -5
- package/docs/uk/benchmark/tanstack.md +6 -0
- package/docs/uk/bundle_optimization.md +2 -2
- package/docs/uk/cli/ci.md +2 -0
- package/docs/uk/cli/doc-review.md +9 -1
- package/docs/uk/cli/fill.md +0 -8
- package/docs/uk/cli/index.md +2 -0
- package/docs/uk/cli/login.md +28 -0
- package/docs/uk/compiler.md +14 -0
- package/docs/uk/configuration.md +19 -17
- package/docs/uk/custom_domains.md +35 -0
- package/docs/uk/custom_url_rewrites.md +7 -5
- package/docs/uk/dictionary/file.md +0 -166
- package/docs/uk/dictionary/gender.md +0 -212
- package/docs/uk/dictionary/html.md +134 -16
- package/docs/uk/dictionary/markdown.md +31 -14
- package/docs/uk/dictionary/plurial.md +85 -116
- package/docs/uk/dynamic_dictionaries/variants.md +24 -0
- package/docs/uk/formatters.md +0 -139
- package/docs/uk/how_works_intlayer.md +2 -0
- package/docs/uk/interest_of_intlayer.md +1 -3
- package/docs/uk/intlayer_with_adonisjs.md +5 -3
- package/docs/uk/intlayer_with_analog.md +3 -1
- package/docs/uk/intlayer_with_angular_19.md +1 -1
- package/docs/uk/intlayer_with_angular_21.md +1 -1
- package/docs/uk/intlayer_with_astro.md +25 -1
- package/docs/uk/intlayer_with_astro_lit.md +1 -1
- package/docs/uk/intlayer_with_astro_preact.md +7 -1
- package/docs/uk/intlayer_with_astro_react.md +1 -1
- package/docs/uk/intlayer_with_astro_solid.md +1 -1
- package/docs/uk/intlayer_with_astro_svelte.md +1 -1
- package/docs/uk/intlayer_with_astro_vanilla.md +1 -1
- package/docs/uk/intlayer_with_astro_vue.md +1 -1
- package/docs/uk/intlayer_with_create_react_app.md +43 -0
- package/docs/uk/intlayer_with_elysia.md +343 -0
- package/docs/uk/intlayer_with_express.md +5 -3
- package/docs/uk/intlayer_with_fastify.md +5 -3
- package/docs/uk/intlayer_with_hono.md +44 -3
- package/docs/uk/intlayer_with_lynx+react.md +1 -3
- package/docs/uk/intlayer_with_nestjs.md +5 -3
- package/docs/uk/intlayer_with_nextjs_14.md +127 -8
- package/docs/uk/intlayer_with_nextjs_15.md +103 -243
- package/docs/uk/intlayer_with_nextjs_16.md +106 -1
- package/docs/uk/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +126 -5
- package/docs/uk/intlayer_with_nextjs_page_router.md +5 -29
- package/docs/uk/intlayer_with_nuxt.md +30 -1
- package/docs/uk/intlayer_with_react_native+expo.md +1 -1
- package/docs/uk/intlayer_with_react_router_v7.md +29 -1
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +32 -4
- package/docs/uk/intlayer_with_solid_start.md +13 -1
- package/docs/uk/intlayer_with_storybook.md +1 -1
- package/docs/uk/intlayer_with_svelte_kit.md +3 -1
- package/docs/uk/intlayer_with_tanstack+solid.md +234 -8
- package/docs/uk/intlayer_with_tanstack.md +382 -160
- package/docs/uk/intlayer_with_vanilla.md +1 -1
- package/docs/uk/intlayer_with_vite+lit.md +5 -1
- package/docs/uk/intlayer_with_vite+preact.md +7 -5
- package/docs/uk/intlayer_with_vite+react.md +5 -1
- package/docs/uk/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/uk/intlayer_with_vite+solid.md +12 -28
- package/docs/uk/intlayer_with_vite+svelte.md +5 -1
- package/docs/uk/intlayer_with_vite+vanilla.md +3 -1
- package/docs/uk/intlayer_with_vite+vue.md +9 -3
- package/docs/uk/introduction.md +1 -1
- package/docs/uk/mcp_server.md +34 -21
- package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
- package/docs/uk/packages/elysia-intlayer/exports.md +136 -0
- package/docs/uk/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/uk/packages/intlayer/getDictionary.md +155 -0
- package/docs/uk/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/uk/packages/intlayer/getEnumeration.md +2 -0
- package/docs/uk/packages/intlayer/getIntlayer.md +197 -0
- package/docs/uk/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/uk/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/uk/packages/intlayer/getTranslation.md +2 -0
- package/docs/uk/packages/next-intlayer/t.md +20 -2
- package/docs/uk/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/uk/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/uk/packages/react-intlayer/useI18n.md +31 -0
- package/docs/uk/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/uk/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/uk/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/uk/readme.md +3 -2
- package/docs/uk/releases/v8.md +2 -4
- package/docs/uk/releases/v9.md +2 -0
- package/docs/uk/self_hosting.md +61 -29
- package/docs/ur/bundle_optimization.md +2 -2
- package/docs/ur/configuration.md +12 -9
- package/docs/ur/intlayer_with_fastify.md +5 -3
- package/docs/ur/intlayer_with_hono.md +5 -3
- package/docs/ur/introduction.md +1 -1
- package/docs/vi/agent_skills.md +6 -6
- package/docs/vi/analytics.md +28 -5
- package/docs/vi/benchmark/tanstack.md +6 -0
- package/docs/vi/bundle_optimization.md +2 -2
- package/docs/vi/cli/ci.md +2 -0
- package/docs/vi/cli/doc-review.md +9 -1
- package/docs/vi/cli/fill.md +0 -8
- package/docs/vi/cli/index.md +2 -0
- package/docs/vi/cli/list_projects.md +0 -2
- package/docs/vi/cli/login.md +28 -2
- package/docs/vi/compiler.md +14 -0
- package/docs/vi/configuration.md +19 -17
- package/docs/vi/custom_domains.md +33 -0
- package/docs/vi/custom_url_rewrites.md +7 -5
- package/docs/vi/dictionary/file.md +0 -166
- package/docs/vi/dictionary/gender.md +0 -2
- package/docs/vi/dictionary/html.md +134 -16
- package/docs/vi/dictionary/insertion.md +0 -14
- package/docs/vi/dictionary/markdown.md +31 -14
- package/docs/vi/dictionary/plurial.md +81 -113
- package/docs/vi/dynamic_dictionaries/variants.md +24 -0
- package/docs/vi/formatters.md +12 -39
- package/docs/vi/interest_of_intlayer.md +1 -3
- package/docs/vi/intlayer_with_adonisjs.md +5 -3
- package/docs/vi/intlayer_with_analog.md +3 -1
- package/docs/vi/intlayer_with_angular_19.md +1 -1
- package/docs/vi/intlayer_with_angular_21.md +1 -1
- package/docs/vi/intlayer_with_astro.md +25 -1
- package/docs/vi/intlayer_with_astro_lit.md +1 -1
- package/docs/vi/intlayer_with_astro_preact.md +7 -1
- package/docs/vi/intlayer_with_astro_react.md +1 -1
- package/docs/vi/intlayer_with_astro_solid.md +1 -1
- package/docs/vi/intlayer_with_astro_svelte.md +1 -1
- package/docs/vi/intlayer_with_astro_vanilla.md +1 -1
- package/docs/vi/intlayer_with_astro_vue.md +1 -1
- package/docs/vi/intlayer_with_create_react_app.md +43 -0
- package/docs/vi/intlayer_with_elysia.md +343 -0
- package/docs/vi/intlayer_with_fastify.md +5 -3
- package/docs/vi/intlayer_with_hono.md +44 -3
- package/docs/vi/intlayer_with_lynx+react.md +1 -1
- package/docs/vi/intlayer_with_nextjs_14.md +127 -8
- package/docs/vi/intlayer_with_nextjs_15.md +138 -148
- package/docs/vi/intlayer_with_nextjs_16.md +106 -1
- package/docs/vi/intlayer_with_nextjs_compiler.md +72 -5
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +162 -5
- package/docs/vi/intlayer_with_nextjs_page_router.md +68 -30
- package/docs/vi/intlayer_with_nuxt.md +30 -1
- package/docs/vi/intlayer_with_react_native+expo.md +1 -1
- package/docs/vi/intlayer_with_react_router_v7.md +31 -1
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +148 -53
- package/docs/vi/intlayer_with_solid_start.md +13 -1
- package/docs/vi/intlayer_with_storybook.md +1 -1
- package/docs/vi/intlayer_with_svelte_kit.md +7 -1
- package/docs/vi/intlayer_with_tanstack+solid.md +233 -7
- package/docs/vi/intlayer_with_tanstack.md +413 -168
- package/docs/vi/intlayer_with_vanilla.md +1 -1
- package/docs/vi/intlayer_with_vite+lit.md +5 -1
- package/docs/vi/intlayer_with_vite+preact.md +29 -5
- package/docs/vi/intlayer_with_vite+react.md +6 -4
- package/docs/vi/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/vi/intlayer_with_vite+solid.md +12 -28
- package/docs/vi/intlayer_with_vite+svelte.md +28 -1
- package/docs/vi/intlayer_with_vite+vanilla.md +3 -1
- package/docs/vi/intlayer_with_vite+vue.md +14 -3
- package/docs/vi/mcp_server.md +34 -21
- package/docs/vi/packages/elysia-intlayer/exports.md +136 -0
- package/docs/vi/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/vi/packages/intlayer/getDictionary.md +155 -0
- package/docs/vi/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/vi/packages/intlayer/getEnumeration.md +2 -0
- package/docs/vi/packages/intlayer/getIntlayer.md +197 -0
- package/docs/vi/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/vi/packages/intlayer/getLocalizedPath.md +46 -5
- package/docs/vi/packages/intlayer/getLocalizedUrl.md +11 -32
- package/docs/vi/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/vi/packages/intlayer/getTranslation.md +2 -0
- package/docs/vi/packages/next-intlayer/t.md +20 -0
- package/docs/vi/packages/next-intlayer/useIntlayer.md +31 -0
- package/docs/vi/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/vi/packages/react-intlayer/useI18n.md +31 -0
- package/docs/vi/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/vi/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/vi/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/vi/per_locale_file.md +13 -13
- package/docs/vi/readme.md +3 -2
- package/docs/vi/self_hosting.md +61 -30
- package/docs/zh/agent_skills.md +7 -7
- package/docs/zh/analytics.md +57 -13
- package/docs/zh/benchmark/tanstack.md +6 -0
- package/docs/zh/bundle_optimization.md +2 -2
- package/docs/zh/cli/ci.md +2 -0
- package/docs/zh/cli/doc-review.md +7 -1
- package/docs/zh/cli/fill.md +0 -8
- package/docs/zh/cli/index.md +2 -0
- package/docs/zh/cli/list_projects.md +0 -2
- package/docs/zh/cli/login.md +28 -0
- package/docs/zh/cli/push.md +0 -15
- package/docs/zh/compiler.md +14 -0
- package/docs/zh/configuration.md +19 -17
- package/docs/zh/custom_domains.md +27 -0
- package/docs/zh/custom_url_rewrites.md +7 -5
- package/docs/zh/dictionary/content_file.md +0 -10
- package/docs/zh/dictionary/html.md +16 -14
- package/docs/zh/dictionary/markdown.md +7 -3
- package/docs/zh/dictionary/plurial.md +79 -110
- package/docs/zh/dynamic_dictionaries/variants.md +24 -0
- package/docs/zh/formatters.md +0 -146
- package/docs/zh/how_works_intlayer.md +5 -0
- package/docs/zh/interest_of_intlayer.md +19 -0
- package/docs/zh/intlayer_visual_editor.md +12 -0
- package/docs/zh/intlayer_with_adonisjs.md +5 -3
- package/docs/zh/intlayer_with_analog.md +20 -1
- package/docs/zh/intlayer_with_angular_19.md +18 -1
- package/docs/zh/intlayer_with_angular_21.md +18 -1
- package/docs/zh/intlayer_with_astro.md +19 -3
- package/docs/zh/intlayer_with_astro_lit.md +31 -9
- package/docs/zh/intlayer_with_astro_preact.md +37 -9
- package/docs/zh/intlayer_with_astro_react.md +31 -9
- package/docs/zh/intlayer_with_astro_solid.md +31 -9
- package/docs/zh/intlayer_with_astro_svelte.md +31 -9
- package/docs/zh/intlayer_with_astro_vanilla.md +31 -9
- package/docs/zh/intlayer_with_astro_vue.md +23 -1
- package/docs/zh/intlayer_with_create_react_app.md +10 -2
- package/docs/zh/intlayer_with_elysia.md +343 -0
- package/docs/zh/intlayer_with_express.md +11 -3
- package/docs/zh/intlayer_with_fastify.md +5 -3
- package/docs/zh/intlayer_with_hono.md +5 -3
- package/docs/zh/intlayer_with_lynx+react.md +66 -1
- package/docs/zh/intlayer_with_nestjs.md +19 -3
- package/docs/zh/intlayer_with_nextjs_14.md +124 -112
- package/docs/zh/intlayer_with_nextjs_15.md +182 -1
- package/docs/zh/intlayer_with_nextjs_16.md +105 -1
- package/docs/zh/intlayer_with_nextjs_compiler.md +51 -9
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +147 -583
- package/docs/zh/intlayer_with_nextjs_page_router.md +15 -28
- package/docs/zh/intlayer_with_nuxt.md +18 -1
- package/docs/zh/intlayer_with_react_native+expo.md +1 -1
- package/docs/zh/intlayer_with_react_router_v7.md +177 -1
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +106 -5
- package/docs/zh/intlayer_with_solid_start.md +13 -1
- package/docs/zh/intlayer_with_storybook.md +18 -1
- package/docs/zh/intlayer_with_svelte_kit.md +18 -1
- package/docs/zh/intlayer_with_tanstack+solid.md +179 -11
- package/docs/zh/intlayer_with_tanstack.md +370 -163
- package/docs/zh/intlayer_with_vanilla.md +18 -1
- package/docs/zh/intlayer_with_vite+lit.md +20 -1
- package/docs/zh/intlayer_with_vite+preact.md +91 -49
- package/docs/zh/intlayer_with_vite+react.md +20 -1
- package/docs/zh/intlayer_with_vite+solid.md +11 -24
- package/docs/zh/intlayer_with_vite+svelte.md +15 -17
- package/docs/zh/intlayer_with_vite+vanilla.md +18 -1
- package/docs/zh/intlayer_with_vite+vue.md +16 -5
- package/docs/zh/live-sync.md +39 -2
- package/docs/zh/mcp_server.md +34 -19
- package/docs/zh/packages/elysia-intlayer/exports.md +136 -0
- package/docs/zh/packages/elysia-intlayer/intlayer.md +139 -0
- package/docs/zh/packages/intlayer/getDictionary.md +155 -0
- package/docs/zh/packages/intlayer/getDictionaryAsync.md +166 -0
- package/docs/zh/packages/intlayer/getEnumeration.md +2 -0
- package/docs/zh/packages/intlayer/getIntlayer.md +197 -0
- package/docs/zh/packages/intlayer/getIntlayerAsync.md +141 -0
- package/docs/zh/packages/intlayer/getLocaleLang.md +0 -2
- package/docs/zh/packages/intlayer/getLocalizedPath.md +45 -5
- package/docs/zh/packages/intlayer/getLocalizedUrl.md +14 -30
- package/docs/zh/packages/intlayer/getMultilingualUrls.md +14 -2
- package/docs/zh/packages/intlayer/getPrefix.md +0 -2
- package/docs/zh/packages/intlayer/getTranslation.md +2 -0
- package/docs/zh/packages/next-intlayer/t.md +20 -0
- package/docs/zh/packages/next-intlayer/useIntlayer.md +32 -0
- package/docs/zh/packages/next-intlayer/useLocale.md +2 -0
- package/docs/zh/packages/react-intlayer/useDictionary.md +0 -2
- package/docs/zh/packages/react-intlayer/useI18n.md +31 -0
- package/docs/zh/packages/react-intlayer/useIntlayer.md +0 -42
- package/docs/zh/packages/vite-intlayer/exports.md +0 -6
- package/docs/zh/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/zh/packages/vite-intlayer/intlayerPrune.md +3 -1
- package/docs/zh/per_locale_file.md +13 -13
- package/docs/zh/releases/v6.md +16 -2
- package/docs/zh/self_hosting.md +61 -29
- package/docs/zh-TW/bundle_optimization.md +2 -2
- package/package.json +7 -7
- package/src/generated/docs.entry.ts +140 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-10-25
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-08-22
|
|
4
4
|
title: "Next.js 15 i18n - Complete guide to translate your app"
|
|
5
5
|
description: "No more i18next. The 2026 guide to building a multilingual (i18n) Next.js 15 app. Translate with AI agents and optimize bundle size, SEO and performances."
|
|
6
6
|
keywords:
|
|
@@ -19,6 +19,9 @@ applicationTemplate: https://github.com/aymericzip/intlayer-next-15-template
|
|
|
19
19
|
applicationShowcase: https://next-15-intlayer-template-xt83.vercel.app
|
|
20
20
|
youtubeVideo: https://www.youtube.com/watch?v=e_PPG7PTqGU
|
|
21
21
|
history:
|
|
22
|
+
- version: 9.4.0
|
|
23
|
+
date: 2026-08-22
|
|
24
|
+
changes: "Update to Next.js >= 9.4.0 architecture"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Update Solid useIntlayer API usage to direct property access"
|
|
@@ -308,6 +311,36 @@ export default RootLayout;
|
|
|
308
311
|
|
|
309
312
|
To implement dynamic routing, provide the path for the locale by adding a new layout in your `[locale]` directory:
|
|
310
313
|
|
|
314
|
+
<Tabs>
|
|
315
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
316
|
+
|
|
317
|
+
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
318
|
+
import { type NextLayoutIntlayer } from "next-intlayer";
|
|
319
|
+
import { IntlayerProvider } from "next-intlayer/server";
|
|
320
|
+
import { Inter } from "next/font/google";
|
|
321
|
+
import { getHTMLTextDir } from "intlayer";
|
|
322
|
+
|
|
323
|
+
const inter = Inter({ subsets: ["latin"] });
|
|
324
|
+
|
|
325
|
+
const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
326
|
+
const { locale } = await params;
|
|
327
|
+
return (
|
|
328
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
329
|
+
<body className={inter.className}>
|
|
330
|
+
<IntlayerProvider locale={locale}>{children}</IntlayerProvider>
|
|
331
|
+
</body>
|
|
332
|
+
</html>
|
|
333
|
+
);
|
|
334
|
+
};
|
|
335
|
+
|
|
336
|
+
export default LocaleLayout;
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
> A single `IntlayerProvider` covers both halves of the tree: it seeds the request-scoped server context read by the server hooks, and mounts the client provider so client components receive the same locale.
|
|
340
|
+
|
|
341
|
+
</Tab>
|
|
342
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
343
|
+
|
|
311
344
|
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
312
345
|
import { type NextLayoutIntlayer, IntlayerClientProvider } from "next-intlayer";
|
|
313
346
|
import { Inter } from "next/font/google";
|
|
@@ -331,6 +364,9 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
|
331
364
|
export default LocaleLayout;
|
|
332
365
|
```
|
|
333
366
|
|
|
367
|
+
</Tab>
|
|
368
|
+
</Tabs>
|
|
369
|
+
|
|
334
370
|
> The `[locale]` path segment is used to define the locale. Example: `/en-US/about` will refer to `en-US` and `/fr/about` to `fr`.
|
|
335
371
|
|
|
336
372
|
> At this stage, you will encounter the error: `Error: Missing <html> and <body> tags in the root layout.`. This is expected because the `/app/page.tsx` file is no longer in use and can be removed. Instead, the `[locale]` path segment will activate the `/app/[locale]/page.tsx` page. Consequently, pages will be accessible via paths like `/en`, `/fr`, `/es` in your browser. To set the default locale as the root page, refer to the `middleware` setup in step 7.
|
|
@@ -405,6 +441,44 @@ export default pageContent;
|
|
|
405
441
|
|
|
406
442
|
Access your content dictionaries throughout your application:
|
|
407
443
|
|
|
444
|
+
<Tabs>
|
|
445
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
446
|
+
|
|
447
|
+
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
448
|
+
import type { FC } from "react";
|
|
449
|
+
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
450
|
+
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
451
|
+
import { type NextPageIntlayer, useIntlayer } from "next-intlayer";
|
|
452
|
+
|
|
453
|
+
const PageContent: FC = () => {
|
|
454
|
+
const content = useIntlayer("page");
|
|
455
|
+
|
|
456
|
+
return (
|
|
457
|
+
<>
|
|
458
|
+
<p>{content.getStarted.main}</p>
|
|
459
|
+
<code>{content.getStarted.pageLink}</code>
|
|
460
|
+
</>
|
|
461
|
+
);
|
|
462
|
+
};
|
|
463
|
+
|
|
464
|
+
const Page: NextPageIntlayer = () => (
|
|
465
|
+
<>
|
|
466
|
+
<PageContent />
|
|
467
|
+
<ServerComponentExample />
|
|
468
|
+
|
|
469
|
+
<ClientComponentExample />
|
|
470
|
+
</>
|
|
471
|
+
);
|
|
472
|
+
|
|
473
|
+
export default Page;
|
|
474
|
+
```
|
|
475
|
+
|
|
476
|
+
- **`IntlayerProvider`** is mounted once, in the locale layout. It provides the locale to both server and client components, so pages no longer wrap themselves.
|
|
477
|
+
- The server hooks resolve the locale in this order: the locale passed at the call site, then the server context seeded by the provider, then the locale carried by the request (the `x-intlayer-locale` header set by the Intlayer proxy, then the locale cookie). That last step is what keeps content correct on a client-side navigation that re-renders only the page segment, where the layout — and with it the provider — does not re-run.
|
|
478
|
+
|
|
479
|
+
</Tab>
|
|
480
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
481
|
+
|
|
408
482
|
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
409
483
|
import type { FC } from "react";
|
|
410
484
|
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
@@ -444,6 +518,9 @@ export default Page;
|
|
|
444
518
|
|
|
445
519
|
> Layout and page cannot share a common server context because the server context system is based on a per-request data store (via [React's cache](https://react.dev/reference/react/cache) mechanism), causing each "context" to be re-created for different segments of the application. Placing the provider in a shared layout would break this isolation, preventing the correct propagation of the server context values to your server components.
|
|
446
520
|
|
|
521
|
+
</Tab>
|
|
522
|
+
</Tabs>
|
|
523
|
+
|
|
447
524
|
```tsx {4,7} fileName="src/components/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
448
525
|
"use client";
|
|
449
526
|
|
|
@@ -462,6 +539,30 @@ export const ClientComponentExample: FC = () => {
|
|
|
462
539
|
};
|
|
463
540
|
```
|
|
464
541
|
|
|
542
|
+
<Tabs>
|
|
543
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
544
|
+
|
|
545
|
+
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
546
|
+
import type { FC } from "react";
|
|
547
|
+
import { useIntlayer } from "next-intlayer";
|
|
548
|
+
|
|
549
|
+
export const ServerComponentExample: FC = () => {
|
|
550
|
+
const content = useIntlayer("server-component-example"); // Create related content declaration
|
|
551
|
+
|
|
552
|
+
return (
|
|
553
|
+
<div>
|
|
554
|
+
<h2>{content.title}</h2>
|
|
555
|
+
<p>{content.content}</p>
|
|
556
|
+
</div>
|
|
557
|
+
);
|
|
558
|
+
};
|
|
559
|
+
```
|
|
560
|
+
|
|
561
|
+
> `next-intlayer` is the isomorphic import path: the `react-server` export condition gives server components the ambient-locale implementation, while client components get the context-backed one. The same call works on both sides.
|
|
562
|
+
|
|
563
|
+
</Tab>
|
|
564
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
565
|
+
|
|
465
566
|
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
466
567
|
import type { FC } from "react";
|
|
467
568
|
import { useIntlayer } from "next-intlayer/server";
|
|
@@ -478,6 +579,9 @@ export const ServerComponentExample: FC = () => {
|
|
|
478
579
|
};
|
|
479
580
|
```
|
|
480
581
|
|
|
582
|
+
</Tab>
|
|
583
|
+
</Tabs>
|
|
584
|
+
|
|
481
585
|
> If you want to use your content in a `string` attribute, such as `alt`, `title`, `href`, `aria-label`, etc., you can use the value of the function, like:
|
|
482
586
|
|
|
483
587
|
> ```html
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-12-06
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-08-22
|
|
4
4
|
title: "Next.js 16 i18n - Complete guide to translate your app"
|
|
5
5
|
description: "No more i18next. The 2026 guide to building a multilingual (i18n) Next.js 16 app. Translate with AI agents and optimize bundle size, SEO and performances."
|
|
6
6
|
keywords:
|
|
@@ -18,6 +18,9 @@ applicationTemplate: https://github.com/aymericzip/intlayer-next-16-template
|
|
|
18
18
|
applicationShowcase: https://intlayer-next-16-template.vercel.app
|
|
19
19
|
youtubeVideo: https://www.youtube.com/watch?v=e_PPG7PTqGU
|
|
20
20
|
history:
|
|
21
|
+
- version: 9.4.0
|
|
22
|
+
date: 2026-08-22
|
|
23
|
+
changes: "Update to Next.js >= 9.4.0 architecture"
|
|
21
24
|
- version: 8.9.0
|
|
22
25
|
date: 2026-05-04
|
|
23
26
|
changes: "Update Solid useIntlayer API usage to direct property access"
|
|
@@ -297,6 +300,36 @@ export default RootLayout;
|
|
|
297
300
|
|
|
298
301
|
To implement dynamic routing, provide the path for the locale by adding a new layout in your `[locale]` directory:
|
|
299
302
|
|
|
303
|
+
<Tabs>
|
|
304
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
305
|
+
|
|
306
|
+
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
307
|
+
import { type NextLayoutIntlayer } from "next-intlayer";
|
|
308
|
+
import { IntlayerProvider } from "next-intlayer/server";
|
|
309
|
+
import { Inter } from "next/font/google";
|
|
310
|
+
import { getHTMLTextDir } from "intlayer";
|
|
311
|
+
|
|
312
|
+
const inter = Inter({ subsets: ["latin"] });
|
|
313
|
+
|
|
314
|
+
const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
315
|
+
const { locale } = await params;
|
|
316
|
+
return (
|
|
317
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
318
|
+
<body className={inter.className}>
|
|
319
|
+
<IntlayerProvider locale={locale}>{children}</IntlayerProvider>
|
|
320
|
+
</body>
|
|
321
|
+
</html>
|
|
322
|
+
);
|
|
323
|
+
};
|
|
324
|
+
|
|
325
|
+
export default LocaleLayout;
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
> A single `IntlayerProvider` covers both halves of the tree: it seeds the request-scoped server context read by the server hooks, and mounts the client provider so client components receive the same locale.
|
|
329
|
+
|
|
330
|
+
</Tab>
|
|
331
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
332
|
+
|
|
300
333
|
```tsx fileName="src/app/[locale]/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
301
334
|
import { type NextLayoutIntlayer, IntlayerClientProvider } from "next-intlayer";
|
|
302
335
|
import { Inter } from "next/font/google";
|
|
@@ -320,6 +353,9 @@ const LocaleLayout: NextLayoutIntlayer = async ({ children, params }) => {
|
|
|
320
353
|
export default LocaleLayout;
|
|
321
354
|
```
|
|
322
355
|
|
|
356
|
+
</Tab>
|
|
357
|
+
</Tabs>
|
|
358
|
+
|
|
323
359
|
> The `[locale]` path segment is used to define the locale. Example: `/en-US/about` will refer to `en-US` and `/fr/about` to `fr`.
|
|
324
360
|
|
|
325
361
|
> At this stage, you will encounter the error: `Error: Missing <html> and <body> tags in the root layout.`. This is expected because the `/app/page.tsx` file is no longer in use and can be removed. Instead, the `[locale]` path segment will activate the `/app/[locale]/page.tsx` page. Consequently, pages will be accessible via paths like `/en`, `/fr`, `/es` in your browser. To set the default locale as the root page, refer to the `proxy` setup in step 7.
|
|
@@ -394,6 +430,44 @@ export default pageContent;
|
|
|
394
430
|
|
|
395
431
|
Access your content dictionaries throughout your application:
|
|
396
432
|
|
|
433
|
+
<Tabs>
|
|
434
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
435
|
+
|
|
436
|
+
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
437
|
+
import type { FC } from "react";
|
|
438
|
+
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
439
|
+
import { ServerComponentExample } from "@components/ServerComponentExample";
|
|
440
|
+
import { type NextPageIntlayer, useIntlayer } from "next-intlayer";
|
|
441
|
+
|
|
442
|
+
const PageContent: FC = () => {
|
|
443
|
+
const content = useIntlayer("page");
|
|
444
|
+
|
|
445
|
+
return (
|
|
446
|
+
<>
|
|
447
|
+
<p>{content.getStarted.main}</p>
|
|
448
|
+
<code>{content.getStarted.pageLink}</code>
|
|
449
|
+
</>
|
|
450
|
+
);
|
|
451
|
+
};
|
|
452
|
+
|
|
453
|
+
const Page: NextPageIntlayer = () => (
|
|
454
|
+
<>
|
|
455
|
+
<PageContent />
|
|
456
|
+
<ServerComponentExample />
|
|
457
|
+
|
|
458
|
+
<ClientComponentExample />
|
|
459
|
+
</>
|
|
460
|
+
);
|
|
461
|
+
|
|
462
|
+
export default Page;
|
|
463
|
+
```
|
|
464
|
+
|
|
465
|
+
- **`IntlayerProvider`** is mounted once, in the locale layout. It provides the locale to both server and client components, so pages no longer wrap themselves.
|
|
466
|
+
- The server hooks resolve the locale in this order: the locale passed at the call site, then the server context seeded by the provider, then the locale carried by the request (the `x-intlayer-locale` header set by the Intlayer proxy, then the locale cookie). That last step is what keeps content correct on a client-side navigation that re-renders only the page segment, where the layout — and with it the provider — does not re-run.
|
|
467
|
+
|
|
468
|
+
</Tab>
|
|
469
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
470
|
+
|
|
397
471
|
```tsx fileName="src/app/[locale]/page.tsx" codeFormat={["typescript", "esm"]}
|
|
398
472
|
import type { FC } from "react";
|
|
399
473
|
import { ClientComponentExample } from "@components/ClientComponentExample";
|
|
@@ -433,6 +507,9 @@ export default Page;
|
|
|
433
507
|
|
|
434
508
|
> Layout and page cannot share a common server context because the server context system is based on a per-request data store (via [React's cache](https://react.dev/reference/react/cache) mechanism), causing each "context" to be re-created for different segments of the application. Placing the provider in a shared layout would break this isolation, preventing the correct propagation of the server context values to your server components.
|
|
435
509
|
|
|
510
|
+
</Tab>
|
|
511
|
+
</Tabs>
|
|
512
|
+
|
|
436
513
|
```tsx {4,7} fileName="src/components/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
437
514
|
"use client";
|
|
438
515
|
|
|
@@ -451,6 +528,30 @@ export const ClientComponentExample: FC = () => {
|
|
|
451
528
|
};
|
|
452
529
|
```
|
|
453
530
|
|
|
531
|
+
<Tabs>
|
|
532
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
533
|
+
|
|
534
|
+
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
535
|
+
import type { FC } from "react";
|
|
536
|
+
import { useIntlayer } from "next-intlayer";
|
|
537
|
+
|
|
538
|
+
export const ServerComponentExample: FC = () => {
|
|
539
|
+
const content = useIntlayer("server-component-example"); // Create related content declaration
|
|
540
|
+
|
|
541
|
+
return (
|
|
542
|
+
<div>
|
|
543
|
+
<h2>{content.title}</h2>
|
|
544
|
+
<p>{content.content}</p>
|
|
545
|
+
</div>
|
|
546
|
+
);
|
|
547
|
+
};
|
|
548
|
+
```
|
|
549
|
+
|
|
550
|
+
> `next-intlayer` is the isomorphic import path: the `react-server` export condition gives server components the ambient-locale implementation, while client components get the context-backed one. The same call works on both sides.
|
|
551
|
+
|
|
552
|
+
</Tab>
|
|
553
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
554
|
+
|
|
454
555
|
```tsx {2} fileName="src/components/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
455
556
|
import type { FC } from "react";
|
|
456
557
|
import { useIntlayer } from "next-intlayer/server";
|
|
@@ -467,6 +568,9 @@ export const ServerComponentExample: FC = () => {
|
|
|
467
568
|
};
|
|
468
569
|
```
|
|
469
570
|
|
|
571
|
+
</Tab>
|
|
572
|
+
</Tabs>
|
|
573
|
+
|
|
470
574
|
> If you want to use your content in a `string` attribute, such as `alt`, `title`, `href`, `aria-label`, etc., you can use the value of the function, like:
|
|
471
575
|
|
|
472
576
|
> ```html
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-01-10
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-08-22
|
|
4
4
|
title: "Next.js i18n - Complete guide to translate your app"
|
|
5
5
|
description: "No more i18next. The 2026 guide to building a multilingual (i18n) Next.js app. Translate with AI agents and optimize bundle size, SEO and performances."
|
|
6
6
|
keywords:
|
|
@@ -20,6 +20,9 @@ slugs:
|
|
|
20
20
|
applicationTemplate: https://github.com/aymericzip/intlayer-next-no-lolale-path-template
|
|
21
21
|
youtubeVideo: https://www.youtube.com/watch?v=e_PPG7PTqGU
|
|
22
22
|
history:
|
|
23
|
+
- version: 9.4.0
|
|
24
|
+
date: 2026-08-22
|
|
25
|
+
changes: "Update to Next.js >= 9.4.0 architecture"
|
|
23
26
|
- version: 8.9.0
|
|
24
27
|
date: 2026-05-04
|
|
25
28
|
changes: "Update Solid useIntlayer API usage to direct property access"
|
|
@@ -248,7 +251,7 @@ Remove everything from `RootLayout` and replace it with the following code:
|
|
|
248
251
|
import type { Metadata } from "next";
|
|
249
252
|
import type { ReactNode } from "react";
|
|
250
253
|
import "./globals.css";
|
|
251
|
-
import {
|
|
254
|
+
import { IntlayerProvider, LocalPromiseParams } from "next-intlayer";
|
|
252
255
|
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
253
256
|
import { getLocale } from "next-intlayer/server";
|
|
254
257
|
export { generateStaticParams } from "next-intlayer";
|
|
@@ -273,9 +276,9 @@ const RootLayout = async ({
|
|
|
273
276
|
|
|
274
277
|
return (
|
|
275
278
|
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
276
|
-
<
|
|
277
|
-
<
|
|
278
|
-
</
|
|
279
|
+
<body>
|
|
280
|
+
<IntlayerProvider defaultLocale={locale}>{children}</IntlayerProvider>
|
|
281
|
+
</body>
|
|
279
282
|
</html>
|
|
280
283
|
);
|
|
281
284
|
};
|
|
@@ -300,8 +303,6 @@ Example of how your page might look:
|
|
|
300
303
|
|
|
301
304
|
```tsx fileName="src/app/page.tsx"
|
|
302
305
|
import type { FC } from "react";
|
|
303
|
-
import { IntlayerServerProvider } from "next-intlayer/server";
|
|
304
|
-
import { getLocale } from "next-intlayer/server";
|
|
305
306
|
|
|
306
307
|
const PageContent: FC = () => {
|
|
307
308
|
return (
|
|
@@ -312,14 +313,8 @@ const PageContent: FC = () => {
|
|
|
312
313
|
);
|
|
313
314
|
};
|
|
314
315
|
|
|
315
|
-
export default
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
return (
|
|
319
|
-
<IntlayerServerProvider locale={locale}>
|
|
320
|
-
<PageContent />
|
|
321
|
-
</IntlayerServerProvider>
|
|
322
|
-
);
|
|
316
|
+
export default function Page() {
|
|
317
|
+
return <PageContent />;
|
|
323
318
|
}
|
|
324
319
|
```
|
|
325
320
|
|
|
@@ -346,6 +341,35 @@ export default async function Page() {
|
|
|
346
341
|
}
|
|
347
342
|
```
|
|
348
343
|
|
|
344
|
+
<Tabs>
|
|
345
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
346
|
+
|
|
347
|
+
```tsx fileName="src/app/page.tsx"
|
|
348
|
+
import { type FC } from "react";
|
|
349
|
+
import { useIntlayer } from "next-intlayer";
|
|
350
|
+
|
|
351
|
+
const PageContent: FC = () => {
|
|
352
|
+
const content = useIntlayer("page-content");
|
|
353
|
+
|
|
354
|
+
return (
|
|
355
|
+
<>
|
|
356
|
+
<p>{content.getStartedByEditing}</p>
|
|
357
|
+
<code>src/app/page.tsx</code>
|
|
358
|
+
</>
|
|
359
|
+
);
|
|
360
|
+
};
|
|
361
|
+
|
|
362
|
+
export default function Page() {
|
|
363
|
+
return <PageContent />;
|
|
364
|
+
}
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
- **`IntlayerProvider`** is mounted once, in the root layout. It provides the locale to both server and client components, so pages no longer wrap themselves.
|
|
368
|
+
- Without a `[locale]` path segment the locale always comes from the request — the `x-intlayer-locale` header set by the Intlayer proxy, then the locale cookie — which the server hooks read on their own when the provider has not run.
|
|
369
|
+
|
|
370
|
+
</Tab>
|
|
371
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
372
|
+
|
|
349
373
|
```tsx fileName="src/app/page.tsx"
|
|
350
374
|
import { type FC } from "react";
|
|
351
375
|
import { IntlayerServerProvider, useIntlayer } from "next-intlayer/server";
|
|
@@ -373,14 +397,15 @@ export default async function Page() {
|
|
|
373
397
|
}
|
|
374
398
|
```
|
|
375
399
|
|
|
376
|
-
</Tab>
|
|
377
|
-
</Tabs>
|
|
378
|
-
|
|
379
400
|
- **`IntlayerClientProvider`** is used to provide the locale to client-side components.
|
|
380
401
|
- **`IntlayerServerProvider`** is used to provide the locale to the server children.
|
|
381
402
|
|
|
382
403
|
> Layout and page cannot share a common server context because the server context system is based on a per-request data store (via [React's cache](https://react.dev/reference/react/cache) mechanism), causing each "context" to be re-created for different segments of the application. Placing the provider in a shared layout would break this isolation, preventing the correct propagation of the server context values to your server components.
|
|
383
404
|
|
|
405
|
+
</Tab>
|
|
406
|
+
|
|
407
|
+
</Tabs>
|
|
408
|
+
|
|
384
409
|
</Step>
|
|
385
410
|
|
|
386
411
|
<Step number={7} title="Fill missing translation" isOptional={true}>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-01-10
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-08-22
|
|
4
4
|
title: "Next.js 16 i18n - Complete guide to translate your app"
|
|
5
5
|
description: "No more i18next. The 2026 guide to building a multilingual (i18n) Next.js 16 app. Translate with AI agents and optimize bundle size, SEO and performances."
|
|
6
6
|
keywords:
|
|
@@ -18,6 +18,9 @@ slugs:
|
|
|
18
18
|
applicationTemplate: https://github.com/aymericzip/intlayer-next-no-lolale-path-template
|
|
19
19
|
youtubeVideo: https://www.youtube.com/watch?v=e_PPG7PTqGU
|
|
20
20
|
history:
|
|
21
|
+
- version: 9.4.0
|
|
22
|
+
date: 2026-08-22
|
|
23
|
+
changes: "Update to Next.js >= 9.4.0 architecture"
|
|
21
24
|
- version: 8.9.0
|
|
22
25
|
date: 2026-05-04
|
|
23
26
|
changes: "Update Solid useIntlayer API usage to direct property access"
|
|
@@ -267,11 +270,57 @@ export default withIntlayer(nextConfig);
|
|
|
267
270
|
|
|
268
271
|
Remove everything from `RootLayout` and replace it with the following code:
|
|
269
272
|
|
|
273
|
+
<Tabs>
|
|
274
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
275
|
+
|
|
276
|
+
```tsx {5} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
277
|
+
import type { Metadata } from "next";
|
|
278
|
+
import type { ReactNode } from "react";
|
|
279
|
+
import "./globals.css";
|
|
280
|
+
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
281
|
+
import { getLocale, IntlayerProvider } from "next-intlayer/server";
|
|
282
|
+
export { generateStaticParams } from "next-intlayer";
|
|
283
|
+
|
|
284
|
+
export const generateMetadata = async (): Promise<Metadata> => {
|
|
285
|
+
const locale = await getLocale();
|
|
286
|
+
const { title, description, keywords } = getIntlayer("metadata", locale);
|
|
287
|
+
|
|
288
|
+
return {
|
|
289
|
+
title,
|
|
290
|
+
description,
|
|
291
|
+
keywords,
|
|
292
|
+
};
|
|
293
|
+
};
|
|
294
|
+
|
|
295
|
+
const RootLayout = async ({
|
|
296
|
+
children,
|
|
297
|
+
}: Readonly<{
|
|
298
|
+
children: ReactNode;
|
|
299
|
+
}>) => {
|
|
300
|
+
const locale = await getLocale();
|
|
301
|
+
|
|
302
|
+
return (
|
|
303
|
+
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
304
|
+
<body>
|
|
305
|
+
<IntlayerProvider locale={locale}>{children}</IntlayerProvider>
|
|
306
|
+
</body>
|
|
307
|
+
</html>
|
|
308
|
+
);
|
|
309
|
+
};
|
|
310
|
+
|
|
311
|
+
export default RootLayout;
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
> A single `IntlayerProvider` covers both halves of the tree: it seeds the request-scoped server context read by the server hooks, and mounts the client provider so client components receive the same locale.
|
|
315
|
+
|
|
316
|
+
</Tab>
|
|
317
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
318
|
+
|
|
270
319
|
```tsx {3} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
271
320
|
import type { Metadata } from "next";
|
|
272
321
|
import type { ReactNode } from "react";
|
|
273
322
|
import "./globals.css";
|
|
274
|
-
import {
|
|
323
|
+
import { IntlayerProvider, LocalPromiseParams } from "next-intlayer";
|
|
275
324
|
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
276
325
|
import { getLocale } from "next-intlayer/server";
|
|
277
326
|
export { generateStaticParams } from "next-intlayer";
|
|
@@ -296,9 +345,9 @@ const RootLayout = async ({
|
|
|
296
345
|
|
|
297
346
|
return (
|
|
298
347
|
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
299
|
-
<
|
|
300
|
-
<
|
|
301
|
-
</
|
|
348
|
+
<body>
|
|
349
|
+
<IntlayerProvider defaultLocale={locale}>{children}</IntlayerProvider>
|
|
350
|
+
</body>
|
|
302
351
|
</html>
|
|
303
352
|
);
|
|
304
353
|
};
|
|
@@ -306,6 +355,9 @@ const RootLayout = async ({
|
|
|
306
355
|
export default RootLayout;
|
|
307
356
|
```
|
|
308
357
|
|
|
358
|
+
</Tab>
|
|
359
|
+
</Tabs>
|
|
360
|
+
|
|
309
361
|
</Step>
|
|
310
362
|
|
|
311
363
|
<Step number={5} title="Declare Your Content">
|
|
@@ -422,6 +474,44 @@ export default pageContent;
|
|
|
422
474
|
|
|
423
475
|
Access your content dictionaries throughout your application:
|
|
424
476
|
|
|
477
|
+
<Tabs>
|
|
478
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
479
|
+
|
|
480
|
+
```tsx fileName="src/app/page.tsx" codeFormat={["typescript", "esm"]}
|
|
481
|
+
import type { FC } from "react";
|
|
482
|
+
import { ClientComponentExample } from "@components/clientComponentExample/ClientComponentExample";
|
|
483
|
+
import { ServerComponentExample } from "@components/serverComponentExample/ServerComponentExample";
|
|
484
|
+
import { useIntlayer } from "next-intlayer";
|
|
485
|
+
import { NextPage } from "next";
|
|
486
|
+
|
|
487
|
+
const PageContent: FC = () => {
|
|
488
|
+
const content = useIntlayer("page");
|
|
489
|
+
|
|
490
|
+
return (
|
|
491
|
+
<>
|
|
492
|
+
<p>{content.getStarted.main}</p>
|
|
493
|
+
<code>{content.getStarted.pageLink}</code>
|
|
494
|
+
</>
|
|
495
|
+
);
|
|
496
|
+
};
|
|
497
|
+
|
|
498
|
+
const Page: NextPage = () => (
|
|
499
|
+
<>
|
|
500
|
+
<PageContent />
|
|
501
|
+
<ServerComponentExample />
|
|
502
|
+
<ClientComponentExample />
|
|
503
|
+
</>
|
|
504
|
+
);
|
|
505
|
+
|
|
506
|
+
export default Page;
|
|
507
|
+
```
|
|
508
|
+
|
|
509
|
+
- **`IntlayerProvider`** is mounted once, in the root layout. It provides the locale to both server and client components, so pages no longer wrap themselves.
|
|
510
|
+
- Without a `[locale]` path segment the locale always comes from the request — the `x-intlayer-locale` header set by the Intlayer proxy, then the locale cookie — which the server hooks read on their own when the provider has not run.
|
|
511
|
+
|
|
512
|
+
</Tab>
|
|
513
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
514
|
+
|
|
425
515
|
```tsx fileName="src/app/page.tsx" codeFormat={["typescript", "esm"]}
|
|
426
516
|
import type { FC } from "react";
|
|
427
517
|
import { ClientComponentExample } from "@components/clientComponentExample/ClientComponentExample";
|
|
@@ -465,6 +555,9 @@ export default Page;
|
|
|
465
555
|
|
|
466
556
|
> Layout and page cannot share a common server context because the server context system is based on a per-request data store (via [React's cache](https://react.dev/reference/react/cache) mechanism), causing each "context" to be re-created for different segments of the application. Placing the provider in a shared layout would break this isolation, preventing the correct propagation of the server context values to your server components.
|
|
467
557
|
|
|
558
|
+
</Tab>
|
|
559
|
+
</Tabs>
|
|
560
|
+
|
|
468
561
|
```tsx {4,7} fileName="src/components/clientComponentExample/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
469
562
|
"use client";
|
|
470
563
|
|
|
@@ -483,6 +576,30 @@ export const ClientComponentExample: FC = () => {
|
|
|
483
576
|
};
|
|
484
577
|
```
|
|
485
578
|
|
|
579
|
+
<Tabs>
|
|
580
|
+
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
581
|
+
|
|
582
|
+
```tsx {2} fileName="src/components/serverComponentExample/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
583
|
+
import type { FC } from "react";
|
|
584
|
+
import { useIntlayer } from "next-intlayer";
|
|
585
|
+
|
|
586
|
+
export const ServerComponentExample: FC = () => {
|
|
587
|
+
const content = useIntlayer("server-component-example"); // Create related content declaration
|
|
588
|
+
|
|
589
|
+
return (
|
|
590
|
+
<div>
|
|
591
|
+
<h2>{content.title}</h2>
|
|
592
|
+
<p>{content.content}</p>
|
|
593
|
+
</div>
|
|
594
|
+
);
|
|
595
|
+
};
|
|
596
|
+
```
|
|
597
|
+
|
|
598
|
+
> `next-intlayer` is the isomorphic import path: the `react-server` export condition gives server components the ambient-locale implementation, while client components get the context-backed one. The same call works on both sides.
|
|
599
|
+
|
|
600
|
+
</Tab>
|
|
601
|
+
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
602
|
+
|
|
486
603
|
```tsx {2} fileName="src/components/serverComponentExample/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
487
604
|
import type { FC } from "react";
|
|
488
605
|
import { useIntlayer } from "next-intlayer/server";
|
|
@@ -499,6 +616,9 @@ export const ServerComponentExample: FC = () => {
|
|
|
499
616
|
};
|
|
500
617
|
```
|
|
501
618
|
|
|
619
|
+
</Tab>
|
|
620
|
+
</Tabs>
|
|
621
|
+
|
|
502
622
|
> If you want to use your content in a `string` attribute, such as `alt`, `title`, `href`, `aria-label`, etc., you can use the value of the function, like:
|
|
503
623
|
|
|
504
624
|
> ```html
|
|
@@ -263,48 +263,24 @@ Implement dynamic routing to serve localized content based on the user's locale.
|
|
|
263
263
|
|
|
264
264
|
Modify your `_app.tsx` to include Intlayer providers.
|
|
265
265
|
|
|
266
|
-
```tsx fileName="src/pages/_app.tsx" codeFormat="typescript"
|
|
266
|
+
```tsx fileName="src/pages/_app.tsx" codeFormat=["typescript", 'esm', 'cjs']
|
|
267
267
|
import type { FC } from "react";
|
|
268
268
|
import type { AppProps } from "next/app";
|
|
269
|
-
import {
|
|
269
|
+
import { IntlayerProvider } from "next-intlayer";
|
|
270
270
|
|
|
271
271
|
const App = FC<AppProps>({ Component, pageProps }) => {
|
|
272
272
|
const { locale } = pageProps;
|
|
273
273
|
|
|
274
274
|
return (
|
|
275
|
-
<
|
|
275
|
+
<IntlayerProvider locale={locale}>
|
|
276
276
|
<Component {...pageProps} />
|
|
277
|
-
</
|
|
277
|
+
</IntlayerProvider>
|
|
278
278
|
);
|
|
279
279
|
}
|
|
280
280
|
|
|
281
281
|
export default MyApp;
|
|
282
282
|
```
|
|
283
283
|
|
|
284
|
-
```jsx fileName="src/pages/_app.mjx" codeFormat="esm"
|
|
285
|
-
import { IntlayerClientProvider } from "next-intlayer";
|
|
286
|
-
|
|
287
|
-
const App = ({ Component, pageProps }) => (
|
|
288
|
-
<IntlayerClientProvider locale={locale}>
|
|
289
|
-
<Component {...pageProps} />
|
|
290
|
-
</IntlayerClientProvider>
|
|
291
|
-
);
|
|
292
|
-
|
|
293
|
-
export default App;
|
|
294
|
-
```
|
|
295
|
-
|
|
296
|
-
```jsx fileName="src/pages/_app.csx" codeFormat="commonjs"
|
|
297
|
-
const { IntlayerClientProvider } = require("next-intlayer");
|
|
298
|
-
|
|
299
|
-
const App = ({ Component, pageProps }) => (
|
|
300
|
-
<IntlayerClientProvider locale={locale}>
|
|
301
|
-
<Component {...pageProps} />
|
|
302
|
-
</IntlayerClientProvider>
|
|
303
|
-
);
|
|
304
|
-
|
|
305
|
-
module.exports = App;
|
|
306
|
-
```
|
|
307
|
-
|
|
308
284
|
3. **Set Up `getStaticPaths` and `getStaticProps`:**
|
|
309
285
|
|
|
310
286
|
In your `[locale]/index.tsx`, define the paths and props to handle different locales.
|