@intlayer/docs 9.0.0-canary.4 → 9.0.0-canary.6
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/blog/ar/intlayer_with_i18next.md +4 -0
- package/blog/ar/intlayer_with_next-i18next.md +0 -11
- package/blog/ar/intlayer_with_next-intl.md +4 -0
- package/blog/ar/next-i18next_vs_next-intl_vs_intlayer.md +35 -28
- package/blog/ar/rag_powered_documentation_assistant.md +13 -0
- package/blog/ar/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
- package/blog/ar/vue-i18n_vs_intlayer.md +8 -0
- package/blog/de/intlayer_with_i18next.md +4 -0
- package/blog/de/intlayer_with_next-i18next.md +0 -11
- package/blog/de/intlayer_with_next-intl.md +4 -0
- package/blog/de/next-i18next_vs_next-intl_vs_intlayer.md +121 -36
- package/blog/de/rag_powered_documentation_assistant.md +0 -193
- package/blog/de/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/de/vue-i18n_vs_intlayer.md +8 -0
- package/blog/en-GB/intlayer_with_i18next.md +4 -0
- package/blog/en-GB/intlayer_with_next-i18next.md +0 -11
- package/blog/en-GB/intlayer_with_next-intl.md +4 -0
- package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
- package/blog/en-GB/react-i18next_vs_react-intl_vs_intlayer.md +14 -0
- package/blog/en-GB/vue-i18n_vs_intlayer.md +16 -0
- package/blog/es/intlayer_with_i18next.md +4 -0
- package/blog/es/intlayer_with_next-i18next.md +0 -11
- package/blog/es/intlayer_with_next-intl.md +4 -0
- package/blog/es/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
- package/blog/es/rag_powered_documentation_assistant.md +13 -0
- package/blog/es/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/es/vue-i18n_vs_intlayer.md +8 -0
- package/blog/fr/i18n_meaning.md +95 -0
- package/blog/fr/intlayer_with_next-i18next.md +0 -11
- package/blog/fr/intlayer_with_next-intl.md +4 -0
- package/blog/fr/intlayer_with_react-i18next.md +0 -8
- package/blog/fr/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/fr/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
- package/blog/fr/rag_powered_documentation_assistant.md +0 -62
- package/blog/fr/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/fr/vue-i18n_vs_intlayer.md +8 -0
- package/blog/hi/intlayer_with_i18next.md +4 -0
- package/blog/hi/intlayer_with_next-i18next.md +0 -11
- package/blog/hi/intlayer_with_next-intl.md +4 -0
- package/blog/hi/next-i18next_vs_next-intl_vs_intlayer.md +1256 -0
- package/blog/hi/rag_powered_documentation_assistant.md +13 -0
- package/blog/hi/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
- package/blog/hi/vue-i18n_vs_intlayer.md +8 -0
- package/blog/id/internationalization_and_SEO.md +0 -91
- package/blog/id/intlayer_with_i18next.md +4 -0
- package/blog/id/intlayer_with_next-i18next.md +0 -11
- package/blog/id/intlayer_with_next-intl.md +4 -0
- package/blog/id/rag_powered_documentation_assistant.md +13 -0
- package/blog/it/intlayer_with_i18next.md +4 -0
- package/blog/it/intlayer_with_next-i18next.md +0 -11
- package/blog/it/intlayer_with_next-intl.md +4 -0
- package/blog/it/next-i18next_vs_next-intl_vs_intlayer.md +121 -36
- package/blog/it/rag_powered_documentation_assistant.md +0 -195
- package/blog/it/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/it/vue-i18n_vs_intlayer.md +8 -0
- package/blog/ja/intlayer_with_i18next.md +4 -0
- package/blog/ja/intlayer_with_next-i18next.md +0 -11
- package/blog/ja/intlayer_with_next-intl.md +4 -0
- package/blog/ja/l10n_platform_alternative/Lokalise.md +10 -0
- package/blog/ja/next-i18next_vs_next-intl_vs_intlayer.md +121 -26
- package/blog/ja/rag_powered_documentation_assistant.md +13 -0
- package/blog/ja/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
- package/blog/ja/vue-i18n_vs_intlayer.md +8 -0
- package/blog/ko/intlayer_with_i18next.md +4 -0
- package/blog/ko/intlayer_with_next-i18next.md +0 -11
- package/blog/ko/intlayer_with_next-intl.md +4 -0
- package/blog/ko/next-i18next_vs_next-intl_vs_intlayer.md +121 -18
- package/blog/ko/rag_powered_documentation_assistant.md +0 -194
- package/blog/ko/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
- package/blog/ko/vue-i18n_vs_intlayer.md +8 -0
- package/blog/ko/what_is_internationalization.md +0 -4
- package/blog/pl/___per-component_vs_centralized_i18n.md +100 -0
- package/blog/pl/internationalization_and_SEO.md +0 -91
- package/blog/pl/intlayer_with_i18next.md +4 -0
- package/blog/pl/intlayer_with_next-i18next.md +0 -11
- package/blog/pl/intlayer_with_next-intl.md +4 -0
- package/blog/pl/l10n_platform_alternative/Lokalise.md +6 -0
- package/blog/pl/rag_powered_documentation_assistant.md +13 -0
- package/blog/pt/internationalization_and_SEO.md +1 -1
- package/blog/pt/intlayer_with_i18next.md +4 -0
- package/blog/pt/intlayer_with_next-i18next.md +0 -11
- package/blog/pt/intlayer_with_next-intl.md +4 -0
- package/blog/pt/intlayer_with_react-intl.md +0 -4
- package/blog/pt/l10n_platform_alternative/crowdin.md +0 -6
- package/blog/pt/next-i18next_vs_next-intl_vs_intlayer.md +121 -28
- package/blog/pt/rag_powered_documentation_assistant.md +0 -195
- package/blog/pt/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/pt/vue-i18n_vs_intlayer.md +8 -0
- package/blog/ru/intlayer_with_i18next.md +4 -0
- package/blog/ru/intlayer_with_next-i18next.md +0 -11
- package/blog/ru/intlayer_with_next-intl.md +4 -0
- package/blog/ru/next-i18next_vs_next-intl_vs_intlayer.md +121 -36
- package/blog/ru/rag_powered_documentation_assistant.md +13 -0
- package/blog/ru/react-i18next_vs_react-intl_vs_intlayer.md +8 -0
- package/blog/ru/vue-i18n_vs_intlayer.md +8 -0
- package/blog/tr/intlayer_with_i18next.md +4 -0
- package/blog/tr/intlayer_with_next-i18next.md +0 -11
- package/blog/tr/intlayer_with_next-intl.md +4 -0
- package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +1189 -0
- package/blog/tr/rag_powered_documentation_assistant.md +0 -38
- package/blog/uk/next-i18next_vs_next-intl_vs_intlayer.md +9 -0
- package/blog/uk/rag_powered_documentation_assistant.md +13 -0
- package/blog/vi/internationalization_and_SEO.md +0 -91
- package/blog/vi/intlayer_with_i18next.md +4 -0
- package/blog/vi/intlayer_with_next-i18next.md +0 -11
- package/blog/vi/intlayer_with_next-intl.md +4 -0
- package/blog/vi/rag_powered_documentation_assistant.md +13 -0
- package/blog/zh/intlayer_with_i18next.md +4 -47
- package/blog/zh/intlayer_with_next-i18next.md +0 -58
- package/blog/zh/intlayer_with_next-intl.md +4 -47
- package/blog/zh/intlayer_with_react-i18next.md +0 -47
- package/blog/zh/intlayer_with_react-intl.md +0 -47
- package/blog/zh/intlayer_with_vue-i18n.md +0 -47
- package/blog/zh/next-i18next_vs_next-intl_vs_intlayer.md +121 -26
- package/blog/zh/nextjs-multilingual-seo-comparison.md +0 -30
- package/blog/zh/rag_powered_documentation_assistant.md +0 -191
- package/blog/zh/react-i18next_vs_react-intl_vs_intlayer.md +6 -0
- package/blog/zh/vue-i18n_vs_intlayer.md +8 -0
- package/docs/ar/CI_CD.md +4 -0
- package/docs/ar/autoFill.md +81 -0
- package/docs/ar/benchmark/solid.md +22 -0
- package/docs/ar/benchmark/svelte.md +22 -0
- package/docs/ar/benchmark/tanstack.md +22 -0
- package/docs/ar/cli/ci.md +22 -0
- package/docs/ar/cli/fill.md +8 -0
- package/docs/ar/compat/i18n-js.md +44 -0
- package/docs/ar/compat/i18next.md +59 -0
- package/docs/ar/compat/index.md +51 -0
- package/docs/ar/compat/lingui.md +44 -0
- package/docs/ar/compat/next-i18next.md +57 -0
- package/docs/ar/compat/next-intl.md +59 -0
- package/docs/ar/compat/next-translate.md +45 -0
- package/docs/ar/compat/ngx-translate.md +45 -0
- package/docs/ar/compat/nuxtjs-i18n.md +46 -0
- package/docs/ar/compat/polyglot.md +45 -0
- package/docs/ar/compat/react-i18next.md +58 -0
- package/docs/ar/compat/react-intl.md +55 -0
- package/docs/ar/compat/svelte-i18n.md +47 -0
- package/docs/ar/compat/transloco.md +45 -0
- package/docs/ar/compat/vue-i18n.md +58 -0
- package/docs/ar/compiler.md +3 -1
- package/docs/ar/configuration.md +19 -17
- package/docs/ar/custom_domains.md +1 -1
- package/docs/ar/custom_url_rewrites.md +1 -1
- package/docs/ar/dictionary/content_file.md +4 -7
- package/docs/ar/dictionary/enumeration.md +0 -187
- package/docs/ar/dictionary/file.md +8 -0
- package/docs/ar/dictionary/nesting.md +39 -0
- package/docs/ar/dictionary/translation.md +0 -61
- package/docs/ar/formatters.md +59 -0
- package/docs/ar/how_works_intlayer.md +4 -0
- package/docs/ar/interest_of_intlayer.md +193 -0
- package/docs/ar/intlayer_CMS.md +6 -0
- package/docs/ar/intlayer_with_astro.md +129 -2
- package/docs/ar/intlayer_with_astro_lit.md +1 -1
- package/docs/ar/intlayer_with_astro_preact.md +1 -1
- package/docs/ar/intlayer_with_astro_react.md +1 -1
- package/docs/ar/intlayer_with_astro_solid.md +1 -1
- package/docs/ar/intlayer_with_astro_svelte.md +1 -1
- package/docs/ar/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ar/intlayer_with_astro_vue.md +1 -1
- package/docs/ar/intlayer_with_create_react_app.md +0 -14
- package/docs/ar/intlayer_with_express.md +0 -21
- package/docs/ar/intlayer_with_nestjs.md +0 -18
- package/docs/ar/intlayer_with_nextjs_14.md +30 -7
- package/docs/ar/intlayer_with_nextjs_15.md +21 -1
- package/docs/ar/intlayer_with_nextjs_16.md +124 -2
- package/docs/ar/intlayer_with_nextjs_compiler.md +1 -1
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/ar/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/ar/intlayer_with_react_native+expo.md +91 -78
- package/docs/ar/intlayer_with_react_router_v7.md +1 -95
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +20 -96
- package/docs/ar/intlayer_with_svelte_kit.md +1 -207
- package/docs/ar/intlayer_with_tanstack+solid.md +3 -1
- package/docs/ar/intlayer_with_tanstack.md +1 -1
- package/docs/ar/intlayer_with_vite+lit.md +1 -1
- package/docs/ar/intlayer_with_vite+preact.md +40 -40
- package/docs/ar/intlayer_with_vite+react.md +1 -1
- package/docs/ar/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/ar/intlayer_with_vite+solid.md +25 -25
- package/docs/ar/intlayer_with_vite+svelte.md +12 -12
- package/docs/ar/intlayer_with_vite+vanilla.md +1 -1
- package/docs/ar/intlayer_with_vite+vue.md +44 -114
- package/docs/ar/mcp_server.md +22 -0
- package/docs/ar/migration_from_i18next_to_intlayer.md +333 -0
- package/docs/ar/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/ar/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/ar/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/ar/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/ar/packages/intlayer/getLocalizedUrl.md +73 -0
- package/docs/ar/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/ar/packages/intlayer/getPathWithoutLocale.md +0 -4
- package/docs/ar/packages/react-intlayer/t.md +0 -13
- package/docs/ar/packages/react-intlayer/useDictionary.md +0 -104
- package/docs/ar/packages/react-intlayer/useI18n.md +0 -4
- package/docs/ar/packages/react-intlayer/useIntlayer.md +0 -55
- package/docs/ar/packages/react-native-intlayer/exports.md +48 -14
- package/docs/ar/releases/v6.md +28 -0
- package/docs/ar/releases/v7.md +128 -0
- package/docs/ar/releases/v9.md +37 -1
- package/docs/ar/roadmap.md +6 -0
- package/docs/de/CI_CD.md +4 -0
- package/docs/de/autoFill.md +81 -0
- package/docs/de/benchmark/solid.md +22 -0
- package/docs/de/benchmark/svelte.md +22 -0
- package/docs/de/benchmark/tanstack.md +22 -0
- package/docs/de/cli/ci.md +22 -0
- package/docs/de/cli/fill.md +8 -0
- package/docs/de/cli/init.md +20 -0
- package/docs/de/compat/i18n-js.md +44 -0
- package/docs/de/compat/i18next.md +59 -0
- package/docs/de/compat/index.md +51 -0
- package/docs/de/compat/lingui.md +44 -0
- package/docs/de/compat/next-i18next.md +57 -0
- package/docs/de/compat/next-intl.md +59 -0
- package/docs/de/compat/next-translate.md +45 -0
- package/docs/de/compat/ngx-translate.md +45 -0
- package/docs/de/compat/nuxtjs-i18n.md +46 -0
- package/docs/de/compat/polyglot.md +45 -0
- package/docs/de/compat/react-i18next.md +58 -0
- package/docs/de/compat/react-intl.md +55 -0
- package/docs/de/compat/svelte-i18n.md +47 -0
- package/docs/de/compat/transloco.md +45 -0
- package/docs/de/compat/vue-i18n.md +58 -0
- package/docs/de/compiler.md +3 -1
- package/docs/de/configuration.md +19 -17
- package/docs/de/custom_domains.md +1 -1
- package/docs/de/custom_url_rewrites.md +1 -1
- package/docs/de/dictionary/content_file.md +4 -0
- package/docs/de/dictionary/enumeration.md +0 -199
- package/docs/de/dictionary/file.md +8 -0
- package/docs/de/dictionary/insertion.md +0 -4
- package/docs/de/dictionary/nesting.md +39 -0
- package/docs/de/dictionary/translation.md +0 -61
- package/docs/de/dynamic_dictionaries/index.md +6 -0
- package/docs/de/formatters.md +130 -0
- package/docs/de/how_works_intlayer.md +4 -0
- package/docs/de/intlayer_CMS.md +6 -0
- package/docs/de/intlayer_with_astro.md +129 -2
- package/docs/de/intlayer_with_astro_lit.md +1 -1
- package/docs/de/intlayer_with_astro_preact.md +1 -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 +15 -0
- package/docs/de/intlayer_with_express.md +0 -23
- package/docs/de/intlayer_with_lynx+react.md +4 -2
- package/docs/de/intlayer_with_nestjs.md +0 -8
- package/docs/de/intlayer_with_nextjs_14.md +28 -7
- package/docs/de/intlayer_with_nextjs_15.md +21 -1
- package/docs/de/intlayer_with_nextjs_16.md +1 -1
- package/docs/de/intlayer_with_nextjs_compiler.md +49 -1
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/de/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/de/intlayer_with_react_native+expo.md +85 -67
- package/docs/de/intlayer_with_react_router_v7.md +1 -95
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +1 -91
- package/docs/de/intlayer_with_svelte_kit.md +1 -207
- package/docs/de/intlayer_with_tanstack+solid.md +3 -1
- package/docs/de/intlayer_with_tanstack.md +1 -1
- package/docs/de/intlayer_with_vite+lit.md +1 -1
- package/docs/de/intlayer_with_vite+preact.md +61 -57
- package/docs/de/intlayer_with_vite+react.md +1 -1
- package/docs/de/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/de/intlayer_with_vite+solid.md +33 -42
- package/docs/de/intlayer_with_vite+svelte.md +27 -29
- package/docs/de/intlayer_with_vite+vanilla.md +1 -1
- package/docs/de/intlayer_with_vite+vue.md +54 -102
- package/docs/de/mcp_server.md +22 -0
- package/docs/de/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/de/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/de/packages/react-intlayer/useDictionary.md +0 -116
- package/docs/de/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/de/packages/react-native-intlayer/exports.md +47 -13
- package/docs/de/releases/v6.md +10 -6
- package/docs/de/releases/v7.md +128 -0
- package/docs/de/releases/v9.md +37 -1
- package/docs/de/roadmap.md +6 -16
- package/docs/en/bundle_optimization.md +8 -3
- package/docs/en/compiler.md +12 -6
- package/docs/en/configuration.md +22 -8
- package/docs/en/custom_domains.md +2 -0
- package/docs/en/custom_url_rewrites.md +2 -0
- package/docs/en/intlayer_with_astro.md +2 -0
- package/docs/en/intlayer_with_astro_lit.md +2 -0
- package/docs/en/intlayer_with_astro_preact.md +2 -0
- package/docs/en/intlayer_with_astro_react.md +2 -0
- package/docs/en/intlayer_with_astro_solid.md +2 -0
- package/docs/en/intlayer_with_astro_svelte.md +2 -0
- package/docs/en/intlayer_with_astro_vanilla.md +2 -0
- package/docs/en/intlayer_with_astro_vue.md +2 -0
- package/docs/en/intlayer_with_nextjs_14.md +2 -0
- package/docs/en/intlayer_with_nextjs_15.md +2 -0
- package/docs/en/intlayer_with_nextjs_16.md +2 -0
- package/docs/en/intlayer_with_nextjs_compiler.md +2 -0
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +2 -0
- package/docs/en/intlayer_with_nextjs_page_router.md +2 -0
- package/docs/en/intlayer_with_react_native+expo.md +22 -18
- package/docs/en/intlayer_with_react_router_v7.md +2 -0
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +2 -0
- package/docs/en/intlayer_with_svelte_kit.md +4 -0
- package/docs/en/intlayer_with_tanstack+solid.md +2 -0
- package/docs/en/intlayer_with_tanstack.md +2 -0
- package/docs/en/intlayer_with_vite+lit.md +2 -0
- package/docs/en/intlayer_with_vite+preact.md +2 -0
- package/docs/en/intlayer_with_vite+react.md +2 -0
- package/docs/en/intlayer_with_vite+react_compiler.md +2 -0
- package/docs/en/intlayer_with_vite+solid.md +2 -0
- package/docs/en/intlayer_with_vite+svelte.md +2 -0
- package/docs/en/intlayer_with_vite+vanilla.md +4 -0
- package/docs/en/intlayer_with_vite+vue.md +2 -0
- package/docs/en/packages/react-native-intlayer/exports.md +47 -13
- package/docs/en/releases/v9.md +38 -1
- package/docs/en-GB/CI_CD.md +4 -0
- package/docs/en-GB/autoFill.md +81 -0
- package/docs/en-GB/benchmark/solid.md +22 -0
- package/docs/en-GB/benchmark/svelte.md +22 -0
- package/docs/en-GB/benchmark/tanstack.md +22 -0
- package/docs/en-GB/cli/ci.md +22 -0
- package/docs/en-GB/cli/fill.md +8 -0
- package/docs/en-GB/cli/login.md +0 -36
- package/docs/en-GB/cli/test.md +0 -36
- package/docs/en-GB/compat/i18n-js.md +44 -0
- package/docs/en-GB/compat/i18next.md +59 -0
- package/docs/en-GB/compat/index.md +51 -0
- package/docs/en-GB/compat/lingui.md +44 -0
- package/docs/en-GB/compat/next-i18next.md +57 -0
- package/docs/en-GB/compat/next-intl.md +59 -0
- package/docs/en-GB/compat/next-translate.md +45 -0
- package/docs/en-GB/compat/ngx-translate.md +45 -0
- package/docs/en-GB/compat/nuxtjs-i18n.md +46 -0
- package/docs/en-GB/compat/polyglot.md +45 -0
- package/docs/en-GB/compat/react-i18next.md +58 -0
- package/docs/en-GB/compat/react-intl.md +55 -0
- package/docs/en-GB/compat/svelte-i18n.md +47 -0
- package/docs/en-GB/compat/transloco.md +45 -0
- package/docs/en-GB/compat/vue-i18n.md +58 -0
- package/docs/en-GB/compiler.md +3 -1
- package/docs/en-GB/configuration.md +4 -1
- package/docs/en-GB/custom_domains.md +1 -1
- package/docs/en-GB/custom_url_rewrites.md +1 -1
- package/docs/en-GB/dictionary/content_file.md +4 -7
- package/docs/en-GB/dictionary/file.md +8 -0
- package/docs/en-GB/dictionary/function_fetching.md +0 -4
- package/docs/en-GB/dictionary/nesting.md +8 -0
- package/docs/en-GB/dictionary/translation.md +0 -61
- package/docs/en-GB/formatters.md +59 -0
- package/docs/en-GB/how_works_intlayer.md +4 -16
- package/docs/en-GB/intlayer_CMS.md +6 -0
- package/docs/en-GB/intlayer_with_astro.md +129 -2
- package/docs/en-GB/intlayer_with_astro_lit.md +1 -1
- package/docs/en-GB/intlayer_with_astro_preact.md +1 -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 +0 -46
- package/docs/en-GB/intlayer_with_express.md +0 -23
- package/docs/en-GB/intlayer_with_nestjs.md +0 -8
- package/docs/en-GB/intlayer_with_nextjs_14.md +13 -5
- package/docs/en-GB/intlayer_with_nextjs_15.md +23 -1
- package/docs/en-GB/intlayer_with_nextjs_16.md +3 -1
- package/docs/en-GB/intlayer_with_nextjs_compiler.md +3 -1
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +3 -1
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/en-GB/intlayer_with_react_native+expo.md +74 -92
- package/docs/en-GB/intlayer_with_react_router_v7.md +1 -1
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +20 -1
- package/docs/en-GB/intlayer_with_svelte_kit.md +1 -207
- package/docs/en-GB/intlayer_with_tanstack+solid.md +3 -1
- package/docs/en-GB/intlayer_with_tanstack.md +1 -1
- package/docs/en-GB/intlayer_with_vite+lit.md +1 -1
- package/docs/en-GB/intlayer_with_vite+preact.md +5 -1
- package/docs/en-GB/intlayer_with_vite+react.md +1 -1
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/en-GB/intlayer_with_vite+solid.md +1 -1
- package/docs/en-GB/intlayer_with_vite+svelte.md +1 -1
- package/docs/en-GB/intlayer_with_vite+vanilla.md +1 -1
- package/docs/en-GB/intlayer_with_vite+vue.md +9 -180
- package/docs/en-GB/migration_from_i18next_to_intlayer.md +333 -0
- package/docs/en-GB/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/en-GB/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/en-GB/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/en-GB/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/en-GB/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +44 -0
- package/docs/en-GB/packages/intlayer/getTranslation.md +0 -16
- package/docs/en-GB/packages/react-intlayer/useDictionary.md +0 -123
- package/docs/en-GB/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/en-GB/packages/react-native-intlayer/exports.md +51 -18
- package/docs/en-GB/plugins/sync-json.md +0 -59
- package/docs/en-GB/releases/v6.md +10 -6
- package/docs/en-GB/releases/v7.md +128 -0
- package/docs/en-GB/releases/v8.md +190 -0
- package/docs/en-GB/releases/v9.md +37 -1
- package/docs/en-GB/roadmap.md +6 -0
- package/docs/es/CI_CD.md +4 -0
- package/docs/es/autoFill.md +81 -0
- package/docs/es/benchmark/solid.md +22 -0
- package/docs/es/benchmark/svelte.md +22 -0
- package/docs/es/benchmark/tanstack.md +22 -0
- package/docs/es/cli/ci.md +22 -0
- package/docs/es/cli/fill.md +8 -0
- package/docs/es/cli/login.md +0 -36
- package/docs/es/compat/i18n-js.md +44 -0
- package/docs/es/compat/i18next.md +59 -0
- package/docs/es/compat/index.md +51 -0
- package/docs/es/compat/lingui.md +44 -0
- package/docs/es/compat/next-i18next.md +57 -0
- package/docs/es/compat/next-intl.md +61 -0
- package/docs/es/compat/next-translate.md +45 -0
- package/docs/es/compat/ngx-translate.md +45 -0
- package/docs/es/compat/nuxtjs-i18n.md +46 -0
- package/docs/es/compat/polyglot.md +45 -0
- package/docs/es/compat/react-i18next.md +58 -0
- package/docs/es/compat/react-intl.md +55 -0
- package/docs/es/compat/svelte-i18n.md +47 -0
- package/docs/es/compat/transloco.md +45 -0
- package/docs/es/compat/vue-i18n.md +58 -0
- package/docs/es/compiler.md +3 -1
- package/docs/es/configuration.md +19 -17
- package/docs/es/custom_domains.md +1 -1
- package/docs/es/custom_url_rewrites.md +1 -1
- package/docs/es/dictionary/content_file.md +4 -0
- package/docs/es/dictionary/file.md +8 -0
- package/docs/es/dictionary/nesting.md +39 -0
- package/docs/es/dictionary/translation.md +0 -61
- package/docs/es/formatters.md +82 -0
- package/docs/es/how_works_intlayer.md +4 -4
- package/docs/es/intlayer_CMS.md +21 -0
- package/docs/es/intlayer_visual_editor.md +0 -23
- package/docs/es/intlayer_with_astro.md +129 -2
- package/docs/es/intlayer_with_astro_lit.md +1 -1
- package/docs/es/intlayer_with_astro_preact.md +1 -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_express.md +0 -4
- package/docs/es/intlayer_with_nestjs.md +0 -18
- package/docs/es/intlayer_with_nextjs_14.md +10 -4
- package/docs/es/intlayer_with_nextjs_15.md +21 -1
- package/docs/es/intlayer_with_nextjs_16.md +1 -1
- package/docs/es/intlayer_with_nextjs_compiler.md +1 -1
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/es/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/es/intlayer_with_react_native+expo.md +78 -79
- package/docs/es/intlayer_with_react_router_v7.md +1 -95
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +1 -1
- package/docs/es/intlayer_with_svelte_kit.md +1 -207
- package/docs/es/intlayer_with_tanstack+solid.md +3 -1
- package/docs/es/intlayer_with_tanstack.md +1 -1
- package/docs/es/intlayer_with_vite+lit.md +1 -1
- package/docs/es/intlayer_with_vite+preact.md +5 -1
- package/docs/es/intlayer_with_vite+react.md +1 -1
- package/docs/es/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/es/intlayer_with_vite+solid.md +1 -1
- package/docs/es/intlayer_with_vite+svelte.md +1 -1
- package/docs/es/intlayer_with_vite+vanilla.md +1 -1
- package/docs/es/intlayer_with_vite+vue.md +18 -86
- package/docs/es/packages/express-intlayer/t.md +0 -9
- package/docs/es/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/es/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/es/packages/react-intlayer/useDictionary.md +0 -119
- package/docs/es/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/es/packages/react-native-intlayer/exports.md +47 -13
- package/docs/es/releases/v6.md +28 -0
- package/docs/es/releases/v7.md +128 -0
- package/docs/es/releases/v9.md +37 -1
- package/docs/es/roadmap.md +6 -0
- package/docs/fr/CI_CD.md +4 -0
- package/docs/fr/autoFill.md +81 -0
- package/docs/fr/benchmark/solid.md +22 -0
- package/docs/fr/benchmark/svelte.md +22 -0
- package/docs/fr/benchmark/tanstack.md +22 -0
- package/docs/fr/cli/ci.md +22 -0
- package/docs/fr/cli/fill.md +8 -0
- package/docs/fr/cli/login.md +0 -36
- package/docs/fr/compat/i18n-js.md +44 -0
- package/docs/fr/compat/i18next.md +59 -0
- package/docs/fr/compat/index.md +51 -0
- package/docs/fr/compat/lingui.md +44 -0
- package/docs/fr/compat/next-i18next.md +57 -0
- package/docs/fr/compat/next-intl.md +59 -0
- package/docs/fr/compat/next-translate.md +45 -0
- package/docs/fr/compat/ngx-translate.md +45 -0
- package/docs/fr/compat/nuxtjs-i18n.md +46 -0
- package/docs/fr/compat/polyglot.md +45 -0
- package/docs/fr/compat/react-i18next.md +58 -0
- package/docs/fr/compat/react-intl.md +55 -0
- package/docs/fr/compat/svelte-i18n.md +47 -0
- package/docs/fr/compat/transloco.md +45 -0
- package/docs/fr/compat/vue-i18n.md +58 -0
- package/docs/fr/compiler.md +3 -1
- package/docs/fr/configuration.md +20 -17
- package/docs/fr/custom_domains.md +1 -1
- package/docs/fr/custom_url_rewrites.md +14 -14
- package/docs/fr/dictionary/content_file.md +4 -0
- package/docs/fr/dictionary/enumeration.md +0 -187
- package/docs/fr/dictionary/file.md +8 -0
- package/docs/fr/dictionary/nesting.md +39 -0
- package/docs/fr/dictionary/translation.md +0 -61
- package/docs/fr/formatters.md +171 -77
- package/docs/fr/how_works_intlayer.md +4 -0
- package/docs/fr/intlayer_CMS.md +6 -0
- package/docs/fr/intlayer_with_astro.md +129 -2
- package/docs/fr/intlayer_with_astro_lit.md +1 -1
- package/docs/fr/intlayer_with_astro_preact.md +1 -1
- package/docs/fr/intlayer_with_astro_react.md +1 -1
- package/docs/fr/intlayer_with_astro_solid.md +1 -1
- package/docs/fr/intlayer_with_astro_svelte.md +1 -1
- package/docs/fr/intlayer_with_astro_vanilla.md +1 -1
- package/docs/fr/intlayer_with_astro_vue.md +1 -1
- package/docs/fr/intlayer_with_create_react_app.md +0 -14
- package/docs/fr/intlayer_with_express.md +0 -4
- package/docs/fr/intlayer_with_nestjs.md +0 -18
- package/docs/fr/intlayer_with_nextjs_14.md +26 -5
- package/docs/fr/intlayer_with_nextjs_15.md +21 -1
- package/docs/fr/intlayer_with_nextjs_16.md +1 -1
- package/docs/fr/intlayer_with_nextjs_compiler.md +1 -1
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/fr/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/fr/intlayer_with_nuxt.md +0 -27
- package/docs/fr/intlayer_with_react_native+expo.md +89 -67
- package/docs/fr/intlayer_with_react_router_v7.md +1 -95
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +1 -100
- package/docs/fr/intlayer_with_svelte_kit.md +1 -239
- package/docs/fr/intlayer_with_tanstack+solid.md +3 -1
- package/docs/fr/intlayer_with_tanstack.md +1 -1
- package/docs/fr/intlayer_with_vite+lit.md +1 -1
- package/docs/fr/intlayer_with_vite+preact.md +5 -1
- package/docs/fr/intlayer_with_vite+react.md +1 -1
- package/docs/fr/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/fr/intlayer_with_vite+solid.md +1 -1
- package/docs/fr/intlayer_with_vite+svelte.md +1 -1
- package/docs/fr/intlayer_with_vite+vanilla.md +1 -1
- package/docs/fr/intlayer_with_vite+vue.md +13 -83
- package/docs/fr/packages/express-intlayer/t.md +0 -9
- package/docs/fr/packages/intlayer/getLocalizedUrl.md +73 -0
- package/docs/fr/packages/intlayer/getMultilingualUrls.md +99 -0
- package/docs/fr/packages/next-intlayer/t.md +1 -1
- package/docs/fr/packages/next-intlayer/useRewriteURL.md +0 -8
- package/docs/fr/packages/react-intlayer/useDictionary.md +33 -149
- package/docs/fr/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/fr/packages/react-native-intlayer/exports.md +47 -13
- package/docs/fr/plugins/sync-json.md +0 -59
- package/docs/fr/releases/v6.md +28 -0
- package/docs/fr/releases/v7.md +128 -0
- package/docs/fr/releases/v9.md +37 -1
- package/docs/fr/roadmap.md +6 -0
- package/docs/hi/CI_CD.md +4 -0
- package/docs/hi/autoFill.md +81 -0
- package/docs/hi/benchmark/solid.md +22 -0
- package/docs/hi/benchmark/svelte.md +22 -0
- package/docs/hi/benchmark/tanstack.md +22 -0
- package/docs/hi/cli/ci.md +22 -0
- package/docs/hi/cli/fill.md +8 -0
- package/docs/hi/cli/login.md +0 -36
- package/docs/hi/compat/i18n-js.md +44 -0
- package/docs/hi/compat/i18next.md +59 -0
- package/docs/hi/compat/index.md +51 -0
- package/docs/hi/compat/lingui.md +44 -0
- package/docs/hi/compat/next-i18next.md +57 -0
- package/docs/hi/compat/next-intl.md +59 -0
- package/docs/hi/compat/next-translate.md +45 -0
- package/docs/hi/compat/ngx-translate.md +45 -0
- package/docs/hi/compat/nuxtjs-i18n.md +46 -0
- package/docs/hi/compat/polyglot.md +45 -0
- package/docs/hi/compat/react-i18next.md +58 -0
- package/docs/hi/compat/react-intl.md +55 -0
- package/docs/hi/compat/svelte-i18n.md +47 -0
- package/docs/hi/compat/transloco.md +45 -0
- package/docs/hi/compat/vue-i18n.md +58 -0
- package/docs/hi/compiler.md +3 -1
- package/docs/hi/configuration.md +19 -17
- package/docs/hi/custom_domains.md +1 -1
- package/docs/hi/custom_url_rewrites.md +1 -1
- package/docs/hi/dictionary/enumeration.md +0 -187
- package/docs/hi/dictionary/file.md +8 -0
- package/docs/hi/dictionary/nesting.md +39 -0
- package/docs/hi/dictionary/translation.md +0 -61
- package/docs/hi/formatters.md +85 -0
- package/docs/hi/how_works_intlayer.md +2 -0
- package/docs/hi/interest_of_intlayer.md +194 -0
- package/docs/hi/intlayer_CMS.md +6 -0
- package/docs/hi/intlayer_with_astro.md +130 -3
- package/docs/hi/intlayer_with_astro_lit.md +1 -1
- package/docs/hi/intlayer_with_astro_preact.md +1 -1
- package/docs/hi/intlayer_with_astro_react.md +1 -1
- package/docs/hi/intlayer_with_astro_solid.md +1 -1
- package/docs/hi/intlayer_with_astro_svelte.md +1 -1
- package/docs/hi/intlayer_with_astro_vanilla.md +1 -1
- package/docs/hi/intlayer_with_astro_vue.md +1 -1
- package/docs/hi/intlayer_with_create_react_app.md +15 -0
- package/docs/hi/intlayer_with_express.md +0 -23
- package/docs/hi/intlayer_with_nestjs.md +0 -8
- package/docs/hi/intlayer_with_nextjs_14.md +31 -8
- package/docs/hi/intlayer_with_nextjs_15.md +21 -1
- package/docs/hi/intlayer_with_nextjs_16.md +176 -54
- package/docs/hi/intlayer_with_nextjs_compiler.md +1 -1
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/hi/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/hi/intlayer_with_nuxt.md +0 -27
- package/docs/hi/intlayer_with_react_native+expo.md +125 -86
- package/docs/hi/intlayer_with_react_router_v7.md +1 -95
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +20 -96
- package/docs/hi/intlayer_with_svelte_kit.md +1 -207
- package/docs/hi/intlayer_with_tanstack+solid.md +3 -1
- package/docs/hi/intlayer_with_tanstack.md +1 -1
- package/docs/hi/intlayer_with_vite+lit.md +1 -1
- package/docs/hi/intlayer_with_vite+preact.md +1 -1
- package/docs/hi/intlayer_with_vite+react.md +1 -1
- package/docs/hi/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/hi/intlayer_with_vite+solid.md +1 -1
- package/docs/hi/intlayer_with_vite+svelte.md +32 -48
- package/docs/hi/intlayer_with_vite+vanilla.md +1 -1
- package/docs/hi/intlayer_with_vite+vue.md +23 -71
- package/docs/hi/mcp_server.md +22 -0
- package/docs/hi/migration_from_i18next_to_intlayer.md +331 -0
- package/docs/hi/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/hi/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/hi/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/hi/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/hi/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/hi/packages/intlayer/getLocalizedUrl.md +68 -0
- package/docs/hi/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/hi/packages/next-intlayer/t.md +2 -0
- package/docs/hi/packages/react-intlayer/useDictionary.md +0 -102
- package/docs/hi/packages/react-intlayer/useI18n.md +0 -4
- package/docs/hi/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/hi/packages/react-native-intlayer/exports.md +48 -14
- package/docs/hi/releases/v6.md +28 -0
- package/docs/hi/releases/v7.md +128 -0
- package/docs/hi/releases/v9.md +37 -1
- package/docs/hi/roadmap.md +6 -0
- package/docs/id/autoFill.md +20 -0
- package/docs/id/benchmark/solid.md +22 -0
- package/docs/id/benchmark/svelte.md +22 -0
- package/docs/id/benchmark/tanstack.md +22 -0
- package/docs/id/cli/ci.md +22 -0
- package/docs/id/cli/fill.md +8 -0
- package/docs/id/compat/i18n-js.md +44 -0
- package/docs/id/compat/i18next.md +59 -0
- package/docs/id/compat/index.md +51 -0
- package/docs/id/compat/lingui.md +44 -0
- package/docs/id/compat/next-i18next.md +57 -0
- package/docs/id/compat/next-intl.md +59 -0
- package/docs/id/compat/next-translate.md +45 -0
- package/docs/id/compat/ngx-translate.md +45 -0
- package/docs/id/compat/nuxtjs-i18n.md +46 -0
- package/docs/id/compat/polyglot.md +45 -0
- package/docs/id/compat/react-i18next.md +58 -0
- package/docs/id/compat/react-intl.md +55 -0
- package/docs/id/compat/svelte-i18n.md +47 -0
- package/docs/id/compat/transloco.md +45 -0
- package/docs/id/compat/vue-i18n.md +58 -0
- package/docs/id/compiler.md +3 -1
- package/docs/id/configuration.md +19 -17
- package/docs/id/custom_domains.md +1 -1
- package/docs/id/custom_url_rewrites.md +14 -16
- package/docs/id/dictionary/content_file.md +0 -7
- package/docs/id/dictionary/enumeration.md +0 -187
- package/docs/id/dictionary/nesting.md +39 -0
- package/docs/id/dictionary/translation.md +0 -61
- package/docs/id/formatters.md +120 -0
- package/docs/id/interest_of_intlayer.md +193 -0
- package/docs/id/intlayer_with_astro.md +130 -3
- package/docs/id/intlayer_with_astro_lit.md +1 -1
- package/docs/id/intlayer_with_astro_preact.md +1 -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_nextjs_14.md +1 -1
- package/docs/id/intlayer_with_nextjs_15.md +1 -1
- package/docs/id/intlayer_with_nextjs_16.md +176 -54
- package/docs/id/intlayer_with_nextjs_compiler.md +1 -22
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/id/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/id/intlayer_with_react_native+expo.md +31 -72
- package/docs/id/intlayer_with_react_router_v7.md +1 -95
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +1 -103
- package/docs/id/intlayer_with_svelte_kit.md +1 -207
- package/docs/id/intlayer_with_tanstack+solid.md +3 -1
- package/docs/id/intlayer_with_tanstack.md +1 -1
- package/docs/id/intlayer_with_vite+lit.md +1 -1
- package/docs/id/intlayer_with_vite+preact.md +57 -57
- package/docs/id/intlayer_with_vite+react.md +49 -49
- package/docs/id/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/id/intlayer_with_vite+solid.md +33 -42
- package/docs/id/intlayer_with_vite+svelte.md +27 -29
- package/docs/id/intlayer_with_vite+vanilla.md +1 -1
- package/docs/id/intlayer_with_vite+vue.md +49 -101
- package/docs/id/mcp_server.md +22 -0
- package/docs/id/migration_from_i18next_to_intlayer.md +330 -0
- package/docs/id/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/id/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/id/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/id/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/id/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/id/packages/intlayer/getLocalizedUrl.md +25 -0
- package/docs/id/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/id/packages/react-intlayer/useDictionary.md +0 -121
- package/docs/id/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/id/packages/react-native-intlayer/exports.md +47 -13
- package/docs/id/releases/v6.md +4 -0
- package/docs/id/releases/v7.md +128 -0
- package/docs/id/releases/v9.md +37 -1
- package/docs/id/roadmap.md +0 -16
- package/docs/it/CI_CD.md +4 -0
- package/docs/it/autoFill.md +81 -0
- package/docs/it/benchmark/solid.md +22 -0
- package/docs/it/benchmark/svelte.md +22 -0
- package/docs/it/benchmark/tanstack.md +22 -0
- package/docs/it/cli/ci.md +22 -0
- package/docs/it/cli/fill.md +8 -0
- package/docs/it/compat/i18n-js.md +44 -0
- package/docs/it/compat/i18next.md +59 -0
- package/docs/it/compat/index.md +51 -0
- package/docs/it/compat/lingui.md +44 -0
- package/docs/it/compat/next-i18next.md +57 -0
- package/docs/it/compat/next-intl.md +59 -0
- package/docs/it/compat/next-translate.md +45 -0
- package/docs/it/compat/ngx-translate.md +45 -0
- package/docs/it/compat/nuxtjs-i18n.md +46 -0
- package/docs/it/compat/polyglot.md +45 -0
- package/docs/it/compat/react-i18next.md +58 -0
- package/docs/it/compat/react-intl.md +55 -0
- package/docs/it/compat/svelte-i18n.md +47 -0
- package/docs/it/compat/transloco.md +45 -0
- package/docs/it/compat/vue-i18n.md +58 -0
- package/docs/it/compiler.md +3 -1
- package/docs/it/configuration.md +19 -17
- package/docs/it/custom_domains.md +1 -1
- package/docs/it/custom_url_rewrites.md +1 -1
- package/docs/it/dictionary/content_file.md +4 -7
- package/docs/it/dictionary/enumeration.md +0 -197
- package/docs/it/dictionary/file.md +8 -0
- package/docs/it/dictionary/nesting.md +39 -0
- package/docs/it/dictionary/translation.md +0 -61
- package/docs/it/formatters.md +82 -0
- package/docs/it/how_works_intlayer.md +4 -4
- package/docs/it/intlayer_CMS.md +6 -0
- package/docs/it/intlayer_with_astro.md +129 -2
- package/docs/it/intlayer_with_astro_lit.md +1 -1
- package/docs/it/intlayer_with_astro_preact.md +1 -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 +0 -14
- package/docs/it/intlayer_with_express.md +0 -4
- package/docs/it/intlayer_with_lynx+react.md +11 -0
- package/docs/it/intlayer_with_nestjs.md +0 -8
- package/docs/it/intlayer_with_nextjs_14.md +30 -9
- package/docs/it/intlayer_with_nextjs_15.md +21 -1
- package/docs/it/intlayer_with_nextjs_16.md +176 -54
- package/docs/it/intlayer_with_nextjs_compiler.md +1 -1
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/it/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/it/intlayer_with_react_native+expo.md +67 -71
- package/docs/it/intlayer_with_react_router_v7.md +1 -95
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +1 -96
- package/docs/it/intlayer_with_svelte_kit.md +1 -239
- package/docs/it/intlayer_with_tanstack+solid.md +3 -1
- package/docs/it/intlayer_with_tanstack.md +1 -1
- package/docs/it/intlayer_with_vite+lit.md +1 -1
- package/docs/it/intlayer_with_vite+preact.md +61 -57
- package/docs/it/intlayer_with_vite+react.md +49 -1
- package/docs/it/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/it/intlayer_with_vite+solid.md +33 -42
- package/docs/it/intlayer_with_vite+svelte.md +27 -29
- package/docs/it/intlayer_with_vite+vanilla.md +1 -1
- package/docs/it/intlayer_with_vite+vue.md +53 -123
- package/docs/it/mcp_server.md +22 -0
- package/docs/it/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/it/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/it/packages/next-intlayer/t.md +34 -0
- package/docs/it/packages/react-intlayer/useDictionary.md +0 -104
- package/docs/it/packages/react-intlayer/useIntlayer.md +0 -57
- package/docs/it/packages/react-native-intlayer/exports.md +47 -13
- package/docs/it/releases/v6.md +28 -0
- package/docs/it/releases/v7.md +128 -0
- package/docs/it/releases/v9.md +37 -1
- package/docs/it/roadmap.md +6 -0
- package/docs/ja/CI_CD.md +4 -0
- package/docs/ja/autoFill.md +81 -0
- package/docs/ja/benchmark/solid.md +22 -0
- package/docs/ja/benchmark/svelte.md +22 -0
- package/docs/ja/benchmark/tanstack.md +22 -0
- package/docs/ja/cli/ci.md +22 -0
- package/docs/ja/cli/fill.md +8 -0
- package/docs/ja/cli/list_projects.md +0 -18
- package/docs/ja/compat/i18n-js.md +44 -0
- package/docs/ja/compat/i18next.md +59 -0
- package/docs/ja/compat/index.md +51 -0
- package/docs/ja/compat/lingui.md +44 -0
- package/docs/ja/compat/next-i18next.md +57 -0
- package/docs/ja/compat/next-intl.md +59 -0
- package/docs/ja/compat/next-translate.md +45 -0
- package/docs/ja/compat/ngx-translate.md +45 -0
- package/docs/ja/compat/nuxtjs-i18n.md +46 -0
- package/docs/ja/compat/polyglot.md +45 -0
- package/docs/ja/compat/react-i18next.md +58 -0
- package/docs/ja/compat/react-intl.md +55 -0
- package/docs/ja/compat/svelte-i18n.md +47 -0
- package/docs/ja/compat/transloco.md +45 -0
- package/docs/ja/compat/vue-i18n.md +58 -0
- package/docs/ja/compiler.md +3 -1
- package/docs/ja/configuration.md +19 -17
- package/docs/ja/custom_domains.md +1 -1
- package/docs/ja/custom_url_rewrites.md +1 -1
- package/docs/ja/dictionary/content_file.md +4 -0
- package/docs/ja/dictionary/enumeration.md +0 -187
- package/docs/ja/dictionary/function_fetching.md +0 -27
- package/docs/ja/dictionary/markdown.md +1348 -0
- package/docs/ja/dictionary/nesting.md +39 -0
- package/docs/ja/dictionary/translation.md +0 -119
- package/docs/ja/formatters.md +77 -0
- package/docs/ja/how_works_intlayer.md +4 -2
- package/docs/ja/intlayer_CMS.md +6 -0
- package/docs/ja/intlayer_visual_editor.md +0 -4
- package/docs/ja/intlayer_with_analog.md +4 -0
- package/docs/ja/intlayer_with_astro.md +129 -2
- package/docs/ja/intlayer_with_astro_lit.md +1 -1
- package/docs/ja/intlayer_with_astro_preact.md +1 -1
- package/docs/ja/intlayer_with_astro_react.md +1 -1
- package/docs/ja/intlayer_with_astro_solid.md +1 -1
- package/docs/ja/intlayer_with_astro_svelte.md +1 -1
- package/docs/ja/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ja/intlayer_with_astro_vue.md +1 -1
- package/docs/ja/intlayer_with_create_react_app.md +0 -16
- package/docs/ja/intlayer_with_express.md +0 -4
- package/docs/ja/intlayer_with_nestjs.md +0 -8
- package/docs/ja/intlayer_with_nextjs_14.md +26 -20
- package/docs/ja/intlayer_with_nextjs_15.md +21 -1
- package/docs/ja/intlayer_with_nextjs_16.md +176 -54
- package/docs/ja/intlayer_with_nextjs_compiler.md +1 -22
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/ja/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/ja/intlayer_with_react_native+expo.md +133 -136
- package/docs/ja/intlayer_with_react_router_v7.md +1 -23
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +1 -96
- package/docs/ja/intlayer_with_svelte_kit.md +12 -1
- package/docs/ja/intlayer_with_tanstack+solid.md +3 -1
- package/docs/ja/intlayer_with_tanstack.md +3 -1
- package/docs/ja/intlayer_with_vite+lit.md +1 -1
- package/docs/ja/intlayer_with_vite+preact.md +704 -1
- package/docs/ja/intlayer_with_vite+react.md +1 -1
- package/docs/ja/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/ja/intlayer_with_vite+solid.md +33 -42
- package/docs/ja/intlayer_with_vite+svelte.md +29 -29
- package/docs/ja/intlayer_with_vite+vanilla.md +1 -1
- package/docs/ja/intlayer_with_vite+vue.md +70 -114
- package/docs/ja/mcp_server.md +26 -0
- package/docs/ja/packages/express-intlayer/t.md +0 -9
- package/docs/ja/packages/intlayer/getLocalizedUrl.md +73 -0
- package/docs/ja/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/ja/packages/react-intlayer/useDictionary.md +0 -107
- package/docs/ja/packages/react-intlayer/useIntlayer.md +0 -65
- package/docs/ja/packages/react-native-intlayer/exports.md +47 -14
- package/docs/ja/releases/v6.md +28 -0
- package/docs/ja/releases/v7.md +128 -0
- package/docs/ja/releases/v9.md +37 -1
- package/docs/ja/roadmap.md +6 -0
- package/docs/ko/CI_CD.md +4 -0
- package/docs/ko/autoFill.md +81 -0
- package/docs/ko/benchmark/solid.md +22 -0
- package/docs/ko/benchmark/svelte.md +22 -0
- package/docs/ko/benchmark/tanstack.md +22 -0
- package/docs/ko/cli/ci.md +22 -0
- package/docs/ko/cli/fill.md +8 -0
- package/docs/ko/cli/login.md +0 -36
- package/docs/ko/compat/i18n-js.md +44 -0
- package/docs/ko/compat/i18next.md +59 -0
- package/docs/ko/compat/index.md +51 -0
- package/docs/ko/compat/lingui.md +44 -0
- package/docs/ko/compat/next-i18next.md +55 -0
- package/docs/ko/compat/next-intl.md +59 -0
- package/docs/ko/compat/next-translate.md +45 -0
- package/docs/ko/compat/ngx-translate.md +45 -0
- package/docs/ko/compat/nuxtjs-i18n.md +46 -0
- package/docs/ko/compat/polyglot.md +45 -0
- package/docs/ko/compat/react-i18next.md +58 -0
- package/docs/ko/compat/react-intl.md +55 -0
- package/docs/ko/compat/svelte-i18n.md +47 -0
- package/docs/ko/compat/transloco.md +45 -0
- package/docs/ko/compat/vue-i18n.md +58 -0
- package/docs/ko/compiler.md +3 -1
- package/docs/ko/configuration.md +19 -17
- package/docs/ko/custom_domains.md +1 -1
- package/docs/ko/custom_url_rewrites.md +1 -1
- package/docs/ko/dictionary/content_file.md +4 -27
- package/docs/ko/dictionary/enumeration.md +0 -187
- package/docs/ko/dictionary/insertion.md +0 -6
- package/docs/ko/dictionary/nesting.md +39 -0
- package/docs/ko/dictionary/translation.md +0 -84
- package/docs/ko/formatters.md +71 -0
- package/docs/ko/how_works_intlayer.md +4 -0
- package/docs/ko/intlayer_CMS.md +6 -0
- package/docs/ko/intlayer_visual_editor.md +0 -2
- package/docs/ko/intlayer_with_analog.md +4 -0
- package/docs/ko/intlayer_with_astro.md +129 -2
- package/docs/ko/intlayer_with_astro_lit.md +1 -1
- package/docs/ko/intlayer_with_astro_preact.md +1 -1
- package/docs/ko/intlayer_with_astro_react.md +1 -1
- package/docs/ko/intlayer_with_astro_solid.md +1 -1
- package/docs/ko/intlayer_with_astro_svelte.md +1 -1
- package/docs/ko/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ko/intlayer_with_astro_vue.md +1 -1
- package/docs/ko/intlayer_with_create_react_app.md +0 -14
- package/docs/ko/intlayer_with_express.md +0 -23
- package/docs/ko/intlayer_with_lynx+react.md +0 -124
- package/docs/ko/intlayer_with_nestjs.md +0 -18
- package/docs/ko/intlayer_with_nextjs_14.md +19 -13
- package/docs/ko/intlayer_with_nextjs_15.md +21 -1
- package/docs/ko/intlayer_with_nextjs_16.md +175 -56
- package/docs/ko/intlayer_with_nextjs_compiler.md +1 -308
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/ko/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/ko/intlayer_with_react_native+expo.md +117 -141
- package/docs/ko/intlayer_with_react_router_v7.md +1 -95
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +20 -96
- package/docs/ko/intlayer_with_svelte_kit.md +1 -207
- package/docs/ko/intlayer_with_tanstack+solid.md +3 -1
- package/docs/ko/intlayer_with_tanstack.md +1 -1
- package/docs/ko/intlayer_with_vite+lit.md +1 -1
- package/docs/ko/intlayer_with_vite+preact.md +57 -91
- package/docs/ko/intlayer_with_vite+react.md +93 -18
- package/docs/ko/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/ko/intlayer_with_vite+solid.md +33 -143
- package/docs/ko/intlayer_with_vite+svelte.md +27 -29
- package/docs/ko/intlayer_with_vite+vanilla.md +1 -1
- package/docs/ko/intlayer_with_vite+vue.md +54 -106
- package/docs/ko/mcp_server.md +22 -0
- package/docs/ko/packages/express-intlayer/t.md +0 -9
- package/docs/ko/packages/intlayer/getLocalizedUrl.md +73 -0
- package/docs/ko/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/ko/packages/next-intlayer/t.md +34 -0
- package/docs/ko/packages/next-intlayer/useLocale.md +0 -5
- package/docs/ko/packages/react-intlayer/t.md +0 -20
- package/docs/ko/packages/react-intlayer/useDictionary.md +0 -121
- package/docs/ko/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/ko/packages/react-native-intlayer/exports.md +48 -14
- package/docs/ko/releases/v6.md +28 -0
- package/docs/ko/releases/v7.md +128 -0
- package/docs/ko/releases/v9.md +37 -1
- package/docs/ko/roadmap.md +6 -0
- package/docs/pl/autoFill.md +20 -0
- package/docs/pl/benchmark/___NOTE.md +101 -0
- package/docs/pl/benchmark/___nextjs.md +198 -0
- package/docs/pl/benchmark/___solid.md +36 -0
- package/docs/pl/benchmark/___svelte.md +36 -0
- package/docs/pl/benchmark/___tanstack.md +36 -0
- package/docs/pl/benchmark/___vue.md +36 -0
- package/docs/pl/benchmark/solid.md +22 -0
- package/docs/pl/benchmark/svelte.md +22 -0
- package/docs/pl/benchmark/tanstack.md +22 -0
- package/docs/pl/cli/ci.md +22 -0
- package/docs/pl/cli/fill.md +8 -0
- package/docs/pl/cli/login.md +0 -36
- package/docs/pl/compat/i18n-js.md +44 -0
- package/docs/pl/compat/i18next.md +59 -0
- package/docs/pl/compat/index.md +51 -0
- package/docs/pl/compat/lingui.md +44 -0
- package/docs/pl/compat/next-i18next.md +57 -0
- package/docs/pl/compat/next-intl.md +59 -0
- package/docs/pl/compat/next-translate.md +45 -0
- package/docs/pl/compat/ngx-translate.md +45 -0
- package/docs/pl/compat/nuxtjs-i18n.md +46 -0
- package/docs/pl/compat/polyglot.md +45 -0
- package/docs/pl/compat/react-i18next.md +58 -0
- package/docs/pl/compat/react-intl.md +55 -0
- package/docs/pl/compat/svelte-i18n.md +47 -0
- package/docs/pl/compat/transloco.md +45 -0
- package/docs/pl/compat/vue-i18n.md +58 -0
- package/docs/pl/configuration.md +15 -16
- package/docs/pl/dictionary/content_file.md +0 -40
- package/docs/pl/dictionary/enumeration.md +0 -187
- package/docs/pl/dictionary/nesting.md +39 -0
- package/docs/pl/dictionary/translation.md +0 -61
- package/docs/pl/formatters.md +120 -0
- package/docs/pl/intlayer_with_astro.md +179 -0
- package/docs/pl/intlayer_with_react_native+expo.md +58 -82
- package/docs/pl/intlayer_with_react_router_v7.md +0 -94
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +0 -95
- package/docs/pl/intlayer_with_svelte_kit.md +0 -210
- package/docs/pl/intlayer_with_vite+preact.md +56 -56
- package/docs/pl/intlayer_with_vite+react.md +48 -48
- package/docs/pl/intlayer_with_vite+solid.md +32 -41
- package/docs/pl/intlayer_with_vite+svelte.md +28 -28
- package/docs/pl/intlayer_with_vite+vue.md +48 -70
- package/docs/pl/mcp_server.md +22 -0
- package/docs/pl/migration_from_i18next_to_intlayer.md +230 -0
- package/docs/pl/migration_from_next-i18next_to_intlayer.md +351 -0
- package/docs/pl/migration_from_next-intl_to_intlayer.md +360 -0
- package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +324 -0
- package/docs/pl/migration_from_react-i18next_to_intlayer.md +380 -0
- package/docs/pl/migration_from_vue-i18n_to_intlayer.md +232 -0
- package/docs/pl/packages/intlayer/getLocalizedUrl.md +19 -0
- package/docs/pl/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/pl/packages/react-intlayer/useDictionary.md +0 -104
- package/docs/pl/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/pl/packages/react-native-intlayer/exports.md +47 -13
- package/docs/pl/plugins/sync-json.md +0 -59
- package/docs/pl/releases/v6.md +4 -0
- package/docs/pl/releases/v7.md +128 -0
- package/docs/pl/releases/v9.md +36 -0
- package/docs/pl/roadmap.md +0 -16
- package/docs/pt/CI_CD.md +4 -0
- package/docs/pt/autoFill.md +117 -14
- package/docs/pt/benchmark/index.md +5 -5
- package/docs/pt/benchmark/solid.md +22 -0
- package/docs/pt/benchmark/svelte.md +22 -0
- package/docs/pt/benchmark/tanstack.md +22 -0
- package/docs/pt/cli/ci.md +22 -0
- package/docs/pt/cli/fill.md +8 -0
- package/docs/pt/cli/login.md +0 -36
- package/docs/pt/compat/i18n-js.md +44 -0
- package/docs/pt/compat/i18next.md +59 -0
- package/docs/pt/compat/index.md +51 -0
- package/docs/pt/compat/lingui.md +44 -0
- package/docs/pt/compat/next-i18next.md +57 -0
- package/docs/pt/compat/next-intl.md +59 -0
- package/docs/pt/compat/next-translate.md +45 -0
- package/docs/pt/compat/ngx-translate.md +45 -0
- package/docs/pt/compat/nuxtjs-i18n.md +46 -0
- package/docs/pt/compat/polyglot.md +45 -0
- package/docs/pt/compat/react-i18next.md +58 -0
- package/docs/pt/compat/react-intl.md +55 -0
- package/docs/pt/compat/svelte-i18n.md +47 -0
- package/docs/pt/compat/transloco.md +45 -0
- package/docs/pt/compat/vue-i18n.md +58 -0
- package/docs/pt/compiler.md +2 -2
- package/docs/pt/configuration.md +16 -17
- package/docs/pt/custom_domains.md +1 -6
- package/docs/pt/custom_url_rewrites.md +1 -1
- package/docs/pt/dictionary/content_file.md +4 -7
- package/docs/pt/dictionary/enumeration.md +3 -190
- package/docs/pt/dictionary/file.md +8 -0
- package/docs/pt/dictionary/nesting.md +39 -0
- package/docs/pt/dictionary/translation.md +0 -61
- package/docs/pt/formatters.md +86 -0
- package/docs/pt/how_works_intlayer.md +4 -0
- package/docs/pt/intlayer_CMS.md +21 -0
- package/docs/pt/intlayer_with_analog.md +3 -3
- package/docs/pt/intlayer_with_angular_19.md +7 -7
- package/docs/pt/intlayer_with_angular_21.md +3 -3
- package/docs/pt/intlayer_with_astro.md +182 -3
- package/docs/pt/intlayer_with_astro_lit.md +3 -3
- package/docs/pt/intlayer_with_astro_preact.md +3 -3
- package/docs/pt/intlayer_with_astro_react.md +3 -3
- package/docs/pt/intlayer_with_astro_solid.md +3 -3
- package/docs/pt/intlayer_with_astro_svelte.md +3 -3
- package/docs/pt/intlayer_with_astro_vanilla.md +3 -3
- package/docs/pt/intlayer_with_astro_vue.md +3 -3
- package/docs/pt/intlayer_with_create_react_app.md +0 -14
- package/docs/pt/intlayer_with_express.md +0 -23
- package/docs/pt/intlayer_with_lynx+react.md +14 -3
- package/docs/pt/intlayer_with_nestjs.md +0 -18
- package/docs/pt/intlayer_with_nextjs_14.md +26 -7
- package/docs/pt/intlayer_with_nextjs_15.md +27 -7
- package/docs/pt/intlayer_with_nextjs_16.md +6 -6
- package/docs/pt/intlayer_with_nextjs_compiler.md +1 -1
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +6 -6
- package/docs/pt/intlayer_with_nextjs_page_router.md +10 -6
- package/docs/pt/intlayer_with_nuxt.md +3 -3
- package/docs/pt/intlayer_with_react_native+expo.md +74 -75
- package/docs/pt/intlayer_with_react_router_v7.md +8 -84
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +3 -98
- package/docs/pt/intlayer_with_storybook.md +3 -3
- package/docs/pt/intlayer_with_svelte_kit.md +3 -245
- package/docs/pt/intlayer_with_tanstack+solid.md +3 -3
- package/docs/pt/intlayer_with_tanstack.md +3 -3
- package/docs/pt/intlayer_with_vanilla.md +3 -3
- package/docs/pt/intlayer_with_vite+lit.md +3 -3
- package/docs/pt/intlayer_with_vite+preact.md +3 -3
- package/docs/pt/intlayer_with_vite+react.md +10 -10
- package/docs/pt/intlayer_with_vite+react_compiler.md +5 -5
- package/docs/pt/intlayer_with_vite+solid.md +3 -3
- package/docs/pt/intlayer_with_vite+svelte.md +31 -31
- package/docs/pt/intlayer_with_vite+vanilla.md +3 -3
- package/docs/pt/intlayer_with_vite+vue.md +7 -3
- package/docs/pt/mcp_server.md +22 -0
- package/docs/pt/packages/hono-intlayer/t.md +1 -1
- package/docs/pt/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/pt/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/pt/packages/next-intlayer/t.md +34 -0
- package/docs/pt/packages/react-intlayer/useDictionary.md +0 -121
- package/docs/pt/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/pt/packages/react-native-intlayer/exports.md +47 -13
- package/docs/pt/plugins/sync-po.md +1 -1
- package/docs/pt/readme.md +3 -3
- package/docs/pt/releases/v6.md +28 -0
- package/docs/pt/releases/v7.md +128 -0
- package/docs/pt/releases/v9.md +37 -1
- package/docs/pt/roadmap.md +6 -0
- package/docs/ru/CI_CD.md +4 -0
- package/docs/ru/autoFill.md +81 -0
- package/docs/ru/benchmark/solid.md +22 -0
- package/docs/ru/benchmark/svelte.md +22 -0
- package/docs/ru/benchmark/tanstack.md +22 -0
- package/docs/ru/cli/ci.md +22 -0
- package/docs/ru/cli/fill.md +8 -0
- package/docs/ru/cli/login.md +0 -36
- package/docs/ru/compat/i18n-js.md +44 -0
- package/docs/ru/compat/i18next.md +59 -0
- package/docs/ru/compat/index.md +51 -0
- package/docs/ru/compat/lingui.md +44 -0
- package/docs/ru/compat/next-i18next.md +57 -0
- package/docs/ru/compat/next-intl.md +59 -0
- package/docs/ru/compat/next-translate.md +45 -0
- package/docs/ru/compat/ngx-translate.md +45 -0
- package/docs/ru/compat/nuxtjs-i18n.md +46 -0
- package/docs/ru/compat/polyglot.md +45 -0
- package/docs/ru/compat/react-i18next.md +58 -0
- package/docs/ru/compat/react-intl.md +55 -0
- package/docs/ru/compat/svelte-i18n.md +47 -0
- package/docs/ru/compat/transloco.md +45 -0
- package/docs/ru/compat/vue-i18n.md +58 -0
- package/docs/ru/compiler.md +3 -1
- package/docs/ru/configuration.md +19 -17
- package/docs/ru/custom_domains.md +1 -1
- package/docs/ru/custom_url_rewrites.md +1 -1
- package/docs/ru/dictionary/content_file.md +4 -27
- package/docs/ru/dictionary/enumeration.md +0 -199
- package/docs/ru/dictionary/file.md +8 -0
- package/docs/ru/dictionary/markdown.md +510 -0
- package/docs/ru/dictionary/nesting.md +8 -0
- package/docs/ru/dictionary/translation.md +0 -61
- package/docs/ru/formatters.md +136 -0
- package/docs/ru/how_works_intlayer.md +4 -0
- package/docs/ru/intlayer_CMS.md +6 -0
- package/docs/ru/intlayer_with_astro.md +129 -2
- package/docs/ru/intlayer_with_astro_lit.md +1 -1
- package/docs/ru/intlayer_with_astro_preact.md +1 -1
- package/docs/ru/intlayer_with_astro_react.md +1 -1
- package/docs/ru/intlayer_with_astro_solid.md +1 -1
- package/docs/ru/intlayer_with_astro_svelte.md +1 -1
- package/docs/ru/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ru/intlayer_with_astro_vue.md +1 -1
- package/docs/ru/intlayer_with_express.md +0 -23
- package/docs/ru/intlayer_with_nestjs.md +0 -18
- package/docs/ru/intlayer_with_nextjs_14.md +31 -8
- package/docs/ru/intlayer_with_nextjs_15.md +21 -1
- package/docs/ru/intlayer_with_nextjs_16.md +1 -1
- package/docs/ru/intlayer_with_nextjs_compiler.md +1 -1
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/ru/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/ru/intlayer_with_react_native+expo.md +78 -80
- package/docs/ru/intlayer_with_react_router_v7.md +1 -95
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +1 -96
- package/docs/ru/intlayer_with_svelte_kit.md +1 -207
- package/docs/ru/intlayer_with_tanstack+solid.md +3 -1
- package/docs/ru/intlayer_with_tanstack.md +1 -1
- package/docs/ru/intlayer_with_vite+lit.md +1 -1
- package/docs/ru/intlayer_with_vite+preact.md +57 -57
- package/docs/ru/intlayer_with_vite+react.md +3 -1
- package/docs/ru/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/ru/intlayer_with_vite+solid.md +33 -42
- package/docs/ru/intlayer_with_vite+svelte.md +27 -29
- package/docs/ru/intlayer_with_vite+vanilla.md +1 -1
- package/docs/ru/intlayer_with_vite+vue.md +53 -101
- package/docs/ru/mcp_server.md +22 -0
- package/docs/ru/packages/intlayer/getLocalizedUrl.md +75 -0
- package/docs/ru/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/ru/packages/next-intlayer/t.md +34 -0
- package/docs/ru/packages/react-intlayer/useDictionary.md +0 -104
- package/docs/ru/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/ru/packages/react-intlayer/useLocale.md +9 -0
- package/docs/ru/packages/react-native-intlayer/exports.md +49 -16
- package/docs/ru/releases/v6.md +28 -0
- package/docs/ru/releases/v7.md +128 -0
- package/docs/ru/releases/v9.md +37 -1
- package/docs/ru/roadmap.md +6 -0
- package/docs/tr/CI_CD.md +4 -0
- package/docs/tr/autoFill.md +81 -0
- package/docs/tr/benchmark/solid.md +22 -0
- package/docs/tr/benchmark/svelte.md +22 -0
- package/docs/tr/benchmark/tanstack.md +22 -0
- package/docs/tr/cli/ci.md +22 -0
- package/docs/tr/cli/fill.md +8 -0
- package/docs/tr/cli/login.md +0 -10
- package/docs/tr/compat/i18n-js.md +44 -0
- package/docs/tr/compat/i18next.md +59 -0
- package/docs/tr/compat/index.md +51 -0
- package/docs/tr/compat/lingui.md +44 -0
- package/docs/tr/compat/next-i18next.md +57 -0
- package/docs/tr/compat/next-intl.md +59 -0
- package/docs/tr/compat/next-translate.md +45 -0
- package/docs/tr/compat/ngx-translate.md +45 -0
- package/docs/tr/compat/nuxtjs-i18n.md +46 -0
- package/docs/tr/compat/polyglot.md +45 -0
- package/docs/tr/compat/react-i18next.md +58 -0
- package/docs/tr/compat/react-intl.md +55 -0
- package/docs/tr/compat/svelte-i18n.md +47 -0
- package/docs/tr/compat/transloco.md +45 -0
- package/docs/tr/compat/vue-i18n.md +58 -0
- package/docs/tr/compiler.md +3 -1
- package/docs/tr/configuration.md +19 -17
- package/docs/tr/custom_domains.md +1 -1
- package/docs/tr/custom_url_rewrites.md +1 -1
- package/docs/tr/dictionary/content_file.md +4 -27
- package/docs/tr/dictionary/enumeration.md +0 -187
- package/docs/tr/dictionary/file.md +8 -0
- package/docs/tr/dictionary/nesting.md +39 -0
- package/docs/tr/dictionary/translation.md +0 -88
- package/docs/tr/formatters.md +59 -0
- package/docs/tr/how_works_intlayer.md +4 -0
- package/docs/tr/intlayer_CMS.md +6 -0
- package/docs/tr/intlayer_with_analog.md +4 -0
- package/docs/tr/intlayer_with_astro.md +134 -77
- package/docs/tr/intlayer_with_astro_lit.md +1 -1
- package/docs/tr/intlayer_with_astro_preact.md +1 -1
- package/docs/tr/intlayer_with_astro_react.md +1 -1
- package/docs/tr/intlayer_with_astro_solid.md +1 -1
- package/docs/tr/intlayer_with_astro_svelte.md +1 -1
- package/docs/tr/intlayer_with_astro_vanilla.md +1 -1
- package/docs/tr/intlayer_with_astro_vue.md +1 -1
- package/docs/tr/intlayer_with_express.md +0 -4
- package/docs/tr/intlayer_with_nestjs.md +0 -8
- package/docs/tr/intlayer_with_nextjs_14.md +95 -8
- package/docs/tr/intlayer_with_nextjs_15.md +21 -1
- package/docs/tr/intlayer_with_nextjs_16.md +1 -1
- package/docs/tr/intlayer_with_nextjs_compiler.md +1 -22
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/tr/intlayer_with_nextjs_page_router.md +5 -1
- package/docs/tr/intlayer_with_react_native+expo.md +65 -101
- package/docs/tr/intlayer_with_react_router_v7.md +1 -95
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +1 -96
- package/docs/tr/intlayer_with_svelte_kit.md +1 -207
- package/docs/tr/intlayer_with_tanstack+solid.md +3 -1
- package/docs/tr/intlayer_with_tanstack.md +1 -1
- package/docs/tr/intlayer_with_vite+lit.md +1 -1
- package/docs/tr/intlayer_with_vite+preact.md +57 -57
- package/docs/tr/intlayer_with_vite+react.md +49 -49
- package/docs/tr/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/tr/intlayer_with_vite+solid.md +33 -42
- package/docs/tr/intlayer_with_vite+svelte.md +27 -29
- package/docs/tr/intlayer_with_vite+vanilla.md +1 -1
- package/docs/tr/intlayer_with_vite+vue.md +54 -102
- package/docs/tr/mcp_server.md +22 -0
- package/docs/tr/packages/intlayer/getMultilingualUrls.md +111 -0
- package/docs/tr/packages/react-intlayer/useDictionary.md +0 -119
- package/docs/tr/packages/react-intlayer/useI18n.md +0 -125
- package/docs/tr/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/tr/packages/react-native-intlayer/exports.md +48 -15
- package/docs/tr/releases/v6.md +28 -0
- package/docs/tr/releases/v7.md +128 -0
- package/docs/tr/releases/v9.md +37 -1
- package/docs/tr/roadmap.md +6 -0
- package/docs/uk/benchmark/solid.md +22 -0
- package/docs/uk/benchmark/svelte.md +22 -0
- package/docs/uk/benchmark/tanstack.md +22 -0
- package/docs/uk/cli/ci.md +22 -0
- package/docs/uk/cli/fill.md +8 -0
- package/docs/uk/compat/i18n-js.md +44 -0
- package/docs/uk/compat/i18next.md +59 -0
- package/docs/uk/compat/index.md +51 -0
- package/docs/uk/compat/lingui.md +44 -0
- package/docs/uk/compat/next-i18next.md +57 -0
- package/docs/uk/compat/next-intl.md +59 -0
- package/docs/uk/compat/next-translate.md +45 -0
- package/docs/uk/compat/ngx-translate.md +45 -0
- package/docs/uk/compat/nuxtjs-i18n.md +46 -0
- package/docs/uk/compat/polyglot.md +45 -0
- package/docs/uk/compat/react-i18next.md +58 -0
- package/docs/uk/compat/react-intl.md +55 -0
- package/docs/uk/compat/svelte-i18n.md +47 -0
- package/docs/uk/compat/transloco.md +45 -0
- package/docs/uk/compat/vue-i18n.md +58 -0
- package/docs/uk/compiler.md +3 -1
- package/docs/uk/configuration.md +19 -17
- package/docs/uk/custom_domains.md +1 -1
- package/docs/uk/custom_url_rewrites.md +1 -1
- package/docs/uk/dictionary/content_file.md +0 -7
- package/docs/uk/dictionary/enumeration.md +0 -187
- package/docs/uk/dictionary/nesting.md +39 -0
- package/docs/uk/dictionary/translation.md +0 -72
- package/docs/uk/formatters.md +142 -58
- package/docs/uk/interest_of_intlayer.md +194 -0
- package/docs/uk/intlayer_with_analog.md +4 -0
- package/docs/uk/intlayer_with_astro.md +130 -3
- package/docs/uk/intlayer_with_astro_lit.md +1 -1
- package/docs/uk/intlayer_with_astro_preact.md +1 -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_nextjs_14.md +1 -1
- package/docs/uk/intlayer_with_nextjs_15.md +1 -1
- package/docs/uk/intlayer_with_nextjs_16.md +1 -1
- package/docs/uk/intlayer_with_nextjs_compiler.md +1 -22
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/uk/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/uk/intlayer_with_nuxt.md +0 -27
- package/docs/uk/intlayer_with_react_native+expo.md +52 -93
- package/docs/uk/intlayer_with_react_router_v7.md +1 -95
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +1 -96
- package/docs/uk/intlayer_with_svelte_kit.md +1 -1
- package/docs/uk/intlayer_with_tanstack+solid.md +3 -1
- package/docs/uk/intlayer_with_tanstack.md +1 -1
- package/docs/uk/intlayer_with_vite+lit.md +1 -1
- package/docs/uk/intlayer_with_vite+preact.md +57 -57
- package/docs/uk/intlayer_with_vite+react.md +49 -49
- package/docs/uk/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/uk/intlayer_with_vite+solid.md +33 -42
- package/docs/uk/intlayer_with_vite+svelte.md +29 -29
- package/docs/uk/intlayer_with_vite+vanilla.md +1 -1
- package/docs/uk/intlayer_with_vite+vue.md +49 -101
- package/docs/uk/mcp_server.md +22 -0
- package/docs/uk/migration_from_i18next_to_intlayer.md +333 -0
- package/docs/uk/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/uk/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/uk/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/uk/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/uk/packages/react-intlayer/useDictionary.md +0 -107
- package/docs/uk/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/uk/packages/react-native-intlayer/exports.md +47 -13
- package/docs/uk/releases/v6.md +4 -0
- package/docs/uk/releases/v7.md +4 -0
- package/docs/uk/releases/v9.md +37 -1
- package/docs/vi/autoFill.md +20 -0
- package/docs/vi/benchmark/solid.md +22 -0
- package/docs/vi/benchmark/svelte.md +22 -0
- package/docs/vi/benchmark/tanstack.md +22 -0
- package/docs/vi/cli/ci.md +22 -0
- package/docs/vi/cli/fill.md +8 -0
- package/docs/vi/cli/login.md +0 -36
- package/docs/vi/compat/i18n-js.md +44 -0
- package/docs/vi/compat/i18next.md +59 -0
- package/docs/vi/compat/index.md +51 -0
- package/docs/vi/compat/lingui.md +44 -0
- package/docs/vi/compat/next-i18next.md +57 -0
- package/docs/vi/compat/next-intl.md +59 -0
- package/docs/vi/compat/next-translate.md +45 -0
- package/docs/vi/compat/ngx-translate.md +45 -0
- package/docs/vi/compat/nuxtjs-i18n.md +46 -0
- package/docs/vi/compat/polyglot.md +45 -0
- package/docs/vi/compat/react-i18next.md +58 -0
- package/docs/vi/compat/react-intl.md +55 -0
- package/docs/vi/compat/svelte-i18n.md +47 -0
- package/docs/vi/compat/transloco.md +45 -0
- package/docs/vi/compat/vue-i18n.md +58 -0
- package/docs/vi/compiler.md +3 -1
- package/docs/vi/configuration.md +19 -17
- package/docs/vi/custom_domains.md +1 -1
- package/docs/vi/custom_url_rewrites.md +1 -1
- package/docs/vi/dictionary/content_file.md +0 -7
- package/docs/vi/dictionary/enumeration.md +0 -199
- package/docs/vi/dictionary/insertion.md +0 -2
- package/docs/vi/dictionary/nesting.md +39 -0
- package/docs/vi/dictionary/translation.md +0 -61
- package/docs/vi/formatters.md +124 -0
- package/docs/vi/interest_of_intlayer.md +193 -0
- package/docs/vi/intlayer_with_analog.md +4 -0
- package/docs/vi/intlayer_with_astro.md +130 -3
- package/docs/vi/intlayer_with_astro_lit.md +1 -1
- package/docs/vi/intlayer_with_astro_preact.md +1 -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_nextjs_14.md +1 -1
- package/docs/vi/intlayer_with_nextjs_15.md +469 -1
- package/docs/vi/intlayer_with_nextjs_16.md +1 -1
- package/docs/vi/intlayer_with_nextjs_compiler.md +1 -22
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/vi/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/vi/intlayer_with_nuxt.md +0 -27
- package/docs/vi/intlayer_with_react_native+expo.md +32 -74
- package/docs/vi/intlayer_with_react_router_v7.md +1 -95
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +1 -103
- package/docs/vi/intlayer_with_svelte_kit.md +1 -207
- package/docs/vi/intlayer_with_tanstack+solid.md +3 -1
- package/docs/vi/intlayer_with_tanstack.md +1 -1
- package/docs/vi/intlayer_with_vite+lit.md +1 -1
- package/docs/vi/intlayer_with_vite+preact.md +57 -57
- package/docs/vi/intlayer_with_vite+react.md +49 -49
- package/docs/vi/intlayer_with_vite+react_compiler.md +1 -1
- package/docs/vi/intlayer_with_vite+solid.md +33 -42
- package/docs/vi/intlayer_with_vite+svelte.md +29 -31
- package/docs/vi/intlayer_with_vite+vanilla.md +1 -1
- package/docs/vi/intlayer_with_vite+vue.md +49 -101
- package/docs/vi/mcp_server.md +22 -0
- package/docs/vi/migration_from_i18next_to_intlayer.md +333 -0
- package/docs/vi/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/vi/migration_from_next-intl_to_intlayer.md +364 -0
- package/docs/vi/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/vi/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/vi/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/vi/packages/intlayer/getLocalizedUrl.md +25 -0
- package/docs/vi/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/vi/packages/react-intlayer/useDictionary.md +0 -121
- package/docs/vi/packages/react-intlayer/useI18n.md +0 -28
- package/docs/vi/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/vi/packages/react-native-intlayer/exports.md +47 -13
- package/docs/vi/releases/v6.md +4 -0
- package/docs/vi/releases/v7.md +128 -0
- package/docs/vi/releases/v9.md +37 -1
- package/docs/zh/CI_CD.md +1 -1
- package/docs/zh/autoFill.md +81 -0
- package/docs/zh/benchmark/solid.md +22 -0
- package/docs/zh/benchmark/svelte.md +22 -0
- package/docs/zh/benchmark/tanstack.md +22 -0
- package/docs/zh/cli/ci.md +22 -0
- package/docs/zh/cli/fill.md +8 -0
- package/docs/zh/cli/login.md +0 -36
- package/docs/zh/compat/i18n-js.md +44 -0
- package/docs/zh/compat/i18next.md +59 -0
- package/docs/zh/compat/index.md +51 -0
- package/docs/zh/compat/lingui.md +44 -0
- package/docs/zh/compat/next-i18next.md +57 -0
- package/docs/zh/compat/next-intl.md +59 -0
- package/docs/zh/compat/next-translate.md +45 -0
- package/docs/zh/compat/ngx-translate.md +45 -0
- package/docs/zh/compat/nuxtjs-i18n.md +46 -0
- package/docs/zh/compat/polyglot.md +45 -0
- package/docs/zh/compat/react-i18next.md +58 -0
- package/docs/zh/compat/react-intl.md +55 -0
- package/docs/zh/compat/svelte-i18n.md +47 -0
- package/docs/zh/compat/transloco.md +45 -0
- package/docs/zh/compat/vue-i18n.md +58 -0
- package/docs/zh/compiler.md +3 -1
- package/docs/zh/configuration.md +19 -17
- package/docs/zh/custom_domains.md +1 -1
- package/docs/zh/custom_url_rewrites.md +14 -16
- package/docs/zh/dictionary/content_file.md +16 -20
- package/docs/zh/dictionary/enumeration.md +0 -187
- package/docs/zh/dictionary/function_fetching.md +0 -27
- package/docs/zh/dictionary/insertion.md +0 -64
- package/docs/zh/dictionary/nesting.md +39 -0
- package/docs/zh/dictionary/translation.md +0 -84
- package/docs/zh/formatters.md +77 -0
- package/docs/zh/how_works_intlayer.md +4 -4
- package/docs/zh/intlayer_CMS.md +21 -0
- package/docs/zh/intlayer_with_analog.md +4 -170
- package/docs/zh/intlayer_with_angular_19.md +0 -248
- package/docs/zh/intlayer_with_astro.md +242 -60
- package/docs/zh/intlayer_with_astro_lit.md +108 -74
- package/docs/zh/intlayer_with_astro_preact.md +102 -68
- package/docs/zh/intlayer_with_astro_react.md +104 -70
- package/docs/zh/intlayer_with_astro_solid.md +104 -70
- package/docs/zh/intlayer_with_astro_svelte.md +104 -70
- package/docs/zh/intlayer_with_astro_vanilla.md +101 -69
- package/docs/zh/intlayer_with_astro_vue.md +96 -62
- package/docs/zh/intlayer_with_create_react_app.md +0 -305
- package/docs/zh/intlayer_with_express.md +0 -23
- package/docs/zh/intlayer_with_lynx+react.md +0 -275
- package/docs/zh/intlayer_with_nestjs.md +0 -18
- package/docs/zh/intlayer_with_nextjs_14.md +63 -25
- package/docs/zh/intlayer_with_nextjs_15.md +64 -14
- package/docs/zh/intlayer_with_nextjs_16.md +129 -87
- package/docs/zh/intlayer_with_nextjs_compiler.md +152 -140
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +1 -1
- package/docs/zh/intlayer_with_nextjs_page_router.md +51 -15
- package/docs/zh/intlayer_with_nuxt.md +0 -162
- package/docs/zh/intlayer_with_react_native+expo.md +134 -151
- package/docs/zh/intlayer_with_react_router_v7.md +1 -342
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +1 -332
- package/docs/zh/intlayer_with_storybook.md +0 -240
- package/docs/zh/intlayer_with_svelte_kit.md +1 -549
- package/docs/zh/intlayer_with_tanstack+solid.md +1 -646
- package/docs/zh/intlayer_with_tanstack.md +1 -644
- package/docs/zh/intlayer_with_vanilla.md +0 -283
- package/docs/zh/intlayer_with_vite+lit.md +1 -411
- package/docs/zh/intlayer_with_vite+preact.md +1 -241
- package/docs/zh/intlayer_with_vite+react.md +2 -2
- package/docs/zh/intlayer_with_vite+react_compiler.md +1 -192
- package/docs/zh/intlayer_with_vite+solid.md +1 -306
- package/docs/zh/intlayer_with_vite+svelte.md +104 -78
- package/docs/zh/intlayer_with_vite+vanilla.md +1 -442
- package/docs/zh/intlayer_with_vite+vue.md +95 -136
- package/docs/zh/mcp_server.md +26 -0
- package/docs/zh/migration_from_i18next_to_intlayer.md +330 -0
- package/docs/zh/migration_from_next-i18next_to_intlayer.md +355 -0
- package/docs/zh/migration_from_next-intl_to_intlayer.md +365 -0
- package/docs/zh/migration_from_nuxtjs_i18n_to_intlayer.md +328 -0
- package/docs/zh/migration_from_react-i18next_to_intlayer.md +384 -0
- package/docs/zh/migration_from_vue-i18n_to_intlayer.md +359 -0
- package/docs/zh/packages/intlayer/getLocalizedUrl.md +73 -0
- package/docs/zh/packages/intlayer/getMultilingualUrls.md +112 -0
- package/docs/zh/packages/react-intlayer/useDictionary.md +0 -129
- package/docs/zh/packages/react-intlayer/useIntlayer.md +0 -51
- package/docs/zh/packages/react-native-intlayer/exports.md +48 -14
- package/docs/zh/releases/v6.md +28 -0
- package/docs/zh/releases/v7.md +128 -0
- package/docs/zh/releases/v8.md +190 -0
- package/docs/zh/releases/v9.md +37 -1
- package/docs/zh/roadmap.md +6 -0
- package/docs/zh/vs_code_extension.md +0 -7
- package/frequent_questions/pt/translated_path_url.md +1 -1
- package/package.json +6 -6
|
@@ -34,17 +34,6 @@ author: aymericzip
|
|
|
34
34
|
|
|
35
35
|
<TOC/>
|
|
36
36
|
|
|
37
|
-
## What is next-i18next?
|
|
38
|
-
|
|
39
|
-
**next-i18next** is one of the most popular internationalisation (i18n) frameworks for Next.js applications. Built on top of the powerful **i18next** ecosystem, it provides a comprehensive solution for managing translations, localisation, and language switching in Next.js projects.
|
|
40
|
-
|
|
41
|
-
However, next-i18next comes with some challenges:
|
|
42
|
-
|
|
43
|
-
- **Complex configuration**: Setting up next-i18next requires multiple configuration files and careful setup of server-side and client-side i18n instances.
|
|
44
|
-
- **Scattered translations**: Translation files are typically stored in separate directories from components, making it harder to maintain consistency.
|
|
45
|
-
- **Manual namespace management**: Developers need to manually manage namespaces and ensure proper loading of translation resources.
|
|
46
|
-
- **Limited type safety**: TypeScript support requires additional configuration and does not provide automatic type generation for translations.
|
|
47
|
-
|
|
48
37
|
## What is Intlayer?
|
|
49
38
|
|
|
50
39
|
**Intlayer** is an innovative, open-source internationalisation library designed to address the shortcomings of traditional i18n solutions. It offers a modern approach to content management in Next.js applications.
|
|
@@ -29,6 +29,10 @@ author: aymericzip
|
|
|
29
29
|
|
|
30
30
|
<iframe title="How to automate your next-intl JSON translations using Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/MpGMxniDHNg?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
31
31
|
|
|
32
|
+
# Table of Contents
|
|
33
|
+
|
|
34
|
+
<TOC/>
|
|
35
|
+
|
|
32
36
|
## What is Intlayer?
|
|
33
37
|
|
|
34
38
|
**Intlayer** is an innovative, open-source internationalisation library designed to address the shortcomings of traditional i18n solutions. It offers a modern approach to content management in Next.js applications.
|
|
@@ -282,34 +282,6 @@ Here is an example of the impact of bundle size optimisation using `intlayer` in
|
|
|
282
282
|
|
|
283
283
|
---
|
|
284
284
|
|
|
285
|
-
## DX, tooling & maintenance
|
|
286
|
-
|
|
287
|
-
<Columns>
|
|
288
|
-
<Column>
|
|
289
|
-
|
|
290
|
-
**next-intl**
|
|
291
|
-
|
|
292
|
-
- Commonly paired with external localisation platforms and editorial workflows.
|
|
293
|
-
|
|
294
|
-
</Column>
|
|
295
|
-
<Column>
|
|
296
|
-
|
|
297
|
-
**next-i18next**
|
|
298
|
-
|
|
299
|
-
- Commonly paired with external localisation platforms and editorial workflows.
|
|
300
|
-
|
|
301
|
-
</Column>
|
|
302
|
-
<Column>
|
|
303
|
-
|
|
304
|
-
**intlayer**
|
|
305
|
-
|
|
306
|
-
- Ships a **free Visual Editor** and **optional CMS** (Git-friendly or externalised), plus a **VSCode extension** and **AI-assisted translations** using your own provider keys.
|
|
307
|
-
|
|
308
|
-
</Column>
|
|
309
|
-
</Columns>
|
|
310
|
-
|
|
311
|
-
**Why it matters:** Lowers operational costs and shortens the feedback loop between developers and content authors.
|
|
312
|
-
|
|
313
285
|
## Integration with localisation platforms (TMS)
|
|
314
286
|
|
|
315
287
|
Large organisations often rely on Translation Management Systems (TMS) like **Crowdin**, **Phrase**, **Lokalise**, **Localizely**, or **Localazy**.
|
|
@@ -1177,6 +1149,127 @@ export default robots;
|
|
|
1177
1149
|
|
|
1178
1150
|
---
|
|
1179
1151
|
|
|
1152
|
+
### Middleware for locale routing
|
|
1153
|
+
|
|
1154
|
+
<Tabs defaultTab="next-intl" group='techno'>
|
|
1155
|
+
<Tab label="next-i18next" value="next-i18next">
|
|
1156
|
+
|
|
1157
|
+
Add a middleware to handle locale detection and routing:
|
|
1158
|
+
|
|
1159
|
+
```ts fileName="src/middleware.ts"
|
|
1160
|
+
import { NextResponse, type NextRequest } from "next/server";
|
|
1161
|
+
import { defaultLocale, locales } from "@/i18n.config";
|
|
1162
|
+
|
|
1163
|
+
const PUBLIC_FILE = /\.[^/]+$/; // exclude files with extensions
|
|
1164
|
+
|
|
1165
|
+
export function middleware(request: NextRequest) {
|
|
1166
|
+
const { pathname } = request.nextUrl;
|
|
1167
|
+
|
|
1168
|
+
if (
|
|
1169
|
+
pathname.startsWith("/_next") ||
|
|
1170
|
+
pathname.startsWith("/api") ||
|
|
1171
|
+
pathname.startsWith("/static") ||
|
|
1172
|
+
PUBLIC_FILE.test(pathname)
|
|
1173
|
+
) {
|
|
1174
|
+
return;
|
|
1175
|
+
}
|
|
1176
|
+
|
|
1177
|
+
const hasLocale = locales.some(
|
|
1178
|
+
(l) => pathname === "/" + l || pathname.startsWith("/" + l + "/")
|
|
1179
|
+
);
|
|
1180
|
+
if (!hasLocale) {
|
|
1181
|
+
const locale = defaultLocale;
|
|
1182
|
+
const url = request.nextUrl.clone();
|
|
1183
|
+
url.pathname = "/" + locale + (pathname === "/" ? "" : pathname);
|
|
1184
|
+
return NextResponse.redirect(url);
|
|
1185
|
+
}
|
|
1186
|
+
}
|
|
1187
|
+
|
|
1188
|
+
export const config = {
|
|
1189
|
+
matcher: [
|
|
1190
|
+
// Match all paths except the ones starting with these and files with an extension
|
|
1191
|
+
"/((?!api|_next|static|.*\\..*).*)",
|
|
1192
|
+
],
|
|
1193
|
+
};
|
|
1194
|
+
```
|
|
1195
|
+
|
|
1196
|
+
</Tab>
|
|
1197
|
+
<Tab label="next-intl" value="next-intl">
|
|
1198
|
+
|
|
1199
|
+
Add a middleware to handle locale detection and routing:
|
|
1200
|
+
|
|
1201
|
+
```ts fileName="src/middleware.ts"
|
|
1202
|
+
import createMiddleware from "next-intl/middleware";
|
|
1203
|
+
import { locales, defaultLocale } from "@/i18n";
|
|
1204
|
+
|
|
1205
|
+
export default createMiddleware({
|
|
1206
|
+
locales: [...locales],
|
|
1207
|
+
defaultLocale,
|
|
1208
|
+
localeDetection: true,
|
|
1209
|
+
});
|
|
1210
|
+
|
|
1211
|
+
export const config = {
|
|
1212
|
+
// Skip API, Next internals and static assets
|
|
1213
|
+
matcher: ["/((?!api|_next|.*\\..*).*)"],
|
|
1214
|
+
};
|
|
1215
|
+
```
|
|
1216
|
+
|
|
1217
|
+
</Tab>
|
|
1218
|
+
<Tab label="intlayer" value="intlayer">
|
|
1219
|
+
|
|
1220
|
+
Intlayer provides built-in middleware handling through the `next-intlayer` package configuration.
|
|
1221
|
+
|
|
1222
|
+
```ts fileName="src/middleware.ts"
|
|
1223
|
+
import { intlayerProxy } from "next-intlayer/proxy";
|
|
1224
|
+
|
|
1225
|
+
export const middleware = intlayerProxy();
|
|
1226
|
+
|
|
1227
|
+
// applies this middleware only to files in the app directory
|
|
1228
|
+
export const config = {
|
|
1229
|
+
matcher: "/((?!api|_next|static|.*\\..*).*)",
|
|
1230
|
+
};
|
|
1231
|
+
```
|
|
1232
|
+
|
|
1233
|
+
The setup of the middleware is centralised in the `intlayer.config.ts` file.
|
|
1234
|
+
|
|
1235
|
+
</Tab>
|
|
1236
|
+
</Tabs>
|
|
1237
|
+
|
|
1238
|
+
### Setup checklist and good practices
|
|
1239
|
+
|
|
1240
|
+
<Tabs defaultTab="next-intl" group='techno'>
|
|
1241
|
+
<Tab label="next-i18next" value="next-i18next">
|
|
1242
|
+
|
|
1243
|
+
- Ensure `lang` and `dir` are set on the root `<html>` in `src/app/[locale]/layout.tsx`.
|
|
1244
|
+
- Split translations into namespaces (for example `common.json`, `about.json`) under `src/locales/<locale>/`.
|
|
1245
|
+
- Only load required namespaces in client components using `useTranslation('<ns>')` and by scoping `I18nProvider` with the same namespaces.
|
|
1246
|
+
- Keep pages static when possible: export `export const dynamic = 'force-static'` on pages; set `dynamicParams = false` and implement `generateStaticParams`.
|
|
1247
|
+
- Use sync server components nested under client boundaries by passing already-computed strings or the `t` function and the `locale`.
|
|
1248
|
+
- For SEO, set `alternates.languages` in metadata, list localised URLs in `sitemap.ts`, and disallow duplicate localised routes in `robots.ts`.
|
|
1249
|
+
- Prefer locale-aware formatters (e.g., `Intl.NumberFormat(locale)`) and memoise them on the client if using React < 19.
|
|
1250
|
+
|
|
1251
|
+
</Tab>
|
|
1252
|
+
<Tab label="next-intl" value="next-intl">
|
|
1253
|
+
|
|
1254
|
+
- **Set html `lang` and `dir`**: In `src/app/[locale]/layout.tsx`, compute `dir` via `getLocaleDirection(locale)` and set `<html lang={locale} dir={dir}>`.
|
|
1255
|
+
- **Split messages by namespace**: Organise JSON per locale and namespace (e.g., `common.json`, `about.json`).
|
|
1256
|
+
- **Minimise client payload**: On pages, send only required namespaces to `NextIntlClientProvider` (e.g., `pick(messages, ['common', 'about'])`).
|
|
1257
|
+
- **Prefer static pages**: Export `export const dynamic = 'force-static'` and generate static params for all `locales`.
|
|
1258
|
+
- **Synchronous server components**: Keep server components sync by passing precomputed strings (translated labels, formatted numbers) rather than async calls or non-serialisable functions.
|
|
1259
|
+
|
|
1260
|
+
</Tab>
|
|
1261
|
+
<Tab label="intlayer" value="intlayer">
|
|
1262
|
+
|
|
1263
|
+
- **Modular content**: Co-locate content dictionaries with components using `.content.{ts|js|json}` files.
|
|
1264
|
+
- **Type safety**: Leverage TypeScript integration for compile-time content validation.
|
|
1265
|
+
- **Build-time optimisation**: Use Intlayer's build tools for automatic tree-shaking and bundle optimisation.
|
|
1266
|
+
- **Integrated tooling**: Take advantage of built-in routing, SEO helpers, and visual editor support.
|
|
1267
|
+
|
|
1268
|
+
</Tab>
|
|
1269
|
+
</Tabs>
|
|
1270
|
+
|
|
1271
|
+
---
|
|
1272
|
+
|
|
1180
1273
|
## And the winner is…
|
|
1181
1274
|
|
|
1182
1275
|
It’s not simple. Each option has trade-offs. Here’s how I see it:
|
|
@@ -139,6 +139,20 @@ We evaluate:
|
|
|
139
139
|
|
|
140
140
|
---
|
|
141
141
|
|
|
142
|
+
## Interoperability with `react-intl` and `react-i18next`
|
|
143
|
+
|
|
144
|
+
`intlayer` can also help to manage your `react-intl` and `react-i18next` namespaces.
|
|
145
|
+
|
|
146
|
+
Using `intlayer`, you can declare your content in the format of your favourite i18n library, and intlayer will generate your namespaces in the location of your choice (example: `/messages/{{locale}}/{{namespace}}.json`).
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## GitHub STARs
|
|
151
|
+
|
|
152
|
+
GitHub stars are a strong indicator of a project's popularity, community trust, and long-term relevance. While not a direct measure of technical quality, they reflect how many developers find the project useful, follow its progress, and are likely to adopt it. For estimating the value of a project, stars help compare traction across alternatives and provide insights into ecosystem growth.
|
|
153
|
+
|
|
154
|
+
[](https://www.star-history.com/#formatjs/formatjs&i18next/react-i18next&aymericzip/intlayer)
|
|
155
|
+
|
|
142
156
|
## Conclusion
|
|
143
157
|
|
|
144
158
|
All three libraries localise React effectively. The differentiator is how much **infrastructure** you must build to reach a **safe, scalable** setup:
|
|
@@ -251,6 +251,22 @@ This approach:
|
|
|
251
251
|
|
|
252
252
|
---
|
|
253
253
|
|
|
254
|
+
## Interoperability with vue-i18n
|
|
255
|
+
|
|
256
|
+
`intlayer` can also help to manage your `vue-i18n` namespaces.
|
|
257
|
+
|
|
258
|
+
Using `intlayer`, you can declare your content in the format of your favourite i18n library, and intlayer will generate your namespaces in the location of your choice (example: `/messages/{{locale}}/{{namespace}}.json`).
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
## GitHub STARs
|
|
263
|
+
|
|
264
|
+
GitHub stars are a strong indicator of a project's popularity, community trust, and long-term relevance. While not a direct measure of technical quality, they reflect how many developers find the project useful, follow its progress, and are likely to adopt it. For estimating the value of a project, stars help compare traction across alternatives and provide insights into ecosystem growth.
|
|
265
|
+
|
|
266
|
+
[](https://www.star-history.com/#intlify/vue-i18n&aymericzip/intlayer)
|
|
267
|
+
|
|
268
|
+
---
|
|
269
|
+
|
|
254
270
|
## Conclusion
|
|
255
271
|
|
|
256
272
|
Both **vue-i18n** and **Intlayer** localise Vue apps well. The difference is **how much you must build yourself** to achieve a robust, scalable setup:
|
|
@@ -34,6 +34,10 @@ author: aymericzip
|
|
|
34
34
|
|
|
35
35
|
<iframe title="Cómo automatizar tus traducciones JSON de i18next usando Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/MpGMxniDHNg?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
36
36
|
|
|
37
|
+
## Tabla de contenidos
|
|
38
|
+
|
|
39
|
+
<TOC/>
|
|
40
|
+
|
|
37
41
|
## ¿Qué es Intlayer?
|
|
38
42
|
|
|
39
43
|
**Intlayer** es una biblioteca innovadora y de código abierto para la internacionalización, diseñada para abordar las limitaciones de las soluciones i18n tradicionales. Ofrece un enfoque moderno para la gestión de contenido en aplicaciones JavaScript.
|
|
@@ -34,17 +34,6 @@ author: aymericzip
|
|
|
34
34
|
|
|
35
35
|
<TOC/>
|
|
36
36
|
|
|
37
|
-
## ¿Qué es next-i18next?
|
|
38
|
-
|
|
39
|
-
**next-i18next** es uno de los frameworks de internacionalización (i18n) más populares para aplicaciones Next.js. Construido sobre el poderoso ecosistema de **i18next**, proporciona una solución integral para gestionar traducciones, localización y cambio de idioma en proyectos Next.js.
|
|
40
|
-
|
|
41
|
-
Sin embargo, next-i18next presenta algunos desafíos:
|
|
42
|
-
|
|
43
|
-
- **Configuración compleja**: Configurar next-i18next requiere múltiples archivos de configuración y una configuración cuidadosa de las instancias i18n tanto del lado del servidor como del cliente.
|
|
44
|
-
- **Traducciones dispersas**: Los archivos de traducción suelen almacenarse en directorios separados de los componentes, lo que dificulta mantener la consistencia.
|
|
45
|
-
- **Gestión manual de namespaces**: Los desarrolladores deben gestionar manualmente los namespaces y asegurar la correcta carga de los recursos de traducción.
|
|
46
|
-
- **Seguridad de tipos limitada**: El soporte para TypeScript requiere configuración adicional y no proporciona generación automática de tipos para las traducciones.
|
|
47
|
-
|
|
48
37
|
## ¿Qué es Intlayer?
|
|
49
38
|
|
|
50
39
|
**Intlayer** es una biblioteca innovadora y de código abierto para internacionalización, diseñada para abordar las deficiencias de las soluciones i18n tradicionales. Ofrece un enfoque moderno para la gestión de contenido en aplicaciones Next.js.
|
|
@@ -29,6 +29,10 @@ author: aymericzip
|
|
|
29
29
|
|
|
30
30
|
<iframe title="Cómo automatizar tus traducciones JSON de next-intl usando Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/MpGMxniDHNg?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
31
31
|
|
|
32
|
+
# Tabla de contenidos
|
|
33
|
+
|
|
34
|
+
<TOC/>
|
|
35
|
+
|
|
32
36
|
## ¿Qué es Intlayer?
|
|
33
37
|
|
|
34
38
|
**Intlayer** es una biblioteca innovadora y de código abierto para la internacionalización, diseñada para abordar las limitaciones de las soluciones tradicionales de i18n. Ofrece un enfoque moderno para la gestión de contenido en aplicaciones Next.js.
|
|
@@ -282,34 +282,6 @@ Aquí un ejemplo del impacto de la optimización del tamaño del paquete usando
|
|
|
282
282
|
|
|
283
283
|
---
|
|
284
284
|
|
|
285
|
-
## DX, herramientas y mantenimiento
|
|
286
|
-
|
|
287
|
-
<Columns>
|
|
288
|
-
<Column>
|
|
289
|
-
|
|
290
|
-
**next-intl**
|
|
291
|
-
|
|
292
|
-
- Comúnmente se usa junto con plataformas externas de localización y flujos editoriales.
|
|
293
|
-
|
|
294
|
-
</Column>
|
|
295
|
-
<Column>
|
|
296
|
-
|
|
297
|
-
**next-i18next**
|
|
298
|
-
|
|
299
|
-
- Comúnmente se usa junto con plataformas externas de localización y flujos editoriales.
|
|
300
|
-
|
|
301
|
-
</Column>
|
|
302
|
-
<Column>
|
|
303
|
-
|
|
304
|
-
**intlayer**
|
|
305
|
-
|
|
306
|
-
- Incluye un **Editor Visual gratuito** y un **CMS opcional** (compatible con Git o externalizado), además de una **extensión para VSCode** y **traducciones asistidas por IA** utilizando tus propias claves de proveedor.
|
|
307
|
-
|
|
308
|
-
</Column>
|
|
309
|
-
</Columns>
|
|
310
|
-
|
|
311
|
-
**Por qué es importante:** Reduce los costos operativos y acorta el ciclo entre desarrolladores y autores de contenido.
|
|
312
|
-
|
|
313
285
|
## Integración con plataformas de localización (TMS)
|
|
314
286
|
|
|
315
287
|
Las grandes organizaciones suelen depender de Sistemas de Gestión de Traducción (TMS) como **Crowdin**, **Phrase**, **Lokalise**, **Localizely** o **Localazy**.
|
|
@@ -1281,6 +1253,127 @@ export default robots;
|
|
|
1281
1253
|
|
|
1282
1254
|
---
|
|
1283
1255
|
|
|
1256
|
+
### Middleware para enrutamiento de idiomas
|
|
1257
|
+
|
|
1258
|
+
<Tabs defaultTab="next-intl" group='techno'>
|
|
1259
|
+
<Tab label="next-i18next" value="next-i18next">
|
|
1260
|
+
|
|
1261
|
+
Añade un middleware para manejar la detección de idiomas y el enrutamiento:
|
|
1262
|
+
|
|
1263
|
+
```ts fileName="src/middleware.ts"
|
|
1264
|
+
import { NextResponse, type NextRequest } from "next/server";
|
|
1265
|
+
import { defaultLocale, locales } from "@/i18n.config";
|
|
1266
|
+
|
|
1267
|
+
const PUBLIC_FILE = /\.[^/]+$/; // excluir archivos con extensiones
|
|
1268
|
+
|
|
1269
|
+
export function middleware(request: NextRequest) {
|
|
1270
|
+
const { pathname } = request.nextUrl;
|
|
1271
|
+
|
|
1272
|
+
if (
|
|
1273
|
+
pathname.startsWith("/_next") ||
|
|
1274
|
+
pathname.startsWith("/api") ||
|
|
1275
|
+
pathname.startsWith("/static") ||
|
|
1276
|
+
PUBLIC_FILE.test(pathname)
|
|
1277
|
+
) {
|
|
1278
|
+
return;
|
|
1279
|
+
}
|
|
1280
|
+
|
|
1281
|
+
const hasLocale = locales.some(
|
|
1282
|
+
(l) => pathname === "/" + l || pathname.startsWith("/" + l + "/")
|
|
1283
|
+
);
|
|
1284
|
+
if (!hasLocale) {
|
|
1285
|
+
const locale = defaultLocale;
|
|
1286
|
+
const url = request.nextUrl.clone();
|
|
1287
|
+
url.pathname = "/" + locale + (pathname === "/" ? "" : pathname);
|
|
1288
|
+
return NextResponse.redirect(url);
|
|
1289
|
+
}
|
|
1290
|
+
}
|
|
1291
|
+
|
|
1292
|
+
export const config = {
|
|
1293
|
+
matcher: [
|
|
1294
|
+
// Coincide con todas las rutas excepto las que comienzan con estas y archivos con extensión
|
|
1295
|
+
"/((?!api|_next|static|.*\\..*).*)",
|
|
1296
|
+
],
|
|
1297
|
+
};
|
|
1298
|
+
```
|
|
1299
|
+
|
|
1300
|
+
</Tab>
|
|
1301
|
+
<Tab label="next-intl" value="next-intl">
|
|
1302
|
+
|
|
1303
|
+
Añade un middleware para manejar la detección de idiomas y el enrutamiento:
|
|
1304
|
+
|
|
1305
|
+
```ts fileName="src/middleware.ts"
|
|
1306
|
+
import createMiddleware from "next-intl/middleware";
|
|
1307
|
+
import { locales, defaultLocale } from "@/i18n";
|
|
1308
|
+
|
|
1309
|
+
export default createMiddleware({
|
|
1310
|
+
locales: [...locales],
|
|
1311
|
+
defaultLocale,
|
|
1312
|
+
localeDetection: true,
|
|
1313
|
+
});
|
|
1314
|
+
|
|
1315
|
+
export const config = {
|
|
1316
|
+
// Omitir API, elementos internos de Next y activos estáticos
|
|
1317
|
+
matcher: ["/((?!api|_next|.*\\..*).*)"],
|
|
1318
|
+
};
|
|
1319
|
+
```
|
|
1320
|
+
|
|
1321
|
+
</Tab>
|
|
1322
|
+
<Tab label="intlayer" value="intlayer">
|
|
1323
|
+
|
|
1324
|
+
Intlayer proporciona manejo de middleware incorporado a través de la configuración del paquete `next-intlayer`.
|
|
1325
|
+
|
|
1326
|
+
```ts fileName="src/middleware.ts"
|
|
1327
|
+
import { intlayerProxy } from "next-intlayer/proxy";
|
|
1328
|
+
|
|
1329
|
+
export const middleware = intlayerProxy();
|
|
1330
|
+
|
|
1331
|
+
// aplica este middleware solo a archivos en el directorio app
|
|
1332
|
+
export const config = {
|
|
1333
|
+
matcher: "/((?!api|_next|static|.*\\..*).*)",
|
|
1334
|
+
};
|
|
1335
|
+
```
|
|
1336
|
+
|
|
1337
|
+
La configuración del middleware está centralizada en el archivo `intlayer.config.ts`.
|
|
1338
|
+
|
|
1339
|
+
</Tab>
|
|
1340
|
+
</Tabs>
|
|
1341
|
+
|
|
1342
|
+
### Lista de verificación de configuración y buenas prácticas
|
|
1343
|
+
|
|
1344
|
+
<Tabs defaultTab="next-intl" group='techno'>
|
|
1345
|
+
<Tab label="next-i18next" value="next-i18next">
|
|
1346
|
+
|
|
1347
|
+
- Asegúrate de que `lang` y `dir` estén configurados en el `<html>` raíz en `src/app/[locale]/layout.tsx`.
|
|
1348
|
+
- Divide las traducciones en namespaces (por ejemplo `common.json`, `about.json`) bajo `src/locales/<locale>/`.
|
|
1349
|
+
- Carga solo los namespaces necesarios en componentes cliente usando `useTranslation('<ns>')` y delimitando `I18nProvider` con los mismos namespaces.
|
|
1350
|
+
- Mantén las páginas estáticas cuando sea posible: exporta `export const dynamic = 'force-static'` en páginas; establece `dynamicParams = false` e implementa `generateStaticParams`.
|
|
1351
|
+
- Utiliza componentes server síncronos anidados bajo límites cliente pasando strings ya computados o la función `t` y `locale`.
|
|
1352
|
+
- Para SEO, establece `alternates.languages` en metadata, lista URLs localizadas en `sitemap.ts` y deshabilita rutas localizadas duplicadas en `robots.ts`.
|
|
1353
|
+
- Prefiere formateadores conscientes de locale (por ejemplo, `Intl.NumberFormat(locale)`) y memorízalos en el cliente si usas React < 19.
|
|
1354
|
+
|
|
1355
|
+
</Tab>
|
|
1356
|
+
<Tab label="next-intl" value="next-intl">
|
|
1357
|
+
|
|
1358
|
+
- **Configura `lang` y `dir` en html**: En `src/app/[locale]/layout.tsx`, calcula `dir` vía `getLocaleDirection(locale)` y establece `<html lang={locale} dir={dir}>`.
|
|
1359
|
+
- **Divide mensajes por namespace**: Organiza JSON por locale y namespace (por ejemplo, `common.json`, `about.json`).
|
|
1360
|
+
- **Minimiza la carga del cliente**: En páginas, envía solo los namespaces necesarios a `NextIntlClientProvider` (por ejemplo, `pick(messages, ['common', 'about'])`).
|
|
1361
|
+
- **Prefiere páginas estáticas**: Exporta `export const dynamic = 'force-static'` y genera parámetros estáticos para todos los `locales`.
|
|
1362
|
+
- **Componentes server síncronos**: Mantén los componentes server síncronos pasando strings precomputados (etiquetas traducidas, números formateados) en lugar de llamadas asincrónicas o funciones no serializables.
|
|
1363
|
+
|
|
1364
|
+
</Tab>
|
|
1365
|
+
<Tab label="intlayer" value="intlayer">
|
|
1366
|
+
|
|
1367
|
+
- **Contenido modular**: Co-localiza diccionarios de contenido con componentes usando archivos `.content.{ts|js|json}`.
|
|
1368
|
+
- **Seguridad de tipos**: Aprovecha la integración de TypeScript para validación de contenido en tiempo de compilación.
|
|
1369
|
+
- **Optimización en tiempo de compilación**: Utiliza las herramientas de compilación de Intlayer para tree-shaking automático y optimización de bundling.
|
|
1370
|
+
- **Herramientas integradas**: Aprovecha el soporte incorporado para enrutamiento, helpers de SEO y editor visual.
|
|
1371
|
+
|
|
1372
|
+
</Tab>
|
|
1373
|
+
</Tabs>
|
|
1374
|
+
|
|
1375
|
+
---
|
|
1376
|
+
|
|
1284
1377
|
## Y el ganador es…
|
|
1285
1378
|
|
|
1286
1379
|
No es sencillo. Cada opción tiene sus ventajas y desventajas. Así es como lo veo:
|
|
@@ -341,3 +341,16 @@ Y si también estás experimentando con RAG, me encantaría saber cómo lo está
|
|
|
341
341
|
</Step>
|
|
342
342
|
|
|
343
343
|
</Steps>
|
|
344
|
+
## Conclusión
|
|
345
|
+
|
|
346
|
+
RAG es una de las formas más simples y poderosas de hacer que los LLMs sean prácticos. Al combinar **retrieval + generation**, puedes convertir documentos estáticos en un **asistente inteligente** y, al mismo tiempo, obtener un flujo continuo de información del producto.
|
|
347
|
+
|
|
348
|
+
Para mí, este proyecto demostró que RAG no es solo un truco técnico. Es una forma de transformar la documentación en:
|
|
349
|
+
|
|
350
|
+
- un sistema de soporte interactivo
|
|
351
|
+
- un canal de retroalimentación
|
|
352
|
+
- una herramienta de estrategia de producto
|
|
353
|
+
|
|
354
|
+
👉 [Prueba la demo aquí](https://intlayer.org/doc/why) 👉 [Consulta la plantilla de código en GitHub](https://github.com/aymericzip/smart_doc_RAG)
|
|
355
|
+
|
|
356
|
+
Y si también estás experimentando con RAG, me encantaría saber cómo lo estás utilizando.
|
|
@@ -137,6 +137,14 @@ Evaluamos:
|
|
|
137
137
|
|
|
138
138
|
---
|
|
139
139
|
|
|
140
|
+
## Interoperabilidad con `react-intl` y `react-i18next`
|
|
141
|
+
|
|
142
|
+
`intlayer` también puede ayudarte a gestionar tus namespaces de `react-intl` y `react-i18next`.
|
|
143
|
+
|
|
144
|
+
Usando `intlayer`, puedes declarar tu contenido en el formato de tu librería i18n favorita, e intlayer generará tus namespaces en la ubicación que elijas (ejemplo: `/messages/{{locale}}/{{namespace}}.json`).
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
140
148
|
## Notas prácticas para la migración (react-intl / react-i18next → Intlayer)
|
|
141
149
|
|
|
142
150
|
- **Migra de forma incremental**: Comienza con una funcionalidad o ruta; mantén los catálogos heredados en paralelo durante la transición.
|
|
@@ -249,6 +249,14 @@ Este enfoque:
|
|
|
249
249
|
|
|
250
250
|
---
|
|
251
251
|
|
|
252
|
+
## Interoperabilidad con vue-i18n
|
|
253
|
+
|
|
254
|
+
`intlayer` también puede ayudarte a gestionar tus namespaces de `vue-i18n`.
|
|
255
|
+
|
|
256
|
+
Usando `intlayer`, puedes declarar tu contenido en el formato de tu librería i18n favorita, e intlayer generará tus namespaces en la ubicación de tu elección (ejemplo: `/messages/{{locale}}/{{namespace}}.json`).
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
|
|
252
260
|
## Notas prácticas para la migración (vue-i18n → Intlayer)
|
|
253
261
|
|
|
254
262
|
- **Comience por función**: Mueva una ruta/vista/componente a la vez a los diccionarios locales de Intlayer.
|
package/blog/fr/i18n_meaning.md
CHANGED
|
@@ -22,3 +22,98 @@ author: aymericzip
|
|
|
22
22
|

|
|
23
23
|
|
|
24
24
|
## Comprendre la signification de "i18n"
|
|
25
|
+
|
|
26
|
+
## La Signification Fondamentale de l'i18n en Pratique
|
|
27
|
+
|
|
28
|
+
Comprendre la signification de l'i18n va au-delà de simplement connaître ce que l'acronyme signifie. Il s'agit de reconnaître les principes architecturaux qui le sous-tendent. Quand un projet est correctement « internationalisé », cela signifie que les développeurs ont découplé le contenu du code.
|
|
29
|
+
|
|
30
|
+
Au lieu de coder en dur le texte dans l'application comme ceci :
|
|
31
|
+
|
|
32
|
+
```javascript
|
|
33
|
+
<button>Submit</button>
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Une application prête pour l'i18n utilise des clés de traduction ou des variables :
|
|
37
|
+
|
|
38
|
+
```javascript
|
|
39
|
+
<button>{t("submit_button")}</button>
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Cela garantit que l'application peut charger dynamiquement le dictionnaire de langue correct (par exemple, anglais, espagnol, japonais) en fonction des préférences de l'utilisateur, sans réécrire le composant.
|
|
43
|
+
|
|
44
|
+
## Pourquoi la signification de l'i18n est cruciale pour votre entreprise
|
|
45
|
+
|
|
46
|
+
Comprendre la **signification de l'i18n** n'est que la première étape. Comprendre _pourquoi_ c'est si critique pour les produits numériques modernes est ce qui distingue les applications mondiales réussies des applications locales.
|
|
47
|
+
|
|
48
|
+
### Surmonter les barrières linguistiques
|
|
49
|
+
|
|
50
|
+
L'application la plus évidente du sens de l'i18n est la traduction. En internationalisant votre application dès le départ, vous construisez une base qui vous permet de traduire votre interface dans des dizaines de langues sans effort. C'est essentiel pour déverrouiller de nouveaux marchés mondiaux.
|
|
51
|
+
|
|
52
|
+
### Adaptation culturelle et régionale
|
|
53
|
+
|
|
54
|
+
La signification de l'i18n va au-delà de la langue. La véritable internationalisation supporte :
|
|
55
|
+
|
|
56
|
+
- **Formats de date et heure :** Affichage de `MM/DD/YYYY` pour les utilisateurs américains par rapport à `DD/MM/YYYY` pour les utilisateurs européens.
|
|
57
|
+
- **Formatage des nombres :** Reconnaissance que `1,000.50` aux États-Unis est souvent écrit comme `1.000,50` dans certaines parties de l'Europe.
|
|
58
|
+
- **Devises :** Adaptation de `$99.00` par rapport à `99,00 €`.
|
|
59
|
+
- **Directionnalité du texte :** Support des langues de droite à gauche (RTL) comme l'arabe et l'hébreu.
|
|
60
|
+
|
|
61
|
+
### Performances SEO améliorées
|
|
62
|
+
|
|
63
|
+
Les moteurs de recherche donnent la priorité au contenu pertinent pour la langue et la région de l'utilisateur. L'application des principes derrière la signification i18n vous permet de structurer votre site web (par exemple, en utilisant des balises `hreflang`, des URLs localisées) pour vous classer plus haut dans plusieurs pays, générant du trafic organique mondial.
|
|
64
|
+
|
|
65
|
+
## Internationalization (i18n) vs. Localization (l10n)
|
|
66
|
+
|
|
67
|
+
Pour bien comprendre la **signification de i18n**, vous devez la différencier de **l10n** (localization).
|
|
68
|
+
|
|
69
|
+
- **i18n (Internationalization) :** La _préparation technique_ et le cadre de conception structurelle qui rend l'adaptation possible. Exemples : supporter l'encodage UTF-8, abstraire les chaînes de texte et rendre les mises en page UI flexibles pour les mots plus longs.
|
|
70
|
+
- **l10n (Localization) :** L'_adaptation réelle_ du produit pour une locale spécifique. Exemples : traduire le texte anglais en français, ajuster les images pour respecter les normes culturelles et définir la devise locale.
|
|
71
|
+
|
|
72
|
+
Pensez à **i18n** comme construire une voiture où le volant peut être déplacé soit à gauche soit à droite. **l10n** est l'acte de déplacer effectivement le volant vers la droite pour vendre la voiture au Royaume-Uni.
|
|
73
|
+
|
|
74
|
+
## Idées reçues courantes sur la signification de l'i18n
|
|
75
|
+
|
|
76
|
+
1. **« L'i18n signifie simplement traduction. »**
|
|
77
|
+
Bien que la traduction soit une grande partie du résultat final, la véritable signification de l'i18n englobe le formatage, les règles de pluralisation, la direction du texte et la préparation architecturale.
|
|
78
|
+
2. **« Nous pouvons ajouter l'i18n plus tard. »**
|
|
79
|
+
Adapter une application à l'internationalisation rétrospectivement est notorieusement difficile. Les chaînes codées en dur, les composants UI rigides et les formats de date incompatibles peuvent entraîner une dette technique massive. Planifier l'i18n dès le départ est une meilleure pratique fondamentale.
|
|
80
|
+
|
|
81
|
+
## Comment implémenter i18n efficacement
|
|
82
|
+
|
|
83
|
+

|
|
84
|
+
|
|
85
|
+
Maintenant que nous avons établi la véritable **signification de i18n**, comment l'appliquer ?
|
|
86
|
+
|
|
87
|
+
- **Utilisez un framework i18n établi :** Ne réinventez pas la roue. Que vous utilisiez React, Vue, Next.js ou du JavaScript pur, il existe des bibliothèques i18n spécifiques conçues pour gérer les tâches lourdes (comme la pluralisation et l'interpolation).
|
|
88
|
+
- **Abstraire tout texte destiné à l'utilisateur :** Assurez-vous qu'aucun texte codé en dur n'existe dans vos composants UI.
|
|
89
|
+
- **Employez un système robuste de gestion des traductions :** Des outils comme **Intlayer** comblent le fossé entre les développeurs et les traducteurs. Intlayer agit comme un CMS headless étroitement intégré à votre codebase, permettant aux gestionnaires de contenu de mettre à jour les traductions visuellement sans qu'un développeur ait besoin de déclencher une nouvelle compilation.
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
### Voir la liste des bibliothèques et outils i18n par technologie
|
|
94
|
+
|
|
95
|
+
Si vous recherchez une liste des bibliothèques et outils i18n par technologie, consultez les ressources suivantes :
|
|
96
|
+
|
|
97
|
+
### Pour les systèmes de gestion de contenu (CMS)
|
|
98
|
+
|
|
99
|
+
- WordPress : [Voir la liste des bibliothèques et outils i18n](https://github.com/aymericzip/intlayer/blob/main/docs/blog/fr/list_i18n_technologies/CMS/wordpress.md)
|
|
100
|
+
- Wix : [Voir la liste des bibliothèques et outils i18n](https://github.com/aymericzip/intlayer/blob/main/docs/blog/fr/list_i18n_technologies/CMS/wix.md)
|
|
101
|
+
- Drupal : [Voir la liste des bibliothèques et outils i18n](https://github.com/aymericzip/intlayer/blob/main/docs/blog/fr/list_i18n_technologies/CMS/drupal.md)
|
|
102
|
+
|
|
103
|
+
### Pour les applications JavaScript (Frontend)
|
|
104
|
+
|
|
105
|
+
- React: [Voir la liste des bibliothèques et outils i18n](https://github.com/aymericzip/intlayer/blob/main/docs/blog/fr/list_i18n_technologies/frameworks/react.md)
|
|
106
|
+
- Angular: [Voir la liste des bibliothèques et outils i18n](https://github.com/aymericzip/intlayer/blob/main/docs/blog/fr/list_i18n_technologies/frameworks/angular.md)
|
|
107
|
+
- Vue: [Voir la liste des bibliothèques et outils i18n](https://github.com/aymericzip/intlayer/blob/main/docs/blog/fr/list_i18n_technologies/frameworks/vue.md)
|
|
108
|
+
- Svelte: [Voir la liste des bibliothèques et outils i18n](https://github.com/aymericzip/intlayer/blob/main/docs/blog/fr/list_i18n_technologies/frameworks/svelte.md)
|
|
109
|
+
- React Native : [Voir la liste des bibliothèques et outils i18n](https://github.com/aymericzip/intlayer/blob/main/docs/blog/fr/list_i18n_technologies/frameworks/react-native.md)
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Conclusion
|
|
114
|
+
|
|
115
|
+
La **signification de l'i18n** est un concept fondamental pour toute entreprise numérique moderne visant un impact mondial. Bien au-delà d'être simplement une abréviation technologique amusante pour « internationalization », l'i18n représente l'architecture technique requise pour adapter en toute transparence votre logiciel à diverses langues, cultures et normes régionales.
|
|
116
|
+
|
|
117
|
+
En comprenant la signification de l'i18n et en adoptant ses principes dès le début de votre cycle de développement, vous économisez un temps d'ingénierie considérable, évitez la dette technique future et assurez que votre application offre une expérience native et accueillante aux utilisateurs du monde entier.
|
|
118
|
+
|
|
119
|
+
Que vous construisiez une application mobile, une plateforme SaaS ou un outil d'entreprise, en embrassant la véritable signification de l'i18n, vous assurez que votre produit puisse s'adapter et plaire aux utilisateurs du monde entier, sans besoin de refonte constante du code. En tirant parti des meilleures pratiques, des frameworks robustes et de la déclaration de contenu localisé avec des plateformes comme Intlayer, les équipes produit peuvent fournir des expériences logicielles véritablement mondiales.
|
|
@@ -34,17 +34,6 @@ author: aymericzip
|
|
|
34
34
|
|
|
35
35
|
<TOC/>
|
|
36
36
|
|
|
37
|
-
## Qu'est-ce que next-i18next ?
|
|
38
|
-
|
|
39
|
-
**next-i18next** est l'un des frameworks d'internationalisation (i18n) les plus populaires pour les applications Next.js. Construit sur l'écosystème puissant de **i18next**, il offre une solution complète pour gérer les traductions, la localisation et le changement de langue dans les projets Next.js.
|
|
40
|
-
|
|
41
|
-
Cependant, next-i18next présente certains défis :
|
|
42
|
-
|
|
43
|
-
- **Configuration complexe** : La mise en place de next-i18next nécessite plusieurs fichiers de configuration et une configuration minutieuse des instances i18n côté serveur et côté client.
|
|
44
|
-
- **Traductions dispersées** : Les fichiers de traduction sont généralement stockés dans des répertoires séparés des composants, ce qui complique le maintien de la cohérence.
|
|
45
|
-
- **Gestion manuelle des namespaces** : Les développeurs doivent gérer manuellement les namespaces et s'assurer du chargement correct des ressources de traduction.
|
|
46
|
-
- **Sécurité de type limitée** : Le support de TypeScript nécessite une configuration supplémentaire et ne fournit pas de génération automatique de types pour les traductions.
|
|
47
|
-
|
|
48
37
|
## Qu'est-ce qu'Intlayer ?
|
|
49
38
|
|
|
50
39
|
**Intlayer** est une bibliothèque d'internationalisation innovante et open-source conçue pour pallier les lacunes des solutions i18n traditionnelles. Elle propose une approche moderne de la gestion de contenu dans les applications Next.js.
|
|
@@ -29,6 +29,10 @@ author: aymericzip
|
|
|
29
29
|
|
|
30
30
|
<iframe title="Comment automatiser vos traductions JSON next-intl avec Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/MpGMxniDHNg?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
31
31
|
|
|
32
|
+
# Table of Contents
|
|
33
|
+
|
|
34
|
+
<TOC/>
|
|
35
|
+
|
|
32
36
|
## Qu'est-ce qu'Intlayer ?
|
|
33
37
|
|
|
34
38
|
**Intlayer** est une bibliothèque d'internationalisation innovante et open-source conçue pour pallier les limites des solutions i18n traditionnelles. Elle propose une approche moderne de la gestion de contenu dans les applications Next.js.
|
|
@@ -40,14 +40,6 @@ Découvrez une comparaison concrète avec react-i18next dans notre article de bl
|
|
|
40
40
|
|
|
41
41
|
## Pourquoi combiner Intlayer avec react-i18next ?
|
|
42
42
|
|
|
43
|
-
Alors qu'Intlayer propose une excellente solution i18n autonome (voir notre [guide d'intégration React](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/intlayer_with_vite+react.md)), vous pourriez vouloir la combiner avec react-i18next pour plusieurs raisons :
|
|
44
|
-
|
|
45
|
-
**Intlayer** est une bibliothèque d'internationalisation innovante et open-source conçue pour pallier les lacunes des solutions i18n traditionnelles. Elle offre une approche moderne de la gestion de contenu dans les applications React.
|
|
46
|
-
|
|
47
|
-
Consultez une comparaison concrète avec react-i18next dans notre article de blog [react-i18next vs. react-intl vs. Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/blog/fr/react-i18next_vs_react-intl_vs_intlayer.md).
|
|
48
|
-
|
|
49
|
-
## Pourquoi combiner Intlayer avec react-i18next ?
|
|
50
|
-
|
|
51
43
|
Bien qu'Intlayer fournisse une excellente solution i18n autonome (voir notre [guide d'intégration React](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/intlayer_with_vite+react.md)), vous pourriez vouloir le combiner avec react-i18next pour plusieurs raisons :
|
|
52
44
|
|
|
53
45
|
1. **Base de code existante** : Vous disposez d'une implémentation react-i18next établie et souhaitez migrer progressivement vers la meilleure expérience développeur d'Intlayer.
|
|
@@ -19,8 +19,6 @@ slugs:
|
|
|
19
19
|
author: aymericzip
|
|
20
20
|
---
|
|
21
21
|
|
|
22
|
-
# Explorer les solutions i18n pour traduire votre site Web Angular
|
|
23
|
-
|
|
24
22
|
## Dans le monde interconnecté d'aujourd'hui, offrir votre site Web en plusieurs langues peut considérablement élargir votre portée et améliorer l'expérience utilisateur. Pour les développeurs travaillant avec Angular, la mise en œuvre de l'internationalisation (i18n) est cruciale pour gérer efficacement les traductions tout en préservant la structure de l'application, le référencement et la performance. Dans cet article, nous explorerons diverses approches i18n - des solutions intégrées d'Angular aux bibliothèques tiers populaires - pour vous aider à déterminer la meilleure option pour votre projet.
|
|
25
23
|
|
|
26
24
|

|