@intlayer/docs 9.4.3 → 9.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -2
- package/blog/ar/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/ar/i18n_meaning.md +0 -4
- package/blog/ar/i18n_using_next-i18next.md +0 -21
- package/blog/ar/i18n_using_next-intl.md +0 -18
- package/blog/ar/index.md +0 -10
- package/blog/ar/internationalization_and_SEO.md +0 -24
- package/blog/ar/intlayer_with_i18next.md +0 -3
- package/blog/ar/intlayer_with_next-i18next.md +0 -5
- package/blog/ar/intlayer_with_next-intl.md +0 -3
- package/blog/ar/intlayer_with_react-i18next.md +0 -3
- package/blog/ar/intlayer_with_react-intl.md +0 -3
- package/blog/ar/intlayer_with_vue-i18n.md +0 -5
- package/blog/ar/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/ar/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/ar/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/ar/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/ar/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/ar/next-i18next_vs_next-intl_vs_intlayer.md +6 -33
- package/blog/ar/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/ar/rag_powered_documentation_assistant.md +0 -13
- package/blog/ar/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/ar/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/ar/transform_existing_vite_react_app_using_compiler.md +352 -0
- package/blog/ar/vue-i18n_vs_intlayer.md +0 -30
- package/blog/ar/what_is_internationalization.md +0 -8
- package/blog/de/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/de/i18n_meaning.md +0 -4
- package/blog/de/i18n_using_next-i18next.md +0 -21
- package/blog/de/i18n_using_next-intl.md +0 -18
- package/blog/de/index.md +0 -10
- package/blog/de/internationalization_and_SEO.md +0 -24
- package/blog/de/intlayer_with_i18next.md +0 -2
- package/blog/de/intlayer_with_next-i18next.md +0 -4
- package/blog/de/intlayer_with_next-intl.md +0 -3
- package/blog/de/intlayer_with_react-i18next.md +0 -3
- package/blog/de/intlayer_with_react-intl.md +0 -3
- package/blog/de/intlayer_with_vue-i18n.md +0 -5
- package/blog/de/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/de/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/de/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/de/list_i18n_technologies/frameworks/svelte.md +0 -12
- package/blog/de/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/de/next-i18next_vs_next-intl_vs_intlayer.md +6 -31
- package/blog/de/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/de/react-i18next_vs_react-intl_vs_intlayer.md +0 -24
- package/blog/de/transform_existing_nextjs_app_using_compiler.md +294 -0
- package/blog/de/transform_existing_vite_react_app_using_compiler.md +353 -0
- package/blog/de/vue-i18n_vs_intlayer.md +0 -30
- package/blog/de/what_is_internationalization.md +0 -8
- package/blog/en/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/en/i18n_meaning.md +0 -4
- package/blog/en/i18n_using_next-i18next.md +0 -21
- package/blog/en/i18n_using_next-intl.md +0 -18
- package/blog/en/index.md +0 -10
- package/blog/en/internationalization_and_SEO.md +0 -24
- package/blog/en/intlayer_with_i18next.md +0 -3
- package/blog/en/intlayer_with_next-i18next.md +0 -5
- package/blog/en/intlayer_with_next-intl.md +0 -3
- package/blog/en/intlayer_with_react-i18next.md +0 -3
- package/blog/en/intlayer_with_react-intl.md +0 -3
- package/blog/en/intlayer_with_vue-i18n.md +0 -5
- package/blog/en/list_i18n_technologies/frameworks/react-native.md +1 -1
- package/blog/en/next-i18next_vs_next-intl_vs_intlayer.md +7 -31
- package/blog/en/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/en/rag_powered_documentation_assistant.md +0 -12
- package/blog/en/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/en/transform_existing_nextjs_app_using_compiler.md +299 -0
- package/blog/en/transform_existing_vite_react_app_using_compiler.md +351 -0
- package/blog/en/vue-i18n_vs_intlayer.md +0 -30
- package/blog/en/what_is_internationalization.md +0 -8
- package/blog/en-GB/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/en-GB/i18n_meaning.md +0 -4
- package/blog/en-GB/i18n_using_next-i18next.md +0 -21
- package/blog/en-GB/i18n_using_next-intl.md +0 -18
- package/blog/en-GB/index.md +0 -10
- package/blog/en-GB/internationalization_and_SEO.md +0 -24
- package/blog/en-GB/intlayer_with_i18next.md +0 -2
- package/blog/en-GB/intlayer_with_next-i18next.md +0 -4
- package/blog/en-GB/intlayer_with_next-intl.md +0 -2
- package/blog/en-GB/intlayer_with_react-i18next.md +0 -2
- package/blog/en-GB/intlayer_with_react-intl.md +0 -2
- package/blog/en-GB/intlayer_with_vue-i18n.md +0 -4
- package/blog/en-GB/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/en-GB/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/en-GB/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/en-GB/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/en-GB/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +6 -31
- package/blog/en-GB/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/en-GB/rag_powered_documentation_assistant.md +0 -12
- package/blog/en-GB/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/en-GB/transform_existing_nextjs_app_using_compiler.md +294 -0
- package/blog/en-GB/transform_existing_vite_react_app_using_compiler.md +357 -0
- package/blog/en-GB/vue-i18n_vs_intlayer.md +0 -30
- package/blog/en-GB/what_is_internationalization.md +0 -8
- package/blog/es/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/es/i18n_meaning.md +0 -4
- package/blog/es/i18n_using_next-i18next.md +0 -21
- package/blog/es/i18n_using_next-intl.md +0 -18
- package/blog/es/index.md +0 -10
- package/blog/es/internationalization_and_SEO.md +0 -24
- package/blog/es/intlayer_with_i18next.md +0 -2
- package/blog/es/intlayer_with_next-i18next.md +0 -4
- package/blog/es/intlayer_with_next-intl.md +0 -2
- package/blog/es/intlayer_with_react-i18next.md +0 -2
- package/blog/es/intlayer_with_react-intl.md +0 -2
- package/blog/es/intlayer_with_vue-i18n.md +0 -4
- package/blog/es/list_i18n_technologies/frameworks/angular.md +0 -10
- package/blog/es/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/es/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/es/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/es/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/es/next-i18next_vs_next-intl_vs_intlayer.md +6 -31
- package/blog/es/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/es/rag_powered_documentation_assistant.md +0 -15
- package/blog/es/react-i18next_vs_react-intl_vs_intlayer.md +0 -24
- package/blog/es/transform_existing_nextjs_app_using_compiler.md +294 -0
- package/blog/es/transform_existing_vite_react_app_using_compiler.md +353 -0
- package/blog/es/vue-i18n_vs_intlayer.md +0 -30
- package/blog/es/what_is_internationalization.md +0 -8
- package/blog/fr/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/fr/i18n_meaning.md +0 -4
- package/blog/fr/i18n_using_next-i18next.md +0 -21
- package/blog/fr/i18n_using_next-intl.md +0 -18
- package/blog/fr/index.md +0 -10
- package/blog/fr/internationalization_and_SEO.md +0 -24
- package/blog/fr/intlayer_with_i18next.md +0 -2
- package/blog/fr/intlayer_with_next-i18next.md +0 -4
- package/blog/fr/intlayer_with_next-intl.md +0 -2
- package/blog/fr/intlayer_with_react-i18next.md +0 -2
- package/blog/fr/intlayer_with_react-intl.md +0 -2
- package/blog/fr/intlayer_with_vue-i18n.md +0 -4
- package/blog/fr/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/fr/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/fr/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/fr/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/fr/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/fr/next-i18next_vs_next-intl_vs_intlayer.md +6 -31
- package/blog/fr/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/fr/rag_powered_documentation_assistant.md +0 -9
- package/blog/fr/react-i18next_vs_react-intl_vs_intlayer.md +0 -24
- package/blog/fr/transform_existing_nextjs_app_using_compiler.md +294 -0
- package/blog/fr/transform_existing_vite_react_app_using_compiler.md +351 -0
- package/blog/fr/vue-i18n_vs_intlayer.md +0 -30
- package/blog/fr/what_is_internationalization.md +0 -8
- package/blog/hi/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/hi/i18n_meaning.md +0 -4
- package/blog/hi/i18n_using_next-i18next.md +0 -21
- package/blog/hi/i18n_using_next-intl.md +0 -18
- package/blog/hi/index.md +0 -10
- package/blog/hi/internationalization_and_SEO.md +0 -24
- package/blog/hi/intlayer_with_i18next.md +0 -3
- package/blog/hi/intlayer_with_next-i18next.md +0 -5
- package/blog/hi/intlayer_with_next-intl.md +0 -3
- package/blog/hi/intlayer_with_react-i18next.md +0 -3
- package/blog/hi/intlayer_with_react-intl.md +0 -3
- package/blog/hi/intlayer_with_vue-i18n.md +0 -5
- package/blog/hi/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/hi/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/hi/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/hi/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/hi/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/hi/next-i18next_vs_next-intl_vs_intlayer.md +0 -28
- package/blog/hi/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/hi/rag_powered_documentation_assistant.md +0 -13
- package/blog/hi/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/hi/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/hi/transform_existing_vite_react_app_using_compiler.md +353 -0
- package/blog/hi/vue-i18n_vs_intlayer.md +0 -30
- package/blog/hi/what_is_internationalization.md +0 -8
- package/blog/id/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/id/i18n_meaning.md +0 -4
- package/blog/id/i18n_using_next-i18next.md +0 -21
- package/blog/id/i18n_using_next-intl.md +0 -18
- package/blog/id/index.md +0 -10
- package/blog/id/internationalization_and_SEO.md +0 -24
- package/blog/id/intlayer_with_i18next.md +0 -3
- package/blog/id/intlayer_with_next-i18next.md +0 -5
- package/blog/id/intlayer_with_next-intl.md +0 -3
- package/blog/id/intlayer_with_react-i18next.md +0 -3
- package/blog/id/intlayer_with_react-intl.md +0 -3
- package/blog/id/intlayer_with_vue-i18n.md +0 -5
- package/blog/id/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/id/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/id/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/id/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/id/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/id/next-i18next_vs_next-intl_vs_intlayer.md +7 -31
- package/blog/id/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/id/rag_powered_documentation_assistant.md +0 -13
- package/blog/id/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/id/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/id/transform_existing_vite_react_app_using_compiler.md +358 -0
- package/blog/id/vue-i18n_vs_intlayer.md +0 -30
- package/blog/id/what_is_internationalization.md +0 -8
- package/blog/it/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/it/i18n_meaning.md +0 -4
- package/blog/it/i18n_using_next-i18next.md +0 -21
- package/blog/it/i18n_using_next-intl.md +0 -18
- package/blog/it/index.md +0 -10
- package/blog/it/internationalization_and_SEO.md +0 -24
- package/blog/it/intlayer_with_i18next.md +0 -3
- package/blog/it/intlayer_with_next-i18next.md +0 -5
- package/blog/it/intlayer_with_next-intl.md +0 -3
- package/blog/it/intlayer_with_react-i18next.md +0 -3
- package/blog/it/intlayer_with_react-intl.md +0 -3
- package/blog/it/intlayer_with_vue-i18n.md +0 -5
- package/blog/it/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/it/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/it/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/it/list_i18n_technologies/frameworks/svelte.md +0 -12
- package/blog/it/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/it/next-i18next_vs_next-intl_vs_intlayer.md +6 -31
- package/blog/it/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/it/react-i18next_vs_react-intl_vs_intlayer.md +0 -24
- package/blog/it/transform_existing_nextjs_app_using_compiler.md +294 -0
- package/blog/it/transform_existing_vite_react_app_using_compiler.md +358 -0
- package/blog/it/vue-i18n_vs_intlayer.md +0 -30
- package/blog/it/what_is_internationalization.md +0 -8
- package/blog/ja/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/ja/i18n_meaning.md +0 -4
- package/blog/ja/i18n_using_next-i18next.md +0 -21
- package/blog/ja/i18n_using_next-intl.md +0 -18
- package/blog/ja/index.md +0 -10
- package/blog/ja/internationalization_and_SEO.md +0 -24
- package/blog/ja/intlayer_with_i18next.md +0 -2
- package/blog/ja/intlayer_with_next-i18next.md +0 -4
- package/blog/ja/intlayer_with_next-intl.md +0 -2
- package/blog/ja/intlayer_with_react-i18next.md +0 -2
- package/blog/ja/intlayer_with_react-intl.md +0 -2
- package/blog/ja/intlayer_with_vue-i18n.md +0 -4
- package/blog/ja/list_i18n_technologies/frameworks/angular.md +0 -10
- package/blog/ja/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/ja/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/ja/list_i18n_technologies/frameworks/svelte.md +0 -12
- package/blog/ja/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/ja/next-i18next_vs_next-intl_vs_intlayer.md +7 -29
- package/blog/ja/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/ja/rag_powered_documentation_assistant.md +0 -13
- package/blog/ja/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/ja/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/ja/transform_existing_vite_react_app_using_compiler.md +358 -0
- package/blog/ja/vue-i18n_vs_intlayer.md +0 -30
- package/blog/ja/what_is_internationalization.md +0 -8
- package/blog/ko/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/ko/i18n_meaning.md +0 -4
- package/blog/ko/i18n_using_next-i18next.md +0 -21
- package/blog/ko/i18n_using_next-intl.md +0 -18
- package/blog/ko/index.md +0 -10
- package/blog/ko/internationalization_and_SEO.md +0 -24
- package/blog/ko/intlayer_with_i18next.md +0 -3
- package/blog/ko/intlayer_with_next-i18next.md +0 -5
- package/blog/ko/intlayer_with_next-intl.md +0 -3
- package/blog/ko/intlayer_with_react-i18next.md +0 -3
- package/blog/ko/intlayer_with_react-intl.md +0 -3
- package/blog/ko/intlayer_with_vue-i18n.md +0 -5
- package/blog/ko/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/ko/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/ko/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/ko/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/ko/list_i18n_technologies/frameworks/vue.md +0 -14
- package/blog/ko/next-i18next_vs_next-intl_vs_intlayer.md +7 -29
- package/blog/ko/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/ko/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/ko/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/ko/transform_existing_vite_react_app_using_compiler.md +353 -0
- package/blog/ko/vue-i18n_vs_intlayer.md +0 -30
- package/blog/ko/what_is_internationalization.md +0 -8
- package/blog/pl/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/pl/i18n_meaning.md +0 -4
- package/blog/pl/i18n_using_next-i18next.md +0 -21
- package/blog/pl/i18n_using_next-intl.md +0 -18
- package/blog/pl/index.md +0 -10
- package/blog/pl/internationalization_and_SEO.md +0 -24
- package/blog/pl/intlayer_with_i18next.md +0 -2
- package/blog/pl/intlayer_with_next-i18next.md +0 -4
- package/blog/pl/intlayer_with_next-intl.md +0 -2
- package/blog/pl/intlayer_with_react-i18next.md +0 -2
- package/blog/pl/intlayer_with_react-intl.md +0 -2
- package/blog/pl/intlayer_with_vue-i18n.md +0 -4
- package/blog/pl/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/pl/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/pl/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/pl/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/pl/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/pl/next-i18next_vs_next-intl_vs_intlayer.md +7 -31
- package/blog/pl/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/pl/rag_powered_documentation_assistant.md +0 -13
- package/blog/pl/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/pl/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/pl/transform_existing_vite_react_app_using_compiler.md +353 -0
- package/blog/pl/vue-i18n_vs_intlayer.md +0 -30
- package/blog/pl/what_is_internationalization.md +0 -8
- package/blog/pt/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/pt/i18n_meaning.md +0 -4
- package/blog/pt/i18n_using_next-i18next.md +0 -21
- package/blog/pt/i18n_using_next-intl.md +0 -18
- package/blog/pt/index.md +0 -10
- package/blog/pt/internationalization_and_SEO.md +0 -24
- package/blog/pt/intlayer_with_i18next.md +0 -3
- package/blog/pt/intlayer_with_next-i18next.md +0 -5
- package/blog/pt/intlayer_with_next-intl.md +0 -3
- package/blog/pt/intlayer_with_react-i18next.md +0 -3
- package/blog/pt/intlayer_with_react-intl.md +0 -3
- package/blog/pt/intlayer_with_vue-i18n.md +0 -5
- package/blog/pt/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/pt/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/pt/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/pt/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/pt/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/pt/next-i18next_vs_next-intl_vs_intlayer.md +6 -31
- package/blog/pt/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/pt/react-i18next_vs_react-intl_vs_intlayer.md +0 -24
- package/blog/pt/transform_existing_nextjs_app_using_compiler.md +294 -0
- package/blog/pt/transform_existing_vite_react_app_using_compiler.md +358 -0
- package/blog/pt/vue-i18n_vs_intlayer.md +0 -30
- package/blog/pt/what_is_internationalization.md +0 -8
- package/blog/ru/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/ru/i18n_meaning.md +0 -4
- package/blog/ru/i18n_using_next-i18next.md +0 -21
- package/blog/ru/i18n_using_next-intl.md +0 -18
- package/blog/ru/index.md +0 -10
- package/blog/ru/internationalization_and_SEO.md +0 -24
- package/blog/ru/intlayer_with_i18next.md +0 -2
- package/blog/ru/intlayer_with_next-i18next.md +0 -4
- package/blog/ru/intlayer_with_next-intl.md +0 -2
- package/blog/ru/intlayer_with_react-i18next.md +0 -2
- package/blog/ru/intlayer_with_react-intl.md +0 -2
- package/blog/ru/intlayer_with_vue-i18n.md +0 -4
- package/blog/ru/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/ru/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/ru/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/ru/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/ru/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/ru/next-i18next_vs_next-intl_vs_intlayer.md +6 -31
- package/blog/ru/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/ru/rag_powered_documentation_assistant.md +0 -13
- package/blog/ru/react-i18next_vs_react-intl_vs_intlayer.md +0 -24
- package/blog/ru/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/ru/transform_existing_vite_react_app_using_compiler.md +358 -0
- package/blog/ru/vue-i18n_vs_intlayer.md +0 -30
- package/blog/ru/what_is_internationalization.md +0 -8
- package/blog/tr/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/tr/i18n_meaning.md +0 -4
- package/blog/tr/i18n_using_next-i18next.md +0 -21
- package/blog/tr/i18n_using_next-intl.md +0 -18
- package/blog/tr/index.md +0 -10
- package/blog/tr/internationalization_and_SEO.md +0 -24
- package/blog/tr/intlayer_with_i18next.md +0 -3
- package/blog/tr/intlayer_with_next-i18next.md +0 -5
- package/blog/tr/intlayer_with_next-intl.md +0 -3
- package/blog/tr/intlayer_with_react-i18next.md +0 -3
- package/blog/tr/intlayer_with_react-intl.md +0 -3
- package/blog/tr/intlayer_with_vue-i18n.md +0 -5
- package/blog/tr/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/tr/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/tr/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/tr/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/tr/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +0 -28
- package/blog/tr/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/tr/rag_powered_documentation_assistant.md +0 -9
- package/blog/tr/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/tr/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/tr/transform_existing_vite_react_app_using_compiler.md +358 -0
- package/blog/tr/vue-i18n_vs_intlayer.md +0 -30
- package/blog/tr/what_is_internationalization.md +0 -8
- package/blog/uk/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/uk/i18n_meaning.md +0 -4
- package/blog/uk/i18n_using_next-i18next.md +0 -21
- package/blog/uk/i18n_using_next-intl.md +0 -18
- package/blog/uk/index.md +0 -10
- package/blog/uk/internationalization_and_SEO.md +0 -24
- package/blog/uk/intlayer_with_i18next.md +0 -3
- package/blog/uk/intlayer_with_next-i18next.md +0 -5
- package/blog/uk/intlayer_with_next-intl.md +0 -3
- package/blog/uk/intlayer_with_react-i18next.md +0 -3
- package/blog/uk/intlayer_with_react-intl.md +0 -3
- package/blog/uk/intlayer_with_vue-i18n.md +0 -5
- package/blog/uk/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/uk/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/uk/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/uk/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/uk/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/uk/next-i18next_vs_next-intl_vs_intlayer.md +7 -29
- package/blog/uk/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/uk/rag_powered_documentation_assistant.md +0 -13
- package/blog/uk/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/uk/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/uk/transform_existing_vite_react_app_using_compiler.md +358 -0
- package/blog/uk/vue-i18n_vs_intlayer.md +0 -30
- package/blog/uk/what_is_internationalization.md +0 -8
- package/blog/vi/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/vi/i18n_meaning.md +0 -4
- package/blog/vi/i18n_using_next-i18next.md +0 -21
- package/blog/vi/i18n_using_next-intl.md +0 -18
- package/blog/vi/index.md +0 -10
- package/blog/vi/internationalization_and_SEO.md +0 -24
- package/blog/vi/intlayer_with_i18next.md +0 -3
- package/blog/vi/intlayer_with_next-i18next.md +0 -5
- package/blog/vi/intlayer_with_next-intl.md +0 -3
- package/blog/vi/intlayer_with_react-i18next.md +0 -3
- package/blog/vi/intlayer_with_react-intl.md +0 -3
- package/blog/vi/intlayer_with_vue-i18n.md +0 -5
- package/blog/vi/list_i18n_technologies/frameworks/angular.md +0 -12
- package/blog/vi/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/vi/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/vi/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/vi/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/vi/next-i18next_vs_next-intl_vs_intlayer.md +7 -31
- package/blog/vi/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/vi/rag_powered_documentation_assistant.md +0 -13
- package/blog/vi/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/vi/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/vi/transform_existing_vite_react_app_using_compiler.md +358 -0
- package/blog/vi/vue-i18n_vs_intlayer.md +0 -30
- package/blog/vi/what_is_internationalization.md +0 -8
- package/blog/zh/hreflang_guide_multilingual_seo.md +0 -19
- package/blog/zh/i18n_meaning.md +0 -4
- package/blog/zh/i18n_using_next-i18next.md +0 -21
- package/blog/zh/i18n_using_next-intl.md +0 -18
- package/blog/zh/index.md +0 -10
- package/blog/zh/internationalization_and_SEO.md +0 -24
- package/blog/zh/intlayer_with_i18next.md +0 -3
- package/blog/zh/intlayer_with_next-i18next.md +0 -5
- package/blog/zh/intlayer_with_next-intl.md +0 -3
- package/blog/zh/intlayer_with_react-i18next.md +0 -3
- package/blog/zh/intlayer_with_react-intl.md +0 -3
- package/blog/zh/intlayer_with_vue-i18n.md +0 -5
- package/blog/zh/list_i18n_technologies/frameworks/angular.md +0 -10
- package/blog/zh/list_i18n_technologies/frameworks/react-native.md +0 -14
- package/blog/zh/list_i18n_technologies/frameworks/react.md +0 -12
- package/blog/zh/list_i18n_technologies/frameworks/svelte.md +0 -14
- package/blog/zh/list_i18n_technologies/frameworks/vue.md +0 -12
- package/blog/zh/next-i18next_vs_next-intl_vs_intlayer.md +7 -29
- package/blog/zh/nextjs-multilingual-seo-comparison.md +0 -10
- package/blog/zh/react-i18next_vs_react-intl_vs_intlayer.md +0 -22
- package/blog/zh/transform_existing_nextjs_app_using_compiler.md +293 -0
- package/blog/zh/transform_existing_vite_react_app_using_compiler.md +358 -0
- package/blog/zh/vue-i18n_vs_intlayer.md +0 -30
- package/blog/zh/what_is_internationalization.md +0 -8
- package/dist/cjs/generated/blog.entry.cjs +40 -0
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +0 -80
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +40 -0
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +0 -80
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/authors.d.ts +5 -5
- package/dist/types/authors.d.ts.map +1 -1
- package/dist/types/blog.d.ts +10 -11
- package/dist/types/blog.d.ts.map +1 -1
- package/dist/types/common.d.ts +12 -13
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/doc.d.ts +10 -11
- package/dist/types/doc.d.ts.map +1 -1
- package/dist/types/frequentQuestions.d.ts +10 -11
- package/dist/types/frequentQuestions.d.ts.map +1 -1
- package/dist/types/generated/blog.entry.d.ts +3 -2
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +1 -6
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts +1 -2
- package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
- package/dist/types/generated/legal.entry.d.ts +1 -2
- package/dist/types/generated/legal.entry.d.ts.map +1 -1
- package/dist/types/legal.d.ts +10 -11
- package/dist/types/legal.d.ts.map +1 -1
- package/docs/ar/analytics.md +0 -2
- package/docs/ar/bundle_optimization.md +0 -2
- package/docs/ar/cli/index.md +0 -4
- package/docs/ar/cli/login.md +0 -2
- package/docs/ar/compiler.md +31 -13
- package/docs/ar/configuration.md +0 -37
- package/docs/ar/dictionary/html.md +0 -6
- package/docs/ar/dictionary/markdown.md +0 -2
- package/docs/ar/how_works_intlayer.md +0 -12
- package/docs/ar/interest_of_intlayer.md +0 -21
- package/docs/ar/intlayer_CMS.md +0 -16
- package/docs/ar/intlayer_visual_editor.md +0 -11
- package/docs/ar/intlayer_with_adonisjs.md +0 -16
- package/docs/ar/intlayer_with_analog.md +0 -30
- package/docs/ar/intlayer_with_angular_19.md +0 -32
- package/docs/ar/intlayer_with_angular_21.md +0 -31
- package/docs/ar/intlayer_with_astro.md +1 -33
- package/docs/ar/intlayer_with_astro_lit.md +4 -37
- package/docs/ar/intlayer_with_astro_preact.md +4 -37
- package/docs/ar/intlayer_with_astro_react.md +4 -37
- package/docs/ar/intlayer_with_astro_solid.md +4 -37
- package/docs/ar/intlayer_with_astro_svelte.md +4 -37
- package/docs/ar/intlayer_with_astro_vanilla.md +4 -35
- package/docs/ar/intlayer_with_astro_vue.md +0 -33
- package/docs/ar/intlayer_with_create_react_app.md +17 -52
- package/docs/ar/intlayer_with_elysia.md +0 -16
- package/docs/ar/intlayer_with_express.md +0 -15
- package/docs/ar/intlayer_with_fastify.md +0 -15
- package/docs/ar/intlayer_with_hono.md +0 -15
- package/docs/ar/intlayer_with_htmx.md +0 -27
- package/docs/ar/intlayer_with_lynx+react.md +0 -21
- package/docs/ar/intlayer_with_nestjs.md +0 -15
- package/docs/ar/intlayer_with_next-i18next.md +0 -28
- package/docs/ar/intlayer_with_nextjs_14.md +4 -40
- package/docs/ar/intlayer_with_nextjs_15.md +15 -41
- package/docs/ar/intlayer_with_nextjs_16.md +204 -53
- package/docs/ar/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/ar/intlayer_with_nuxt.md +28 -33
- package/docs/ar/intlayer_with_react_native+expo.md +25 -36
- package/docs/ar/intlayer_with_react_router_v7.md +286 -84
- package/docs/ar/intlayer_with_solid_start.md +4 -53
- package/docs/ar/intlayer_with_storybook.md +0 -26
- package/docs/ar/intlayer_with_svelte_kit.md +16 -47
- package/docs/ar/intlayer_with_tanstack+solid.md +38 -51
- package/docs/ar/intlayer_with_tanstack.md +40 -50
- package/docs/ar/intlayer_with_vanilla.md +16 -33
- package/docs/ar/intlayer_with_vite+lit.md +21 -36
- package/docs/ar/intlayer_with_vite+preact.md +28 -42
- package/docs/ar/intlayer_with_vite+react.md +37 -37
- package/docs/ar/intlayer_with_vite+solid.md +37 -48
- package/docs/ar/intlayer_with_vite+svelte.md +25 -36
- package/docs/ar/intlayer_with_vite+vanilla.md +21 -38
- package/docs/ar/intlayer_with_vite+vue.md +25 -35
- package/docs/ar/introduction.md +29 -23
- package/docs/ar/live-sync.md +0 -2
- package/docs/ar/lsp.md +0 -12
- package/docs/ar/mcp_server.md +0 -8
- package/docs/ar/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/ar/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/ar/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/ar/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/ar/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/ar/packages/@intlayer_babel/export.md +0 -10
- package/docs/ar/packages/adonis-intlayer/t.md +0 -12
- package/docs/ar/packages/express-intlayer/t.md +0 -24
- package/docs/ar/packages/hono-intlayer/t.md +0 -22
- package/docs/ar/packages/intlayer/comparePaths.md +0 -12
- package/docs/ar/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/ar/packages/intlayer/getConfiguration.md +0 -4
- package/docs/ar/packages/intlayer/getDictionary.md +0 -10
- package/docs/ar/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/ar/packages/intlayer/getIntlayer.md +0 -12
- package/docs/ar/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/ar/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/ar/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/ar/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/ar/packages/intlayer/getPrefix.md +0 -10
- package/docs/ar/packages/next-intlayer/t.md +0 -18
- package/docs/ar/packages/react-intlayer/t.md +0 -18
- package/docs/ar/readme.md +0 -2
- package/docs/ar/releases/v6.md +0 -26
- package/docs/ar/releases/v7.md +0 -26
- package/docs/ar/releases/v8.md +3 -45
- package/docs/ar/releases/v9.md +0 -22
- package/docs/ar/roadmap.md +0 -22
- package/docs/ar/self_hosting.md +0 -24
- package/docs/ar/testing.md +0 -12
- package/docs/bn/bundle_optimization.md +0 -2
- package/docs/bn/cli/index.md +0 -4
- package/docs/bn/configuration.md +0 -34
- package/docs/bn/interest_of_intlayer.md +0 -4
- package/docs/bn/intlayer_CMS.md +0 -4
- package/docs/bn/intlayer_with_angular_21.md +0 -4
- package/docs/bn/intlayer_with_storybook.md +0 -26
- package/docs/bn/intlayer_with_vanilla.md +0 -4
- package/docs/bn/intlayer_with_vite+lit.md +0 -4
- package/docs/bn/intlayer_with_vite+vanilla.md +0 -4
- package/docs/bn/introduction.md +29 -10
- package/docs/bn/packages/intlayer/comparePaths.md +0 -12
- package/docs/bn/releases/v9.md +0 -20
- package/docs/cs/bundle_optimization.md +0 -2
- package/docs/cs/cli/index.md +0 -4
- package/docs/cs/configuration.md +0 -34
- package/docs/cs/interest_of_intlayer.md +0 -9
- package/docs/cs/intlayer_with_angular_21.md +0 -10
- package/docs/cs/intlayer_with_storybook.md +0 -20
- package/docs/cs/intlayer_with_vanilla.md +0 -13
- package/docs/cs/intlayer_with_vite+lit.md +0 -16
- package/docs/cs/intlayer_with_vite+vanilla.md +0 -17
- package/docs/cs/introduction.md +29 -10
- package/docs/cs/packages/intlayer/comparePaths.md +0 -12
- package/docs/cs/releases/v9.md +0 -20
- package/docs/de/analytics.md +0 -2
- package/docs/de/bundle_optimization.md +0 -2
- package/docs/de/cli/index.md +0 -4
- package/docs/de/cli/login.md +0 -2
- package/docs/de/compiler.md +31 -13
- package/docs/de/configuration.md +0 -37
- package/docs/de/dictionary/html.md +0 -6
- package/docs/de/dictionary/markdown.md +0 -2
- package/docs/de/how_works_intlayer.md +0 -12
- package/docs/de/interest_of_intlayer.md +0 -21
- package/docs/de/intlayer_CMS.md +0 -16
- package/docs/de/intlayer_visual_editor.md +0 -11
- package/docs/de/intlayer_with_adonisjs.md +0 -16
- package/docs/de/intlayer_with_analog.md +0 -30
- package/docs/de/intlayer_with_angular_19.md +0 -32
- package/docs/de/intlayer_with_angular_21.md +0 -31
- package/docs/de/intlayer_with_astro.md +1 -33
- package/docs/de/intlayer_with_astro_lit.md +4 -37
- package/docs/de/intlayer_with_astro_preact.md +4 -37
- package/docs/de/intlayer_with_astro_react.md +4 -37
- package/docs/de/intlayer_with_astro_solid.md +4 -37
- package/docs/de/intlayer_with_astro_svelte.md +4 -37
- package/docs/de/intlayer_with_astro_vanilla.md +4 -35
- package/docs/de/intlayer_with_astro_vue.md +0 -33
- package/docs/de/intlayer_with_create_react_app.md +14 -49
- package/docs/de/intlayer_with_elysia.md +0 -16
- package/docs/de/intlayer_with_express.md +0 -15
- package/docs/de/intlayer_with_fastify.md +0 -15
- package/docs/de/intlayer_with_hono.md +0 -15
- package/docs/de/intlayer_with_htmx.md +0 -27
- package/docs/de/intlayer_with_lynx+react.md +0 -21
- package/docs/de/intlayer_with_nestjs.md +0 -15
- package/docs/de/intlayer_with_next-i18next.md +0 -28
- package/docs/de/intlayer_with_nextjs_14.md +4 -40
- package/docs/de/intlayer_with_nextjs_15.md +15 -41
- package/docs/de/intlayer_with_nextjs_16.md +205 -66
- package/docs/de/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/de/intlayer_with_nuxt.md +28 -33
- package/docs/de/intlayer_with_react_native+expo.md +25 -36
- package/docs/de/intlayer_with_react_router_v7.md +395 -186
- package/docs/de/intlayer_with_solid_start.md +4 -53
- package/docs/de/intlayer_with_storybook.md +0 -26
- package/docs/de/intlayer_with_svelte_kit.md +0 -34
- package/docs/de/intlayer_with_tanstack+solid.md +38 -51
- package/docs/de/intlayer_with_tanstack.md +40 -50
- package/docs/de/intlayer_with_vanilla.md +16 -33
- package/docs/de/intlayer_with_vite+lit.md +21 -36
- package/docs/de/intlayer_with_vite+preact.md +28 -42
- package/docs/de/intlayer_with_vite+react.md +29 -37
- package/docs/de/intlayer_with_vite+solid.md +26 -39
- package/docs/de/intlayer_with_vite+svelte.md +25 -36
- package/docs/de/intlayer_with_vite+vanilla.md +21 -38
- package/docs/de/intlayer_with_vite+vue.md +25 -35
- package/docs/de/introduction.md +29 -23
- package/docs/de/live-sync.md +0 -2
- package/docs/de/lsp.md +0 -12
- package/docs/de/mcp_server.md +0 -8
- package/docs/de/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/de/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/de/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/de/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/de/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/de/packages/@intlayer_babel/export.md +0 -10
- package/docs/de/packages/adonis-intlayer/t.md +0 -12
- package/docs/de/packages/express-intlayer/t.md +0 -24
- package/docs/de/packages/hono-intlayer/t.md +0 -22
- package/docs/de/packages/intlayer/comparePaths.md +0 -12
- package/docs/de/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/de/packages/intlayer/getConfiguration.md +0 -4
- package/docs/de/packages/intlayer/getDictionary.md +0 -10
- package/docs/de/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/de/packages/intlayer/getIntlayer.md +0 -12
- package/docs/de/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/de/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/de/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/de/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/de/packages/intlayer/getPrefix.md +0 -10
- package/docs/de/packages/next-intlayer/t.md +0 -18
- package/docs/de/packages/react-intlayer/t.md +0 -18
- package/docs/de/readme.md +0 -2
- package/docs/de/releases/v6.md +0 -26
- package/docs/de/releases/v7.md +0 -26
- package/docs/de/releases/v8.md +3 -45
- package/docs/de/releases/v9.md +0 -22
- package/docs/de/roadmap.md +0 -22
- package/docs/de/self_hosting.md +0 -24
- package/docs/de/testing.md +0 -12
- package/docs/en/analytics.md +0 -2
- package/docs/en/bundle_optimization.md +0 -2
- package/docs/en/cli/index.md +0 -4
- package/docs/en/cli/login.md +0 -2
- package/docs/en/compiler.md +32 -14
- package/docs/en/configuration.md +0 -37
- package/docs/en/dictionary/html.md +0 -6
- package/docs/en/dictionary/markdown.md +4 -6
- package/docs/en/how_works_intlayer.md +0 -12
- package/docs/en/interest_of_intlayer.md +0 -21
- package/docs/en/intlayer_CMS.md +0 -16
- package/docs/en/intlayer_visual_editor.md +0 -11
- package/docs/en/intlayer_with_adonisjs.md +0 -16
- package/docs/en/intlayer_with_analog.md +0 -30
- package/docs/en/intlayer_with_angular_19.md +0 -32
- package/docs/en/intlayer_with_angular_21.md +0 -31
- package/docs/en/intlayer_with_astro.md +1 -33
- package/docs/en/intlayer_with_astro_lit.md +4 -37
- package/docs/en/intlayer_with_astro_preact.md +4 -37
- package/docs/en/intlayer_with_astro_react.md +4 -37
- package/docs/en/intlayer_with_astro_solid.md +4 -37
- package/docs/en/intlayer_with_astro_svelte.md +4 -37
- package/docs/en/intlayer_with_astro_vanilla.md +4 -35
- package/docs/en/intlayer_with_astro_vue.md +0 -33
- package/docs/en/intlayer_with_create_react_app.md +5 -35
- package/docs/en/intlayer_with_elysia.md +0 -16
- package/docs/en/intlayer_with_express.md +0 -15
- package/docs/en/intlayer_with_fastify.md +0 -15
- package/docs/en/intlayer_with_hono.md +0 -15
- package/docs/en/intlayer_with_htmx.md +0 -27
- package/docs/en/intlayer_with_lynx+react.md +0 -21
- package/docs/en/intlayer_with_nestjs.md +0 -15
- package/docs/en/intlayer_with_next-i18next.md +0 -28
- package/docs/en/intlayer_with_nextjs_14.md +4 -40
- package/docs/en/intlayer_with_nextjs_15.md +15 -40
- package/docs/en/intlayer_with_nextjs_16.md +202 -52
- package/docs/en/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/en/intlayer_with_nuxt.md +28 -33
- package/docs/en/intlayer_with_react_native+expo.md +25 -36
- package/docs/en/intlayer_with_react_router_v7.md +287 -85
- package/docs/en/intlayer_with_solid_start.md +4 -53
- package/docs/en/intlayer_with_storybook.md +0 -26
- package/docs/en/intlayer_with_svelte_kit.md +0 -34
- package/docs/en/intlayer_with_tanstack+solid.md +38 -51
- package/docs/en/intlayer_with_tanstack.md +40 -50
- package/docs/en/intlayer_with_vanilla.md +16 -33
- package/docs/en/intlayer_with_vite+lit.md +21 -36
- package/docs/en/intlayer_with_vite+preact.md +28 -42
- package/docs/en/intlayer_with_vite+react.md +29 -37
- package/docs/en/intlayer_with_vite+solid.md +26 -39
- package/docs/en/intlayer_with_vite+svelte.md +25 -36
- package/docs/en/intlayer_with_vite+vanilla.md +21 -38
- package/docs/en/intlayer_with_vite+vue.md +25 -35
- package/docs/en/introduction.md +29 -23
- package/docs/en/live-sync.md +0 -2
- package/docs/en/lsp.md +0 -12
- package/docs/en/mcp_server.md +0 -8
- package/docs/en/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/en/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/en/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/en/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/en/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/en/packages/@intlayer_babel/export.md +0 -10
- package/docs/en/packages/adonis-intlayer/t.md +0 -12
- package/docs/en/packages/express-intlayer/t.md +0 -24
- package/docs/en/packages/hono-intlayer/t.md +0 -22
- package/docs/en/packages/intlayer/comparePaths.md +0 -12
- package/docs/en/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/en/packages/intlayer/getConfiguration.md +0 -4
- package/docs/en/packages/intlayer/getDictionary.md +0 -10
- package/docs/en/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/en/packages/intlayer/getIntlayer.md +0 -12
- package/docs/en/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/en/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/en/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/en/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/en/packages/intlayer/getPrefix.md +0 -10
- package/docs/en/packages/next-intlayer/t.md +0 -18
- package/docs/en/packages/react-intlayer/t.md +0 -18
- package/docs/en/readme.md +0 -5
- package/docs/en/releases/v6.md +0 -26
- package/docs/en/releases/v7.md +0 -26
- package/docs/en/releases/v8.md +3 -45
- package/docs/en/releases/v9.md +0 -22
- package/docs/en/roadmap.md +0 -22
- package/docs/en/self_hosting.md +0 -24
- package/docs/en/testing.md +0 -12
- package/docs/en-GB/analytics.md +0 -2
- package/docs/en-GB/bundle_optimization.md +0 -2
- package/docs/en-GB/cli/index.md +0 -4
- package/docs/en-GB/cli/login.md +0 -2
- package/docs/en-GB/compiler.md +31 -13
- package/docs/en-GB/configuration.md +0 -37
- package/docs/en-GB/dictionary/html.md +0 -6
- package/docs/en-GB/dictionary/markdown.md +0 -2
- package/docs/en-GB/dictionary/translation.md +32 -33
- package/docs/en-GB/how_works_intlayer.md +0 -12
- package/docs/en-GB/interest_of_intlayer.md +0 -21
- package/docs/en-GB/intlayer_CMS.md +0 -16
- package/docs/en-GB/intlayer_visual_editor.md +0 -11
- package/docs/en-GB/intlayer_with_adonisjs.md +0 -16
- package/docs/en-GB/intlayer_with_analog.md +0 -30
- package/docs/en-GB/intlayer_with_angular_19.md +0 -32
- package/docs/en-GB/intlayer_with_angular_21.md +0 -31
- package/docs/en-GB/intlayer_with_astro.md +1 -33
- package/docs/en-GB/intlayer_with_astro_lit.md +4 -37
- package/docs/en-GB/intlayer_with_astro_preact.md +4 -37
- package/docs/en-GB/intlayer_with_astro_react.md +4 -37
- package/docs/en-GB/intlayer_with_astro_solid.md +4 -37
- package/docs/en-GB/intlayer_with_astro_svelte.md +4 -37
- package/docs/en-GB/intlayer_with_astro_vanilla.md +4 -35
- package/docs/en-GB/intlayer_with_astro_vue.md +0 -33
- package/docs/en-GB/intlayer_with_create_react_app.md +5 -35
- package/docs/en-GB/intlayer_with_elysia.md +0 -16
- package/docs/en-GB/intlayer_with_express.md +0 -15
- package/docs/en-GB/intlayer_with_fastify.md +0 -15
- package/docs/en-GB/intlayer_with_hono.md +0 -15
- package/docs/en-GB/intlayer_with_htmx.md +0 -27
- package/docs/en-GB/intlayer_with_lynx+react.md +0 -21
- package/docs/en-GB/intlayer_with_nestjs.md +0 -15
- package/docs/en-GB/intlayer_with_next-i18next.md +0 -28
- package/docs/en-GB/intlayer_with_nextjs_14.md +4 -40
- package/docs/en-GB/intlayer_with_nextjs_15.md +17 -44
- package/docs/en-GB/intlayer_with_nextjs_16.md +205 -53
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/en-GB/intlayer_with_nuxt.md +28 -33
- package/docs/en-GB/intlayer_with_react_native+expo.md +25 -36
- package/docs/en-GB/intlayer_with_react_router_v7.md +330 -129
- package/docs/en-GB/intlayer_with_solid_start.md +4 -53
- package/docs/en-GB/intlayer_with_storybook.md +0 -26
- package/docs/en-GB/intlayer_with_svelte_kit.md +0 -34
- package/docs/en-GB/intlayer_with_tanstack+solid.md +38 -51
- package/docs/en-GB/intlayer_with_tanstack.md +40 -50
- package/docs/en-GB/intlayer_with_vanilla.md +16 -33
- package/docs/en-GB/intlayer_with_vite+lit.md +21 -36
- package/docs/en-GB/intlayer_with_vite+preact.md +28 -42
- package/docs/en-GB/intlayer_with_vite+react.md +37 -37
- package/docs/en-GB/intlayer_with_vite+solid.md +26 -41
- package/docs/en-GB/intlayer_with_vite+svelte.md +33 -36
- package/docs/en-GB/intlayer_with_vite+vanilla.md +21 -38
- package/docs/en-GB/intlayer_with_vite+vue.md +109 -101
- package/docs/en-GB/introduction.md +29 -23
- package/docs/en-GB/live-sync.md +0 -2
- package/docs/en-GB/lsp.md +0 -12
- package/docs/en-GB/mcp_server.md +0 -8
- package/docs/en-GB/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/en-GB/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/en-GB/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/en-GB/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/en-GB/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/en-GB/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/en-GB/packages/@intlayer_babel/export.md +0 -10
- package/docs/en-GB/packages/adonis-intlayer/t.md +0 -12
- package/docs/en-GB/packages/express-intlayer/t.md +0 -24
- package/docs/en-GB/packages/hono-intlayer/t.md +0 -22
- package/docs/en-GB/packages/intlayer/comparePaths.md +0 -12
- package/docs/en-GB/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/en-GB/packages/intlayer/getConfiguration.md +0 -4
- package/docs/en-GB/packages/intlayer/getDictionary.md +0 -10
- package/docs/en-GB/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/en-GB/packages/intlayer/getIntlayer.md +0 -12
- package/docs/en-GB/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/en-GB/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/en-GB/packages/intlayer/getPrefix.md +0 -10
- package/docs/en-GB/packages/next-intlayer/t.md +0 -18
- package/docs/en-GB/packages/react-intlayer/t.md +0 -18
- package/docs/en-GB/readme.md +0 -2
- package/docs/en-GB/releases/v6.md +25 -39
- package/docs/en-GB/releases/v7.md +0 -26
- package/docs/en-GB/releases/v8.md +3 -45
- package/docs/en-GB/releases/v9.md +0 -22
- package/docs/en-GB/roadmap.md +0 -22
- package/docs/en-GB/self_hosting.md +0 -24
- package/docs/en-GB/testing.md +0 -12
- package/docs/es/analytics.md +0 -2
- package/docs/es/bundle_optimization.md +0 -2
- package/docs/es/cli/index.md +0 -4
- package/docs/es/cli/login.md +0 -2
- package/docs/es/compiler.md +31 -13
- package/docs/es/configuration.md +0 -37
- package/docs/es/dictionary/html.md +0 -6
- package/docs/es/dictionary/markdown.md +0 -2
- package/docs/es/how_works_intlayer.md +0 -12
- package/docs/es/interest_of_intlayer.md +0 -21
- package/docs/es/intlayer_CMS.md +0 -16
- package/docs/es/intlayer_visual_editor.md +0 -11
- package/docs/es/intlayer_with_adonisjs.md +0 -16
- package/docs/es/intlayer_with_analog.md +0 -30
- package/docs/es/intlayer_with_angular_19.md +0 -32
- package/docs/es/intlayer_with_angular_21.md +0 -31
- package/docs/es/intlayer_with_astro.md +1 -33
- package/docs/es/intlayer_with_astro_lit.md +4 -37
- package/docs/es/intlayer_with_astro_preact.md +4 -37
- package/docs/es/intlayer_with_astro_react.md +4 -37
- package/docs/es/intlayer_with_astro_solid.md +4 -37
- package/docs/es/intlayer_with_astro_svelte.md +4 -37
- package/docs/es/intlayer_with_astro_vanilla.md +4 -35
- package/docs/es/intlayer_with_astro_vue.md +0 -33
- package/docs/es/intlayer_with_create_react_app.md +8 -43
- package/docs/es/intlayer_with_elysia.md +0 -16
- package/docs/es/intlayer_with_express.md +0 -15
- package/docs/es/intlayer_with_fastify.md +0 -15
- package/docs/es/intlayer_with_hono.md +0 -15
- package/docs/es/intlayer_with_htmx.md +0 -27
- package/docs/es/intlayer_with_lynx+react.md +0 -21
- package/docs/es/intlayer_with_nestjs.md +0 -15
- package/docs/es/intlayer_with_next-i18next.md +0 -28
- package/docs/es/intlayer_with_nextjs_14.md +4 -40
- package/docs/es/intlayer_with_nextjs_15.md +17 -45
- package/docs/es/intlayer_with_nextjs_16.md +204 -57
- package/docs/es/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/es/intlayer_with_nuxt.md +28 -33
- package/docs/es/intlayer_with_react_native+expo.md +25 -36
- package/docs/es/intlayer_with_react_router_v7.md +414 -211
- package/docs/es/intlayer_with_solid_start.md +4 -53
- package/docs/es/intlayer_with_storybook.md +0 -26
- package/docs/es/intlayer_with_svelte_kit.md +0 -34
- package/docs/es/intlayer_with_tanstack+solid.md +38 -51
- package/docs/es/intlayer_with_tanstack.md +40 -50
- package/docs/es/intlayer_with_vanilla.md +16 -33
- package/docs/es/intlayer_with_vite+lit.md +21 -36
- package/docs/es/intlayer_with_vite+preact.md +28 -42
- package/docs/es/intlayer_with_vite+react.md +29 -37
- package/docs/es/intlayer_with_vite+solid.md +26 -39
- package/docs/es/intlayer_with_vite+svelte.md +25 -36
- package/docs/es/intlayer_with_vite+vanilla.md +21 -38
- package/docs/es/intlayer_with_vite+vue.md +25 -35
- package/docs/es/introduction.md +29 -23
- package/docs/es/live-sync.md +0 -2
- package/docs/es/lsp.md +0 -12
- package/docs/es/mcp_server.md +0 -8
- package/docs/es/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/es/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/es/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/es/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/es/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/es/packages/@intlayer_babel/export.md +0 -10
- package/docs/es/packages/adonis-intlayer/t.md +0 -12
- package/docs/es/packages/express-intlayer/t.md +0 -24
- package/docs/es/packages/hono-intlayer/t.md +0 -22
- package/docs/es/packages/intlayer/comparePaths.md +0 -12
- package/docs/es/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/es/packages/intlayer/getConfiguration.md +0 -4
- package/docs/es/packages/intlayer/getDictionary.md +0 -10
- package/docs/es/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/es/packages/intlayer/getIntlayer.md +0 -12
- package/docs/es/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/es/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/es/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/es/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/es/packages/intlayer/getPrefix.md +0 -10
- package/docs/es/packages/next-intlayer/t.md +0 -18
- package/docs/es/packages/react-intlayer/t.md +0 -18
- package/docs/es/readme.md +0 -2
- package/docs/es/releases/v6.md +0 -26
- package/docs/es/releases/v7.md +0 -26
- package/docs/es/releases/v8.md +3 -45
- package/docs/es/releases/v9.md +0 -22
- package/docs/es/roadmap.md +0 -22
- package/docs/es/self_hosting.md +0 -24
- package/docs/es/testing.md +0 -12
- package/docs/fr/analytics.md +0 -2
- package/docs/fr/bundle_optimization.md +0 -2
- package/docs/fr/cli/index.md +0 -4
- package/docs/fr/cli/login.md +0 -2
- package/docs/fr/compiler.md +32 -14
- package/docs/fr/configuration.md +0 -37
- package/docs/fr/dictionary/html.md +0 -6
- package/docs/fr/dictionary/markdown.md +0 -2
- package/docs/fr/how_works_intlayer.md +0 -12
- package/docs/fr/interest_of_intlayer.md +0 -21
- package/docs/fr/intlayer_CMS.md +0 -16
- package/docs/fr/intlayer_visual_editor.md +0 -11
- package/docs/fr/intlayer_with_adonisjs.md +0 -16
- package/docs/fr/intlayer_with_analog.md +0 -30
- package/docs/fr/intlayer_with_angular_19.md +0 -32
- package/docs/fr/intlayer_with_angular_21.md +0 -31
- package/docs/fr/intlayer_with_astro.md +1 -33
- package/docs/fr/intlayer_with_astro_lit.md +4 -37
- package/docs/fr/intlayer_with_astro_preact.md +4 -37
- package/docs/fr/intlayer_with_astro_react.md +4 -37
- package/docs/fr/intlayer_with_astro_solid.md +4 -37
- package/docs/fr/intlayer_with_astro_svelte.md +4 -37
- package/docs/fr/intlayer_with_astro_vanilla.md +4 -35
- package/docs/fr/intlayer_with_astro_vue.md +0 -33
- package/docs/fr/intlayer_with_create_react_app.md +7 -42
- package/docs/fr/intlayer_with_elysia.md +0 -16
- package/docs/fr/intlayer_with_express.md +0 -15
- package/docs/fr/intlayer_with_fastify.md +0 -15
- package/docs/fr/intlayer_with_hono.md +0 -15
- package/docs/fr/intlayer_with_htmx.md +0 -27
- package/docs/fr/intlayer_with_lynx+react.md +0 -21
- package/docs/fr/intlayer_with_nestjs.md +0 -15
- package/docs/fr/intlayer_with_next-i18next.md +0 -28
- package/docs/fr/intlayer_with_nextjs_14.md +4 -40
- package/docs/fr/intlayer_with_nextjs_15.md +18 -45
- package/docs/fr/intlayer_with_nextjs_16.md +206 -56
- package/docs/fr/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/fr/intlayer_with_nuxt.md +28 -33
- package/docs/fr/intlayer_with_react_native+expo.md +25 -36
- package/docs/fr/intlayer_with_react_router_v7.md +286 -84
- package/docs/fr/intlayer_with_solid_start.md +4 -53
- package/docs/fr/intlayer_with_storybook.md +0 -26
- package/docs/fr/intlayer_with_svelte_kit.md +0 -34
- package/docs/fr/intlayer_with_tanstack+solid.md +38 -51
- package/docs/fr/intlayer_with_tanstack.md +40 -50
- package/docs/fr/intlayer_with_vanilla.md +16 -33
- package/docs/fr/intlayer_with_vite+lit.md +21 -36
- package/docs/fr/intlayer_with_vite+preact.md +28 -42
- package/docs/fr/intlayer_with_vite+react.md +29 -37
- package/docs/fr/intlayer_with_vite+solid.md +26 -39
- package/docs/fr/intlayer_with_vite+svelte.md +25 -36
- package/docs/fr/intlayer_with_vite+vanilla.md +21 -38
- package/docs/fr/intlayer_with_vite+vue.md +25 -35
- package/docs/fr/introduction.md +29 -23
- package/docs/fr/live-sync.md +0 -2
- package/docs/fr/lsp.md +0 -12
- package/docs/fr/mcp_server.md +0 -8
- package/docs/fr/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/fr/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/fr/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/fr/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/fr/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/fr/packages/@intlayer_babel/export.md +0 -10
- package/docs/fr/packages/adonis-intlayer/t.md +0 -12
- package/docs/fr/packages/express-intlayer/t.md +0 -24
- package/docs/fr/packages/hono-intlayer/t.md +0 -22
- package/docs/fr/packages/intlayer/comparePaths.md +0 -12
- package/docs/fr/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/fr/packages/intlayer/getConfiguration.md +0 -4
- package/docs/fr/packages/intlayer/getDictionary.md +0 -10
- package/docs/fr/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/fr/packages/intlayer/getIntlayer.md +0 -12
- package/docs/fr/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/fr/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/fr/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/fr/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/fr/packages/intlayer/getPrefix.md +0 -10
- package/docs/fr/packages/next-intlayer/t.md +0 -18
- package/docs/fr/packages/react-intlayer/t.md +0 -18
- package/docs/fr/readme.md +0 -2
- package/docs/fr/releases/v6.md +0 -26
- package/docs/fr/releases/v7.md +0 -26
- package/docs/fr/releases/v8.md +3 -45
- package/docs/fr/releases/v9.md +0 -22
- package/docs/fr/roadmap.md +0 -22
- package/docs/fr/self_hosting.md +0 -24
- package/docs/fr/testing.md +0 -12
- package/docs/hi/analytics.md +0 -2
- package/docs/hi/bundle_optimization.md +0 -2
- package/docs/hi/cli/index.md +0 -4
- package/docs/hi/cli/login.md +0 -2
- package/docs/hi/compiler.md +31 -13
- package/docs/hi/configuration.md +0 -37
- package/docs/hi/dictionary/html.md +0 -6
- package/docs/hi/dictionary/markdown.md +0 -2
- package/docs/hi/how_works_intlayer.md +0 -12
- package/docs/hi/interest_of_intlayer.md +0 -21
- package/docs/hi/intlayer_CMS.md +0 -16
- package/docs/hi/intlayer_visual_editor.md +0 -11
- package/docs/hi/intlayer_with_adonisjs.md +0 -16
- package/docs/hi/intlayer_with_analog.md +0 -30
- package/docs/hi/intlayer_with_angular_19.md +0 -32
- package/docs/hi/intlayer_with_angular_21.md +0 -31
- package/docs/hi/intlayer_with_astro.md +1 -33
- package/docs/hi/intlayer_with_astro_lit.md +8 -41
- package/docs/hi/intlayer_with_astro_preact.md +8 -41
- package/docs/hi/intlayer_with_astro_react.md +8 -41
- package/docs/hi/intlayer_with_astro_solid.md +8 -41
- package/docs/hi/intlayer_with_astro_svelte.md +8 -41
- package/docs/hi/intlayer_with_astro_vanilla.md +8 -39
- package/docs/hi/intlayer_with_astro_vue.md +0 -33
- package/docs/hi/intlayer_with_create_react_app.md +13 -48
- package/docs/hi/intlayer_with_elysia.md +0 -16
- package/docs/hi/intlayer_with_express.md +0 -15
- package/docs/hi/intlayer_with_fastify.md +0 -15
- package/docs/hi/intlayer_with_hono.md +0 -15
- package/docs/hi/intlayer_with_htmx.md +0 -27
- package/docs/hi/intlayer_with_lynx+react.md +0 -21
- package/docs/hi/intlayer_with_nestjs.md +0 -15
- package/docs/hi/intlayer_with_next-i18next.md +0 -28
- package/docs/hi/intlayer_with_nextjs_14.md +4 -40
- package/docs/hi/intlayer_with_nextjs_15.md +42 -69
- package/docs/hi/intlayer_with_nextjs_16.md +231 -80
- package/docs/hi/intlayer_with_nextjs_page_router.md +4 -34
- package/docs/hi/intlayer_with_nuxt.md +28 -33
- package/docs/hi/intlayer_with_react_native+expo.md +25 -36
- package/docs/hi/intlayer_with_react_router_v7.md +284 -82
- package/docs/hi/intlayer_with_solid_start.md +4 -53
- package/docs/hi/intlayer_with_storybook.md +0 -26
- package/docs/hi/intlayer_with_svelte_kit.md +0 -34
- package/docs/hi/intlayer_with_tanstack+solid.md +38 -51
- package/docs/hi/intlayer_with_tanstack.md +40 -50
- package/docs/hi/intlayer_with_vanilla.md +16 -33
- package/docs/hi/intlayer_with_vite+lit.md +21 -36
- package/docs/hi/intlayer_with_vite+preact.md +28 -42
- package/docs/hi/intlayer_with_vite+react.md +37 -37
- package/docs/hi/intlayer_with_vite+solid.md +39 -53
- package/docs/hi/intlayer_with_vite+svelte.md +25 -38
- package/docs/hi/intlayer_with_vite+vanilla.md +21 -38
- package/docs/hi/intlayer_with_vite+vue.md +25 -35
- package/docs/hi/introduction.md +29 -23
- package/docs/hi/live-sync.md +0 -2
- package/docs/hi/lsp.md +0 -12
- package/docs/hi/mcp_server.md +0 -8
- package/docs/hi/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/hi/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/hi/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/hi/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/hi/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/hi/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/hi/packages/@intlayer_babel/export.md +0 -10
- package/docs/hi/packages/adonis-intlayer/t.md +0 -12
- package/docs/hi/packages/express-intlayer/t.md +0 -24
- package/docs/hi/packages/hono-intlayer/t.md +0 -22
- package/docs/hi/packages/intlayer/comparePaths.md +0 -12
- package/docs/hi/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/hi/packages/intlayer/getConfiguration.md +0 -4
- package/docs/hi/packages/intlayer/getDictionary.md +0 -10
- package/docs/hi/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/hi/packages/intlayer/getIntlayer.md +0 -12
- package/docs/hi/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/hi/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/hi/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/hi/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/hi/packages/intlayer/getPrefix.md +0 -10
- package/docs/hi/packages/next-intlayer/t.md +0 -18
- package/docs/hi/packages/react-intlayer/t.md +0 -18
- package/docs/hi/readme.md +0 -2
- package/docs/hi/releases/v6.md +0 -26
- package/docs/hi/releases/v7.md +0 -26
- package/docs/hi/releases/v8.md +3 -45
- package/docs/hi/releases/v9.md +0 -22
- package/docs/hi/roadmap.md +0 -22
- package/docs/hi/self_hosting.md +0 -24
- package/docs/hi/testing.md +0 -12
- package/docs/id/analytics.md +0 -2
- package/docs/id/bundle_optimization.md +0 -2
- package/docs/id/cli/index.md +0 -4
- package/docs/id/cli/login.md +0 -2
- package/docs/id/compiler.md +31 -13
- package/docs/id/configuration.md +0 -37
- package/docs/id/dictionary/html.md +0 -6
- package/docs/id/dictionary/markdown.md +0 -2
- package/docs/id/how_works_intlayer.md +0 -12
- package/docs/id/interest_of_intlayer.md +0 -21
- package/docs/id/intlayer_CMS.md +0 -16
- package/docs/id/intlayer_visual_editor.md +0 -11
- package/docs/id/intlayer_with_adonisjs.md +0 -16
- package/docs/id/intlayer_with_analog.md +0 -30
- package/docs/id/intlayer_with_angular_19.md +0 -32
- package/docs/id/intlayer_with_angular_21.md +0 -31
- package/docs/id/intlayer_with_astro.md +1 -33
- package/docs/id/intlayer_with_astro_lit.md +4 -37
- package/docs/id/intlayer_with_astro_preact.md +4 -37
- package/docs/id/intlayer_with_astro_react.md +4 -37
- package/docs/id/intlayer_with_astro_solid.md +4 -37
- package/docs/id/intlayer_with_astro_svelte.md +4 -37
- package/docs/id/intlayer_with_astro_vanilla.md +4 -35
- package/docs/id/intlayer_with_astro_vue.md +0 -33
- package/docs/id/intlayer_with_create_react_app.md +16 -51
- package/docs/id/intlayer_with_elysia.md +0 -16
- package/docs/id/intlayer_with_express.md +0 -15
- package/docs/id/intlayer_with_fastify.md +0 -15
- package/docs/id/intlayer_with_hono.md +0 -15
- package/docs/id/intlayer_with_htmx.md +0 -27
- package/docs/id/intlayer_with_lynx+react.md +0 -21
- package/docs/id/intlayer_with_nestjs.md +0 -15
- package/docs/id/intlayer_with_next-i18next.md +0 -28
- package/docs/id/intlayer_with_nextjs_14.md +5 -29
- package/docs/id/intlayer_with_nextjs_15.md +15 -41
- package/docs/id/intlayer_with_nextjs_16.md +204 -54
- package/docs/id/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/id/intlayer_with_nuxt.md +28 -33
- package/docs/id/intlayer_with_react_native+expo.md +25 -36
- package/docs/id/intlayer_with_react_router_v7.md +284 -82
- package/docs/id/intlayer_with_solid_start.md +4 -53
- package/docs/id/intlayer_with_storybook.md +0 -26
- package/docs/id/intlayer_with_svelte_kit.md +0 -34
- package/docs/id/intlayer_with_tanstack+solid.md +38 -51
- package/docs/id/intlayer_with_tanstack.md +40 -50
- package/docs/id/intlayer_with_vanilla.md +16 -33
- package/docs/id/intlayer_with_vite+lit.md +21 -36
- package/docs/id/intlayer_with_vite+preact.md +28 -42
- package/docs/id/intlayer_with_vite+react.md +37 -37
- package/docs/id/intlayer_with_vite+solid.md +26 -39
- package/docs/id/intlayer_with_vite+svelte.md +25 -36
- package/docs/id/intlayer_with_vite+vanilla.md +21 -38
- package/docs/id/intlayer_with_vite+vue.md +25 -35
- package/docs/id/introduction.md +29 -23
- package/docs/id/live-sync.md +0 -2
- package/docs/id/lsp.md +0 -12
- package/docs/id/mcp_server.md +0 -8
- package/docs/id/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/id/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/id/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/id/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/id/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/id/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/id/packages/@intlayer_babel/export.md +0 -10
- package/docs/id/packages/adonis-intlayer/t.md +0 -12
- package/docs/id/packages/express-intlayer/t.md +0 -24
- package/docs/id/packages/hono-intlayer/t.md +0 -22
- package/docs/id/packages/intlayer/comparePaths.md +0 -12
- package/docs/id/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/id/packages/intlayer/getConfiguration.md +0 -4
- package/docs/id/packages/intlayer/getDictionary.md +0 -10
- package/docs/id/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/id/packages/intlayer/getIntlayer.md +0 -12
- package/docs/id/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/id/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/id/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/id/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/id/packages/intlayer/getPrefix.md +0 -10
- package/docs/id/packages/next-intlayer/t.md +0 -18
- package/docs/id/packages/react-intlayer/t.md +0 -18
- package/docs/id/readme.md +0 -2
- package/docs/id/releases/v6.md +0 -26
- package/docs/id/releases/v7.md +0 -26
- package/docs/id/releases/v8.md +3 -45
- package/docs/id/releases/v9.md +0 -22
- package/docs/id/roadmap.md +0 -22
- package/docs/id/self_hosting.md +0 -24
- package/docs/id/testing.md +0 -12
- package/docs/it/analytics.md +0 -2
- package/docs/it/bundle_optimization.md +0 -2
- package/docs/it/cli/index.md +0 -4
- package/docs/it/cli/login.md +0 -2
- package/docs/it/compiler.md +31 -13
- package/docs/it/configuration.md +0 -37
- package/docs/it/dictionary/html.md +0 -6
- package/docs/it/dictionary/markdown.md +0 -2
- package/docs/it/how_works_intlayer.md +0 -12
- package/docs/it/interest_of_intlayer.md +0 -21
- package/docs/it/intlayer_CMS.md +0 -16
- package/docs/it/intlayer_visual_editor.md +0 -11
- package/docs/it/intlayer_with_adonisjs.md +0 -16
- package/docs/it/intlayer_with_analog.md +0 -30
- package/docs/it/intlayer_with_angular_19.md +0 -32
- package/docs/it/intlayer_with_angular_21.md +0 -31
- package/docs/it/intlayer_with_astro.md +1 -33
- package/docs/it/intlayer_with_astro_lit.md +4 -37
- package/docs/it/intlayer_with_astro_preact.md +4 -37
- package/docs/it/intlayer_with_astro_react.md +4 -37
- package/docs/it/intlayer_with_astro_solid.md +4 -37
- package/docs/it/intlayer_with_astro_svelte.md +4 -37
- package/docs/it/intlayer_with_astro_vanilla.md +4 -35
- package/docs/it/intlayer_with_astro_vue.md +0 -33
- package/docs/it/intlayer_with_create_react_app.md +15 -50
- package/docs/it/intlayer_with_elysia.md +0 -16
- package/docs/it/intlayer_with_express.md +0 -15
- package/docs/it/intlayer_with_fastify.md +0 -15
- package/docs/it/intlayer_with_hono.md +0 -15
- package/docs/it/intlayer_with_htmx.md +0 -27
- package/docs/it/intlayer_with_lynx+react.md +0 -21
- package/docs/it/intlayer_with_nestjs.md +0 -15
- package/docs/it/intlayer_with_next-i18next.md +0 -28
- package/docs/it/intlayer_with_nextjs_14.md +4 -40
- package/docs/it/intlayer_with_nextjs_15.md +15 -41
- package/docs/it/intlayer_with_nextjs_16.md +204 -54
- package/docs/it/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/it/intlayer_with_nuxt.md +28 -33
- package/docs/it/intlayer_with_react_native+expo.md +25 -36
- package/docs/it/intlayer_with_react_router_v7.md +284 -82
- package/docs/it/intlayer_with_solid_start.md +4 -53
- package/docs/it/intlayer_with_storybook.md +0 -26
- package/docs/it/intlayer_with_svelte_kit.md +0 -34
- package/docs/it/intlayer_with_tanstack+solid.md +38 -51
- package/docs/it/intlayer_with_tanstack.md +40 -50
- package/docs/it/intlayer_with_vanilla.md +16 -33
- package/docs/it/intlayer_with_vite+lit.md +21 -36
- package/docs/it/intlayer_with_vite+preact.md +28 -42
- package/docs/it/intlayer_with_vite+react.md +37 -37
- package/docs/it/intlayer_with_vite+solid.md +26 -39
- package/docs/it/intlayer_with_vite+svelte.md +25 -36
- package/docs/it/intlayer_with_vite+vanilla.md +21 -38
- package/docs/it/intlayer_with_vite+vue.md +25 -35
- package/docs/it/introduction.md +29 -23
- package/docs/it/live-sync.md +0 -2
- package/docs/it/lsp.md +0 -12
- package/docs/it/mcp_server.md +0 -8
- package/docs/it/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/it/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/it/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/it/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/it/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/it/packages/@intlayer_babel/export.md +0 -10
- package/docs/it/packages/adonis-intlayer/t.md +0 -12
- package/docs/it/packages/express-intlayer/t.md +0 -24
- package/docs/it/packages/hono-intlayer/t.md +0 -22
- package/docs/it/packages/intlayer/comparePaths.md +0 -12
- package/docs/it/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/it/packages/intlayer/getConfiguration.md +0 -4
- package/docs/it/packages/intlayer/getDictionary.md +0 -10
- package/docs/it/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/it/packages/intlayer/getIntlayer.md +0 -12
- package/docs/it/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/it/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/it/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/it/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/it/packages/intlayer/getPrefix.md +0 -10
- package/docs/it/packages/next-intlayer/t.md +0 -18
- package/docs/it/packages/react-intlayer/t.md +0 -18
- package/docs/it/readme.md +0 -2
- package/docs/it/releases/v6.md +0 -26
- package/docs/it/releases/v7.md +0 -26
- package/docs/it/releases/v8.md +1 -43
- package/docs/it/releases/v9.md +0 -22
- package/docs/it/roadmap.md +0 -22
- package/docs/it/self_hosting.md +0 -24
- package/docs/it/testing.md +0 -12
- package/docs/ja/analytics.md +0 -2
- package/docs/ja/bundle_optimization.md +0 -2
- package/docs/ja/cli/index.md +0 -4
- package/docs/ja/cli/login.md +0 -2
- package/docs/ja/compiler.md +31 -13
- package/docs/ja/configuration.md +0 -37
- package/docs/ja/dictionary/html.md +0 -6
- package/docs/ja/dictionary/markdown.md +4 -6
- package/docs/ja/how_works_intlayer.md +0 -12
- package/docs/ja/interest_of_intlayer.md +0 -23
- package/docs/ja/intlayer_CMS.md +0 -16
- package/docs/ja/intlayer_visual_editor.md +0 -11
- package/docs/ja/intlayer_with_adonisjs.md +0 -16
- package/docs/ja/intlayer_with_analog.md +0 -30
- package/docs/ja/intlayer_with_angular_19.md +0 -32
- package/docs/ja/intlayer_with_angular_21.md +0 -31
- package/docs/ja/intlayer_with_astro.md +1 -33
- package/docs/ja/intlayer_with_astro_lit.md +4 -37
- package/docs/ja/intlayer_with_astro_preact.md +4 -37
- package/docs/ja/intlayer_with_astro_react.md +4 -37
- package/docs/ja/intlayer_with_astro_solid.md +4 -37
- package/docs/ja/intlayer_with_astro_svelte.md +4 -37
- package/docs/ja/intlayer_with_astro_vanilla.md +4 -35
- package/docs/ja/intlayer_with_astro_vue.md +0 -33
- package/docs/ja/intlayer_with_create_react_app.md +13 -48
- package/docs/ja/intlayer_with_elysia.md +0 -16
- package/docs/ja/intlayer_with_express.md +0 -15
- package/docs/ja/intlayer_with_fastify.md +0 -15
- package/docs/ja/intlayer_with_hono.md +0 -15
- package/docs/ja/intlayer_with_htmx.md +0 -27
- package/docs/ja/intlayer_with_lynx+react.md +0 -21
- package/docs/ja/intlayer_with_nestjs.md +0 -15
- package/docs/ja/intlayer_with_next-i18next.md +0 -28
- package/docs/ja/intlayer_with_nextjs_14.md +4 -40
- package/docs/ja/intlayer_with_nextjs_15.md +15 -43
- package/docs/ja/intlayer_with_nextjs_16.md +203 -53
- package/docs/ja/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/ja/intlayer_with_nuxt.md +28 -33
- package/docs/ja/intlayer_with_react_native+expo.md +25 -36
- package/docs/ja/intlayer_with_react_router_v7.md +306 -111
- package/docs/ja/intlayer_with_solid_start.md +4 -53
- package/docs/ja/intlayer_with_storybook.md +0 -26
- package/docs/ja/intlayer_with_svelte_kit.md +0 -34
- package/docs/ja/intlayer_with_tanstack+solid.md +38 -51
- package/docs/ja/intlayer_with_tanstack.md +40 -50
- package/docs/ja/intlayer_with_vanilla.md +16 -33
- package/docs/ja/intlayer_with_vite+lit.md +21 -36
- package/docs/ja/intlayer_with_vite+preact.md +28 -61
- package/docs/ja/intlayer_with_vite+react.md +29 -37
- package/docs/ja/intlayer_with_vite+solid.md +40 -54
- package/docs/ja/intlayer_with_vite+svelte.md +25 -36
- package/docs/ja/intlayer_with_vite+vanilla.md +21 -38
- package/docs/ja/intlayer_with_vite+vue.md +25 -35
- package/docs/ja/introduction.md +29 -23
- package/docs/ja/live-sync.md +0 -2
- package/docs/ja/lsp.md +0 -12
- package/docs/ja/mcp_server.md +0 -8
- package/docs/ja/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/ja/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/ja/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/ja/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/ja/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/ja/packages/@intlayer_babel/export.md +0 -10
- package/docs/ja/packages/adonis-intlayer/t.md +0 -12
- package/docs/ja/packages/express-intlayer/t.md +0 -24
- package/docs/ja/packages/hono-intlayer/t.md +0 -22
- package/docs/ja/packages/intlayer/comparePaths.md +0 -12
- package/docs/ja/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/ja/packages/intlayer/getConfiguration.md +0 -4
- package/docs/ja/packages/intlayer/getDictionary.md +0 -10
- package/docs/ja/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/ja/packages/intlayer/getIntlayer.md +0 -12
- package/docs/ja/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/ja/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/ja/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/ja/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/ja/packages/intlayer/getPrefix.md +0 -10
- package/docs/ja/packages/next-intlayer/t.md +0 -18
- package/docs/ja/packages/react-intlayer/t.md +0 -18
- package/docs/ja/readme.md +0 -2
- package/docs/ja/releases/v6.md +0 -26
- package/docs/ja/releases/v7.md +0 -26
- package/docs/ja/releases/v8.md +3 -45
- package/docs/ja/releases/v9.md +0 -22
- package/docs/ja/roadmap.md +0 -22
- package/docs/ja/self_hosting.md +0 -24
- package/docs/ja/testing.md +0 -12
- package/docs/ko/analytics.md +0 -2
- package/docs/ko/bundle_optimization.md +0 -2
- package/docs/ko/cli/index.md +0 -4
- package/docs/ko/cli/login.md +0 -2
- package/docs/ko/compiler.md +31 -13
- package/docs/ko/configuration.md +0 -37
- package/docs/ko/dictionary/html.md +0 -6
- package/docs/ko/dictionary/markdown.md +0 -2
- package/docs/ko/how_works_intlayer.md +0 -12
- package/docs/ko/interest_of_intlayer.md +0 -21
- package/docs/ko/intlayer_CMS.md +0 -16
- package/docs/ko/intlayer_visual_editor.md +0 -11
- package/docs/ko/intlayer_with_adonisjs.md +0 -16
- package/docs/ko/intlayer_with_analog.md +0 -30
- package/docs/ko/intlayer_with_angular_19.md +0 -32
- package/docs/ko/intlayer_with_angular_21.md +0 -31
- package/docs/ko/intlayer_with_astro.md +1 -33
- package/docs/ko/intlayer_with_astro_lit.md +8 -41
- package/docs/ko/intlayer_with_astro_preact.md +8 -41
- package/docs/ko/intlayer_with_astro_react.md +8 -41
- package/docs/ko/intlayer_with_astro_solid.md +8 -41
- package/docs/ko/intlayer_with_astro_svelte.md +8 -41
- package/docs/ko/intlayer_with_astro_vanilla.md +8 -39
- package/docs/ko/intlayer_with_astro_vue.md +0 -33
- package/docs/ko/intlayer_with_create_react_app.md +9 -43
- package/docs/ko/intlayer_with_elysia.md +0 -16
- package/docs/ko/intlayer_with_express.md +0 -15
- package/docs/ko/intlayer_with_fastify.md +0 -15
- package/docs/ko/intlayer_with_hono.md +0 -15
- package/docs/ko/intlayer_with_htmx.md +0 -27
- package/docs/ko/intlayer_with_lynx+react.md +0 -21
- package/docs/ko/intlayer_with_nestjs.md +0 -15
- package/docs/ko/intlayer_with_next-i18next.md +0 -28
- package/docs/ko/intlayer_with_nextjs_14.md +6 -40
- package/docs/ko/intlayer_with_nextjs_15.md +54 -47
- package/docs/ko/intlayer_with_nextjs_16.md +202 -52
- package/docs/ko/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/ko/intlayer_with_nuxt.md +28 -33
- package/docs/ko/intlayer_with_react_native+expo.md +25 -36
- package/docs/ko/intlayer_with_react_router_v7.md +289 -84
- package/docs/ko/intlayer_with_solid_start.md +4 -53
- package/docs/ko/intlayer_with_storybook.md +2 -26
- package/docs/ko/intlayer_with_svelte_kit.md +0 -34
- package/docs/ko/intlayer_with_tanstack+solid.md +38 -51
- package/docs/ko/intlayer_with_tanstack.md +40 -50
- package/docs/ko/intlayer_with_vanilla.md +16 -33
- package/docs/ko/intlayer_with_vite+lit.md +21 -36
- package/docs/ko/intlayer_with_vite+preact.md +28 -42
- package/docs/ko/intlayer_with_vite+react.md +52 -60
- package/docs/ko/intlayer_with_vite+solid.md +26 -39
- package/docs/ko/intlayer_with_vite+svelte.md +25 -36
- package/docs/ko/intlayer_with_vite+vanilla.md +29 -38
- package/docs/ko/intlayer_with_vite+vue.md +25 -35
- package/docs/ko/introduction.md +29 -23
- package/docs/ko/live-sync.md +0 -2
- package/docs/ko/lsp.md +0 -12
- package/docs/ko/mcp_server.md +0 -8
- package/docs/ko/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/ko/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/ko/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/ko/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/ko/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/ko/packages/@intlayer_babel/export.md +0 -10
- package/docs/ko/packages/adonis-intlayer/t.md +0 -12
- package/docs/ko/packages/express-intlayer/t.md +0 -24
- package/docs/ko/packages/hono-intlayer/t.md +0 -22
- package/docs/ko/packages/intlayer/comparePaths.md +0 -12
- package/docs/ko/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/ko/packages/intlayer/getConfiguration.md +0 -4
- package/docs/ko/packages/intlayer/getDictionary.md +0 -10
- package/docs/ko/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/ko/packages/intlayer/getIntlayer.md +0 -12
- package/docs/ko/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/ko/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/ko/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/ko/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/ko/packages/intlayer/getPrefix.md +0 -10
- package/docs/ko/packages/next-intlayer/t.md +0 -18
- package/docs/ko/packages/react-intlayer/t.md +0 -18
- package/docs/ko/readme.md +0 -2
- package/docs/ko/releases/v6.md +0 -26
- package/docs/ko/releases/v7.md +0 -26
- package/docs/ko/releases/v8.md +1 -43
- package/docs/ko/releases/v9.md +0 -22
- package/docs/ko/roadmap.md +0 -22
- package/docs/ko/self_hosting.md +0 -24
- package/docs/ko/testing.md +0 -12
- package/docs/nl/bundle_optimization.md +0 -2
- package/docs/nl/cli/index.md +0 -4
- package/docs/nl/configuration.md +0 -34
- package/docs/nl/interest_of_intlayer.md +0 -9
- package/docs/nl/intlayer_with_angular_21.md +0 -10
- package/docs/nl/intlayer_with_storybook.md +0 -20
- package/docs/nl/intlayer_with_vanilla.md +0 -13
- package/docs/nl/intlayer_with_vite+lit.md +0 -16
- package/docs/nl/intlayer_with_vite+vanilla.md +0 -17
- package/docs/nl/introduction.md +29 -10
- package/docs/nl/packages/intlayer/comparePaths.md +0 -12
- package/docs/nl/releases/v9.md +0 -20
- package/docs/pl/analytics.md +0 -2
- package/docs/pl/bundle_optimization.md +0 -2
- package/docs/pl/cli/index.md +0 -4
- package/docs/pl/cli/login.md +0 -2
- package/docs/pl/compiler.md +31 -13
- package/docs/pl/configuration.md +0 -37
- package/docs/pl/dictionary/html.md +0 -6
- package/docs/pl/dictionary/markdown.md +0 -2
- package/docs/pl/how_works_intlayer.md +0 -12
- package/docs/pl/interest_of_intlayer.md +0 -21
- package/docs/pl/intlayer_CMS.md +0 -16
- package/docs/pl/intlayer_visual_editor.md +0 -11
- package/docs/pl/intlayer_with_adonisjs.md +0 -16
- package/docs/pl/intlayer_with_analog.md +0 -30
- package/docs/pl/intlayer_with_angular_19.md +0 -32
- package/docs/pl/intlayer_with_angular_21.md +0 -31
- package/docs/pl/intlayer_with_astro.md +1 -33
- package/docs/pl/intlayer_with_astro_lit.md +4 -37
- package/docs/pl/intlayer_with_astro_preact.md +4 -37
- package/docs/pl/intlayer_with_astro_react.md +4 -37
- package/docs/pl/intlayer_with_astro_solid.md +4 -37
- package/docs/pl/intlayer_with_astro_svelte.md +4 -37
- package/docs/pl/intlayer_with_astro_vanilla.md +4 -35
- package/docs/pl/intlayer_with_astro_vue.md +0 -33
- package/docs/pl/intlayer_with_create_react_app.md +15 -50
- package/docs/pl/intlayer_with_elysia.md +0 -16
- package/docs/pl/intlayer_with_express.md +0 -15
- package/docs/pl/intlayer_with_fastify.md +0 -15
- package/docs/pl/intlayer_with_hono.md +0 -15
- package/docs/pl/intlayer_with_htmx.md +0 -27
- package/docs/pl/intlayer_with_lynx+react.md +0 -21
- package/docs/pl/intlayer_with_nestjs.md +0 -15
- package/docs/pl/intlayer_with_next-i18next.md +0 -28
- package/docs/pl/intlayer_with_nextjs_14.md +4 -40
- package/docs/pl/intlayer_with_nextjs_15.md +15 -43
- package/docs/pl/intlayer_with_nextjs_16.md +204 -53
- package/docs/pl/intlayer_with_nextjs_page_router.md +4 -34
- package/docs/pl/intlayer_with_nuxt.md +28 -33
- package/docs/pl/intlayer_with_react_native+expo.md +25 -36
- package/docs/pl/intlayer_with_react_router_v7.md +310 -83
- package/docs/pl/intlayer_with_solid_start.md +4 -53
- package/docs/pl/intlayer_with_storybook.md +0 -26
- package/docs/pl/intlayer_with_svelte_kit.md +0 -34
- package/docs/pl/intlayer_with_tanstack+solid.md +38 -51
- package/docs/pl/intlayer_with_tanstack.md +40 -50
- package/docs/pl/intlayer_with_vanilla.md +16 -33
- package/docs/pl/intlayer_with_vite+lit.md +21 -36
- package/docs/pl/intlayer_with_vite+preact.md +28 -42
- package/docs/pl/intlayer_with_vite+react.md +37 -37
- package/docs/pl/intlayer_with_vite+solid.md +41 -50
- package/docs/pl/intlayer_with_vite+svelte.md +25 -36
- package/docs/pl/intlayer_with_vite+vanilla.md +21 -38
- package/docs/pl/intlayer_with_vite+vue.md +25 -35
- package/docs/pl/introduction.md +29 -23
- package/docs/pl/live-sync.md +0 -2
- package/docs/pl/lsp.md +0 -12
- package/docs/pl/mcp_server.md +0 -8
- package/docs/pl/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/pl/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/pl/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/pl/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/pl/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/pl/packages/@intlayer_babel/export.md +0 -10
- package/docs/pl/packages/adonis-intlayer/t.md +0 -12
- package/docs/pl/packages/express-intlayer/t.md +0 -24
- package/docs/pl/packages/hono-intlayer/t.md +0 -22
- package/docs/pl/packages/intlayer/comparePaths.md +0 -12
- package/docs/pl/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/pl/packages/intlayer/getConfiguration.md +0 -4
- package/docs/pl/packages/intlayer/getDictionary.md +0 -10
- package/docs/pl/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/pl/packages/intlayer/getIntlayer.md +0 -12
- package/docs/pl/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/pl/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/pl/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/pl/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/pl/packages/intlayer/getPrefix.md +0 -10
- package/docs/pl/packages/next-intlayer/t.md +0 -18
- package/docs/pl/packages/next-intlayer/useIntlayer.md +27 -39
- package/docs/pl/packages/react-intlayer/t.md +0 -18
- package/docs/pl/readme.md +0 -2
- package/docs/pl/releases/v6.md +0 -26
- package/docs/pl/releases/v7.md +0 -26
- package/docs/pl/releases/v8.md +3 -45
- package/docs/pl/releases/v9.md +0 -22
- package/docs/pl/roadmap.md +0 -22
- package/docs/pl/self_hosting.md +0 -24
- package/docs/pl/testing.md +0 -12
- package/docs/pt/analytics.md +0 -2
- package/docs/pt/bundle_optimization.md +0 -2
- package/docs/pt/cli/index.md +0 -4
- package/docs/pt/cli/login.md +0 -2
- package/docs/pt/compiler.md +31 -13
- package/docs/pt/configuration.md +0 -37
- package/docs/pt/dictionary/html.md +0 -6
- package/docs/pt/dictionary/markdown.md +0 -2
- package/docs/pt/how_works_intlayer.md +0 -12
- package/docs/pt/interest_of_intlayer.md +0 -21
- package/docs/pt/intlayer_CMS.md +0 -16
- package/docs/pt/intlayer_visual_editor.md +0 -11
- package/docs/pt/intlayer_with_adonisjs.md +0 -16
- package/docs/pt/intlayer_with_analog.md +0 -30
- package/docs/pt/intlayer_with_angular_19.md +0 -32
- package/docs/pt/intlayer_with_angular_21.md +0 -31
- package/docs/pt/intlayer_with_astro.md +1 -33
- package/docs/pt/intlayer_with_astro_lit.md +4 -37
- package/docs/pt/intlayer_with_astro_preact.md +4 -37
- package/docs/pt/intlayer_with_astro_react.md +4 -37
- package/docs/pt/intlayer_with_astro_solid.md +4 -37
- package/docs/pt/intlayer_with_astro_svelte.md +4 -37
- package/docs/pt/intlayer_with_astro_vanilla.md +4 -35
- package/docs/pt/intlayer_with_astro_vue.md +0 -33
- package/docs/pt/intlayer_with_create_react_app.md +16 -51
- package/docs/pt/intlayer_with_elysia.md +0 -16
- package/docs/pt/intlayer_with_express.md +0 -15
- package/docs/pt/intlayer_with_fastify.md +0 -15
- package/docs/pt/intlayer_with_hono.md +0 -15
- package/docs/pt/intlayer_with_htmx.md +0 -27
- package/docs/pt/intlayer_with_lynx+react.md +0 -21
- package/docs/pt/intlayer_with_nestjs.md +0 -15
- package/docs/pt/intlayer_with_next-i18next.md +0 -28
- package/docs/pt/intlayer_with_nextjs_14.md +4 -40
- package/docs/pt/intlayer_with_nextjs_15.md +15 -41
- package/docs/pt/intlayer_with_nextjs_16.md +204 -53
- package/docs/pt/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/pt/intlayer_with_nuxt.md +28 -33
- package/docs/pt/intlayer_with_react_native+expo.md +25 -36
- package/docs/pt/intlayer_with_react_router_v7.md +294 -101
- package/docs/pt/intlayer_with_solid_start.md +4 -53
- package/docs/pt/intlayer_with_storybook.md +0 -26
- package/docs/pt/intlayer_with_svelte_kit.md +0 -34
- package/docs/pt/intlayer_with_tanstack+solid.md +38 -51
- package/docs/pt/intlayer_with_tanstack.md +40 -50
- package/docs/pt/intlayer_with_vanilla.md +16 -33
- package/docs/pt/intlayer_with_vite+lit.md +21 -36
- package/docs/pt/intlayer_with_vite+preact.md +28 -42
- package/docs/pt/intlayer_with_vite+react.md +29 -37
- package/docs/pt/intlayer_with_vite+solid.md +26 -39
- package/docs/pt/intlayer_with_vite+svelte.md +25 -36
- package/docs/pt/intlayer_with_vite+vanilla.md +21 -38
- package/docs/pt/intlayer_with_vite+vue.md +25 -35
- package/docs/pt/introduction.md +29 -23
- package/docs/pt/live-sync.md +0 -2
- package/docs/pt/lsp.md +0 -12
- package/docs/pt/mcp_server.md +0 -8
- package/docs/pt/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/pt/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/pt/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/pt/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/pt/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/pt/packages/@intlayer_babel/export.md +0 -10
- package/docs/pt/packages/adonis-intlayer/t.md +0 -12
- package/docs/pt/packages/express-intlayer/t.md +0 -24
- package/docs/pt/packages/hono-intlayer/t.md +0 -22
- package/docs/pt/packages/intlayer/comparePaths.md +0 -12
- package/docs/pt/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/pt/packages/intlayer/getConfiguration.md +0 -4
- package/docs/pt/packages/intlayer/getDictionary.md +0 -10
- package/docs/pt/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/pt/packages/intlayer/getIntlayer.md +0 -12
- package/docs/pt/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/pt/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/pt/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/pt/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/pt/packages/intlayer/getPrefix.md +0 -10
- package/docs/pt/packages/next-intlayer/t.md +0 -18
- package/docs/pt/packages/react-intlayer/t.md +0 -18
- package/docs/pt/readme.md +0 -2
- package/docs/pt/releases/v6.md +0 -26
- package/docs/pt/releases/v7.md +0 -26
- package/docs/pt/releases/v8.md +3 -45
- package/docs/pt/releases/v9.md +0 -22
- package/docs/pt/roadmap.md +0 -22
- package/docs/pt/self_hosting.md +0 -24
- package/docs/pt/testing.md +0 -12
- package/docs/ru/analytics.md +0 -2
- package/docs/ru/bundle_optimization.md +0 -2
- package/docs/ru/cli/doc-review.md +7 -3
- package/docs/ru/cli/index.md +0 -4
- package/docs/ru/cli/login.md +0 -2
- package/docs/ru/compiler.md +31 -13
- package/docs/ru/configuration.md +0 -37
- package/docs/ru/dictionary/html.md +0 -6
- package/docs/ru/dictionary/markdown.md +0 -2
- package/docs/ru/dictionary/translation.md +32 -33
- package/docs/ru/how_works_intlayer.md +0 -12
- package/docs/ru/interest_of_intlayer.md +0 -21
- package/docs/ru/intlayer_CMS.md +0 -16
- package/docs/ru/intlayer_visual_editor.md +0 -11
- package/docs/ru/intlayer_with_adonisjs.md +0 -16
- package/docs/ru/intlayer_with_analog.md +0 -30
- package/docs/ru/intlayer_with_angular_19.md +0 -32
- package/docs/ru/intlayer_with_angular_21.md +0 -31
- package/docs/ru/intlayer_with_astro.md +1 -33
- package/docs/ru/intlayer_with_astro_lit.md +8 -41
- package/docs/ru/intlayer_with_astro_preact.md +8 -41
- package/docs/ru/intlayer_with_astro_react.md +8 -41
- package/docs/ru/intlayer_with_astro_solid.md +8 -41
- package/docs/ru/intlayer_with_astro_svelte.md +8 -41
- package/docs/ru/intlayer_with_astro_vanilla.md +8 -39
- package/docs/ru/intlayer_with_astro_vue.md +0 -33
- package/docs/ru/intlayer_with_create_react_app.md +15 -50
- package/docs/ru/intlayer_with_elysia.md +0 -16
- package/docs/ru/intlayer_with_express.md +0 -15
- package/docs/ru/intlayer_with_fastify.md +0 -15
- package/docs/ru/intlayer_with_hono.md +0 -15
- package/docs/ru/intlayer_with_htmx.md +0 -27
- package/docs/ru/intlayer_with_lynx+react.md +0 -21
- package/docs/ru/intlayer_with_nestjs.md +0 -15
- package/docs/ru/intlayer_with_next-i18next.md +0 -28
- package/docs/ru/intlayer_with_nextjs_14.md +4 -40
- package/docs/ru/intlayer_with_nextjs_15.md +37 -46
- package/docs/ru/intlayer_with_nextjs_16.md +206 -55
- package/docs/ru/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/ru/intlayer_with_nuxt.md +28 -33
- package/docs/ru/intlayer_with_react_native+expo.md +25 -36
- package/docs/ru/intlayer_with_react_router_v7.md +286 -84
- package/docs/ru/intlayer_with_solid_start.md +4 -53
- package/docs/ru/intlayer_with_storybook.md +0 -26
- package/docs/ru/intlayer_with_svelte_kit.md +0 -34
- package/docs/ru/intlayer_with_tanstack+solid.md +38 -51
- package/docs/ru/intlayer_with_tanstack.md +40 -50
- package/docs/ru/intlayer_with_vanilla.md +16 -33
- package/docs/ru/intlayer_with_vite+lit.md +21 -36
- package/docs/ru/intlayer_with_vite+preact.md +28 -42
- package/docs/ru/intlayer_with_vite+react.md +37 -37
- package/docs/ru/intlayer_with_vite+solid.md +26 -39
- package/docs/ru/intlayer_with_vite+svelte.md +33 -36
- package/docs/ru/intlayer_with_vite+vanilla.md +21 -38
- package/docs/ru/intlayer_with_vite+vue.md +25 -35
- package/docs/ru/introduction.md +29 -23
- package/docs/ru/live-sync.md +0 -2
- package/docs/ru/lsp.md +0 -12
- package/docs/ru/mcp_server.md +0 -8
- package/docs/ru/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/ru/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/ru/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/ru/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/ru/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/ru/packages/@intlayer_babel/export.md +0 -10
- package/docs/ru/packages/adonis-intlayer/t.md +0 -12
- package/docs/ru/packages/express-intlayer/t.md +0 -24
- package/docs/ru/packages/hono-intlayer/t.md +0 -22
- package/docs/ru/packages/intlayer/comparePaths.md +0 -12
- package/docs/ru/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/ru/packages/intlayer/getConfiguration.md +0 -4
- package/docs/ru/packages/intlayer/getDictionary.md +0 -10
- package/docs/ru/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/ru/packages/intlayer/getIntlayer.md +0 -12
- package/docs/ru/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/ru/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/ru/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/ru/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/ru/packages/intlayer/getPrefix.md +0 -10
- package/docs/ru/packages/next-intlayer/t.md +0 -18
- package/docs/ru/packages/react-intlayer/t.md +0 -18
- package/docs/ru/readme.md +0 -2
- package/docs/ru/releases/v6.md +0 -26
- package/docs/ru/releases/v7.md +0 -26
- package/docs/ru/releases/v8.md +3 -45
- package/docs/ru/releases/v9.md +0 -22
- package/docs/ru/roadmap.md +0 -22
- package/docs/ru/self_hosting.md +0 -24
- package/docs/ru/testing.md +0 -12
- package/docs/tr/analytics.md +0 -2
- package/docs/tr/bundle_optimization.md +0 -2
- package/docs/tr/cli/doc-review.md +7 -3
- package/docs/tr/cli/index.md +0 -4
- package/docs/tr/cli/login.md +0 -2
- package/docs/tr/compiler.md +31 -13
- package/docs/tr/configuration.md +0 -37
- package/docs/tr/dictionary/html.md +0 -6
- package/docs/tr/dictionary/markdown.md +0 -2
- package/docs/tr/how_works_intlayer.md +0 -12
- package/docs/tr/interest_of_intlayer.md +0 -21
- package/docs/tr/intlayer_CMS.md +0 -16
- package/docs/tr/intlayer_visual_editor.md +0 -11
- package/docs/tr/intlayer_with_adonisjs.md +0 -16
- package/docs/tr/intlayer_with_analog.md +0 -30
- package/docs/tr/intlayer_with_angular_19.md +0 -32
- package/docs/tr/intlayer_with_angular_21.md +0 -31
- package/docs/tr/intlayer_with_astro.md +1 -33
- package/docs/tr/intlayer_with_astro_lit.md +4 -37
- package/docs/tr/intlayer_with_astro_preact.md +4 -37
- package/docs/tr/intlayer_with_astro_react.md +4 -37
- package/docs/tr/intlayer_with_astro_solid.md +4 -37
- package/docs/tr/intlayer_with_astro_svelte.md +4 -37
- package/docs/tr/intlayer_with_astro_vanilla.md +4 -35
- package/docs/tr/intlayer_with_astro_vue.md +0 -33
- package/docs/tr/intlayer_with_create_react_app.md +14 -49
- package/docs/tr/intlayer_with_elysia.md +0 -16
- package/docs/tr/intlayer_with_express.md +0 -15
- package/docs/tr/intlayer_with_fastify.md +0 -15
- package/docs/tr/intlayer_with_hono.md +0 -15
- package/docs/tr/intlayer_with_htmx.md +0 -27
- package/docs/tr/intlayer_with_lynx+react.md +0 -21
- package/docs/tr/intlayer_with_nestjs.md +0 -15
- package/docs/tr/intlayer_with_next-i18next.md +0 -28
- package/docs/tr/intlayer_with_nextjs_14.md +47 -114
- package/docs/tr/intlayer_with_nextjs_15.md +15 -41
- package/docs/tr/intlayer_with_nextjs_16.md +204 -53
- package/docs/tr/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/tr/intlayer_with_nuxt.md +28 -33
- package/docs/tr/intlayer_with_react_native+expo.md +25 -36
- package/docs/tr/intlayer_with_react_router_v7.md +283 -81
- package/docs/tr/intlayer_with_solid_start.md +4 -53
- package/docs/tr/intlayer_with_storybook.md +0 -26
- package/docs/tr/intlayer_with_svelte_kit.md +0 -34
- package/docs/tr/intlayer_with_tanstack+solid.md +38 -51
- package/docs/tr/intlayer_with_tanstack.md +40 -50
- package/docs/tr/intlayer_with_vanilla.md +16 -33
- package/docs/tr/intlayer_with_vite+lit.md +21 -36
- package/docs/tr/intlayer_with_vite+preact.md +28 -42
- package/docs/tr/intlayer_with_vite+react.md +29 -38
- package/docs/tr/intlayer_with_vite+solid.md +26 -39
- package/docs/tr/intlayer_with_vite+svelte.md +25 -36
- package/docs/tr/intlayer_with_vite+vanilla.md +21 -38
- package/docs/tr/intlayer_with_vite+vue.md +25 -35
- package/docs/tr/introduction.md +29 -23
- package/docs/tr/live-sync.md +0 -2
- package/docs/tr/lsp.md +0 -12
- package/docs/tr/mcp_server.md +0 -8
- package/docs/tr/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/tr/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/tr/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/tr/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/tr/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/tr/packages/@intlayer_babel/export.md +0 -10
- package/docs/tr/packages/adonis-intlayer/t.md +0 -12
- package/docs/tr/packages/express-intlayer/t.md +0 -24
- package/docs/tr/packages/hono-intlayer/t.md +0 -22
- package/docs/tr/packages/intlayer/comparePaths.md +0 -12
- package/docs/tr/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/tr/packages/intlayer/getConfiguration.md +0 -4
- package/docs/tr/packages/intlayer/getDictionary.md +0 -10
- package/docs/tr/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/tr/packages/intlayer/getIntlayer.md +0 -12
- package/docs/tr/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/tr/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/tr/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/tr/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/tr/packages/intlayer/getPrefix.md +0 -10
- package/docs/tr/packages/next-intlayer/t.md +0 -18
- package/docs/tr/packages/react-intlayer/t.md +0 -18
- package/docs/tr/readme.md +0 -2
- package/docs/tr/releases/v6.md +0 -26
- package/docs/tr/releases/v7.md +0 -26
- package/docs/tr/releases/v8.md +3 -45
- package/docs/tr/releases/v9.md +0 -22
- package/docs/tr/roadmap.md +0 -22
- package/docs/tr/self_hosting.md +0 -24
- package/docs/tr/testing.md +0 -12
- package/docs/uk/analytics.md +0 -2
- package/docs/uk/bundle_optimization.md +0 -2
- package/docs/uk/cli/index.md +0 -4
- package/docs/uk/cli/login.md +0 -2
- package/docs/uk/compiler.md +31 -13
- package/docs/uk/configuration.md +0 -37
- package/docs/uk/dictionary/html.md +0 -6
- package/docs/uk/dictionary/markdown.md +0 -2
- package/docs/uk/how_works_intlayer.md +0 -12
- package/docs/uk/interest_of_intlayer.md +0 -21
- package/docs/uk/intlayer_CMS.md +0 -16
- package/docs/uk/intlayer_visual_editor.md +0 -11
- package/docs/uk/intlayer_with_adonisjs.md +0 -16
- package/docs/uk/intlayer_with_analog.md +0 -30
- package/docs/uk/intlayer_with_angular_19.md +0 -32
- package/docs/uk/intlayer_with_angular_21.md +0 -31
- package/docs/uk/intlayer_with_astro.md +1 -33
- package/docs/uk/intlayer_with_astro_lit.md +4 -37
- package/docs/uk/intlayer_with_astro_preact.md +4 -37
- package/docs/uk/intlayer_with_astro_react.md +4 -37
- package/docs/uk/intlayer_with_astro_solid.md +4 -37
- package/docs/uk/intlayer_with_astro_svelte.md +4 -37
- package/docs/uk/intlayer_with_astro_vanilla.md +4 -35
- package/docs/uk/intlayer_with_astro_vue.md +0 -33
- package/docs/uk/intlayer_with_create_react_app.md +15 -50
- package/docs/uk/intlayer_with_elysia.md +0 -16
- package/docs/uk/intlayer_with_express.md +0 -15
- package/docs/uk/intlayer_with_fastify.md +0 -15
- package/docs/uk/intlayer_with_hono.md +0 -15
- package/docs/uk/intlayer_with_htmx.md +0 -27
- package/docs/uk/intlayer_with_lynx+react.md +0 -21
- package/docs/uk/intlayer_with_nestjs.md +0 -15
- package/docs/uk/intlayer_with_next-i18next.md +0 -28
- package/docs/uk/intlayer_with_nextjs_14.md +4 -40
- package/docs/uk/intlayer_with_nextjs_15.md +15 -43
- package/docs/uk/intlayer_with_nextjs_16.md +206 -55
- package/docs/uk/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/uk/intlayer_with_nuxt.md +28 -33
- package/docs/uk/intlayer_with_react_native+expo.md +25 -36
- package/docs/uk/intlayer_with_react_router_v7.md +283 -81
- package/docs/uk/intlayer_with_solid_start.md +4 -53
- package/docs/uk/intlayer_with_storybook.md +0 -26
- package/docs/uk/intlayer_with_svelte_kit.md +0 -34
- package/docs/uk/intlayer_with_tanstack+solid.md +38 -51
- package/docs/uk/intlayer_with_tanstack.md +40 -50
- package/docs/uk/intlayer_with_vanilla.md +16 -33
- package/docs/uk/intlayer_with_vite+lit.md +21 -36
- package/docs/uk/intlayer_with_vite+preact.md +28 -42
- package/docs/uk/intlayer_with_vite+react.md +37 -37
- package/docs/uk/intlayer_with_vite+solid.md +26 -39
- package/docs/uk/intlayer_with_vite+svelte.md +25 -36
- package/docs/uk/intlayer_with_vite+vanilla.md +21 -38
- package/docs/uk/intlayer_with_vite+vue.md +25 -35
- package/docs/uk/introduction.md +29 -23
- package/docs/uk/live-sync.md +0 -2
- package/docs/uk/lsp.md +0 -12
- package/docs/uk/mcp_server.md +0 -8
- package/docs/uk/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/uk/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/uk/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/uk/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/uk/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/uk/packages/@intlayer_babel/export.md +0 -10
- package/docs/uk/packages/adonis-intlayer/t.md +0 -12
- package/docs/uk/packages/express-intlayer/t.md +0 -24
- package/docs/uk/packages/hono-intlayer/t.md +0 -22
- package/docs/uk/packages/intlayer/comparePaths.md +0 -12
- package/docs/uk/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/uk/packages/intlayer/getConfiguration.md +0 -4
- package/docs/uk/packages/intlayer/getDictionary.md +0 -10
- package/docs/uk/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/uk/packages/intlayer/getIntlayer.md +0 -12
- package/docs/uk/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/uk/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/uk/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/uk/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/uk/packages/intlayer/getPrefix.md +0 -10
- package/docs/uk/packages/next-intlayer/t.md +0 -18
- package/docs/uk/packages/react-intlayer/t.md +0 -18
- package/docs/uk/readme.md +0 -2
- package/docs/uk/releases/v6.md +0 -26
- package/docs/uk/releases/v7.md +0 -26
- package/docs/uk/releases/v8.md +1 -43
- package/docs/uk/releases/v9.md +0 -22
- package/docs/uk/roadmap.md +0 -22
- package/docs/uk/self_hosting.md +0 -24
- package/docs/uk/testing.md +0 -12
- package/docs/ur/bundle_optimization.md +0 -2
- package/docs/ur/cli/index.md +0 -4
- package/docs/ur/configuration.md +0 -34
- package/docs/ur/interest_of_intlayer.md +0 -2
- package/docs/ur/intlayer_with_angular_21.md +0 -10
- package/docs/ur/intlayer_with_storybook.md +0 -20
- package/docs/ur/intlayer_with_vanilla.md +0 -13
- package/docs/ur/intlayer_with_vite+lit.md +0 -16
- package/docs/ur/intlayer_with_vite+vanilla.md +0 -17
- package/docs/ur/introduction.md +29 -10
- package/docs/ur/packages/intlayer/comparePaths.md +0 -12
- package/docs/vi/analytics.md +0 -2
- package/docs/vi/bundle_optimization.md +0 -2
- package/docs/vi/cli/index.md +0 -4
- package/docs/vi/cli/login.md +0 -2
- package/docs/vi/compiler.md +31 -13
- package/docs/vi/configuration.md +0 -37
- package/docs/vi/dictionary/html.md +0 -6
- package/docs/vi/dictionary/markdown.md +0 -2
- package/docs/vi/how_works_intlayer.md +0 -12
- package/docs/vi/interest_of_intlayer.md +0 -21
- package/docs/vi/intlayer_CMS.md +0 -16
- package/docs/vi/intlayer_visual_editor.md +0 -11
- package/docs/vi/intlayer_with_adonisjs.md +0 -16
- package/docs/vi/intlayer_with_analog.md +0 -30
- package/docs/vi/intlayer_with_angular_19.md +0 -32
- package/docs/vi/intlayer_with_angular_21.md +0 -31
- package/docs/vi/intlayer_with_astro.md +1 -33
- package/docs/vi/intlayer_with_astro_lit.md +4 -37
- package/docs/vi/intlayer_with_astro_preact.md +4 -37
- package/docs/vi/intlayer_with_astro_react.md +4 -37
- package/docs/vi/intlayer_with_astro_solid.md +4 -37
- package/docs/vi/intlayer_with_astro_svelte.md +4 -37
- package/docs/vi/intlayer_with_astro_vanilla.md +4 -35
- package/docs/vi/intlayer_with_astro_vue.md +0 -33
- package/docs/vi/intlayer_with_create_react_app.md +14 -49
- package/docs/vi/intlayer_with_elysia.md +0 -16
- package/docs/vi/intlayer_with_express.md +0 -15
- package/docs/vi/intlayer_with_fastify.md +0 -15
- package/docs/vi/intlayer_with_hono.md +0 -15
- package/docs/vi/intlayer_with_htmx.md +0 -27
- package/docs/vi/intlayer_with_lynx+react.md +0 -21
- package/docs/vi/intlayer_with_nestjs.md +0 -15
- package/docs/vi/intlayer_with_next-i18next.md +0 -28
- package/docs/vi/intlayer_with_nextjs_14.md +4 -42
- package/docs/vi/intlayer_with_nextjs_15.md +15 -43
- package/docs/vi/intlayer_with_nextjs_16.md +204 -53
- package/docs/vi/intlayer_with_nextjs_page_router.md +4 -36
- package/docs/vi/intlayer_with_nuxt.md +28 -33
- package/docs/vi/intlayer_with_react_native+expo.md +25 -36
- package/docs/vi/intlayer_with_react_router_v7.md +292 -87
- package/docs/vi/intlayer_with_solid_start.md +4 -53
- package/docs/vi/intlayer_with_storybook.md +0 -26
- package/docs/vi/intlayer_with_svelte_kit.md +0 -34
- package/docs/vi/intlayer_with_tanstack+solid.md +38 -51
- package/docs/vi/intlayer_with_tanstack.md +40 -50
- package/docs/vi/intlayer_with_vanilla.md +16 -33
- package/docs/vi/intlayer_with_vite+lit.md +21 -36
- package/docs/vi/intlayer_with_vite+preact.md +28 -61
- package/docs/vi/intlayer_with_vite+react.md +37 -37
- package/docs/vi/intlayer_with_vite+solid.md +26 -39
- package/docs/vi/intlayer_with_vite+svelte.md +25 -36
- package/docs/vi/intlayer_with_vite+vanilla.md +21 -38
- package/docs/vi/intlayer_with_vite+vue.md +25 -35
- package/docs/vi/introduction.md +29 -23
- package/docs/vi/live-sync.md +0 -2
- package/docs/vi/lsp.md +0 -12
- package/docs/vi/mcp_server.md +0 -8
- package/docs/vi/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/vi/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/vi/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/vi/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/vi/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/vi/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/vi/packages/@intlayer_babel/export.md +0 -10
- package/docs/vi/packages/adonis-intlayer/t.md +0 -12
- package/docs/vi/packages/express-intlayer/t.md +0 -24
- package/docs/vi/packages/hono-intlayer/t.md +0 -22
- package/docs/vi/packages/intlayer/comparePaths.md +0 -12
- package/docs/vi/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/vi/packages/intlayer/getConfiguration.md +0 -4
- package/docs/vi/packages/intlayer/getDictionary.md +0 -10
- package/docs/vi/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/vi/packages/intlayer/getIntlayer.md +0 -12
- package/docs/vi/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/vi/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/vi/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/vi/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/vi/packages/intlayer/getPrefix.md +0 -10
- package/docs/vi/packages/next-intlayer/t.md +0 -18
- package/docs/vi/packages/react-intlayer/t.md +0 -18
- package/docs/vi/readme.md +0 -2
- package/docs/vi/releases/v6.md +0 -26
- package/docs/vi/releases/v7.md +0 -26
- package/docs/vi/releases/v8.md +3 -45
- package/docs/vi/releases/v9.md +0 -22
- package/docs/vi/roadmap.md +0 -22
- package/docs/vi/self_hosting.md +0 -24
- package/docs/vi/testing.md +0 -12
- package/docs/zh/analytics.md +0 -2
- package/docs/zh/bundle_optimization.md +0 -2
- package/docs/zh/cli/index.md +0 -4
- package/docs/zh/cli/login.md +0 -2
- package/docs/zh/compiler.md +31 -13
- package/docs/zh/configuration.md +0 -37
- package/docs/zh/dictionary/html.md +0 -6
- package/docs/zh/dictionary/markdown.md +0 -2
- package/docs/zh/how_works_intlayer.md +0 -12
- package/docs/zh/interest_of_intlayer.md +0 -21
- package/docs/zh/intlayer_CMS.md +0 -16
- package/docs/zh/intlayer_visual_editor.md +0 -11
- package/docs/zh/intlayer_with_adonisjs.md +0 -16
- package/docs/zh/intlayer_with_analog.md +0 -30
- package/docs/zh/intlayer_with_angular_19.md +0 -32
- package/docs/zh/intlayer_with_angular_21.md +0 -31
- package/docs/zh/intlayer_with_astro.md +1 -33
- package/docs/zh/intlayer_with_astro_lit.md +4 -37
- package/docs/zh/intlayer_with_astro_preact.md +4 -37
- package/docs/zh/intlayer_with_astro_react.md +4 -37
- package/docs/zh/intlayer_with_astro_solid.md +4 -37
- package/docs/zh/intlayer_with_astro_svelte.md +4 -37
- package/docs/zh/intlayer_with_astro_vanilla.md +4 -35
- package/docs/zh/intlayer_with_astro_vue.md +0 -33
- package/docs/zh/intlayer_with_create_react_app.md +4 -35
- package/docs/zh/intlayer_with_elysia.md +0 -16
- package/docs/zh/intlayer_with_express.md +0 -15
- package/docs/zh/intlayer_with_fastify.md +0 -15
- package/docs/zh/intlayer_with_hono.md +0 -15
- package/docs/zh/intlayer_with_htmx.md +0 -27
- package/docs/zh/intlayer_with_lynx+react.md +0 -23
- package/docs/zh/intlayer_with_nestjs.md +0 -15
- package/docs/zh/intlayer_with_next-i18next.md +0 -28
- package/docs/zh/intlayer_with_nextjs_14.md +52 -102
- package/docs/zh/intlayer_with_nextjs_15.md +15 -43
- package/docs/zh/intlayer_with_nextjs_16.md +204 -55
- package/docs/zh/intlayer_with_nextjs_page_router.md +4 -38
- package/docs/zh/intlayer_with_nuxt.md +28 -33
- package/docs/zh/intlayer_with_react_native+expo.md +25 -36
- package/docs/zh/intlayer_with_react_router_v7.md +304 -96
- package/docs/zh/intlayer_with_solid_start.md +4 -53
- package/docs/zh/intlayer_with_storybook.md +0 -26
- package/docs/zh/intlayer_with_svelte_kit.md +0 -34
- package/docs/zh/intlayer_with_tanstack+solid.md +54 -63
- package/docs/zh/intlayer_with_tanstack.md +40 -50
- package/docs/zh/intlayer_with_vanilla.md +16 -33
- package/docs/zh/intlayer_with_vite+lit.md +21 -38
- package/docs/zh/intlayer_with_vite+preact.md +28 -42
- package/docs/zh/intlayer_with_vite+react.md +47 -51
- package/docs/zh/intlayer_with_vite+solid.md +26 -39
- package/docs/zh/intlayer_with_vite+svelte.md +25 -36
- package/docs/zh/intlayer_with_vite+vanilla.md +21 -38
- package/docs/zh/intlayer_with_vite+vue.md +25 -35
- package/docs/zh/introduction.md +29 -23
- package/docs/zh/live-sync.md +0 -2
- package/docs/zh/lsp.md +0 -12
- package/docs/zh/mcp_server.md +0 -8
- package/docs/zh/migration_from_i18next_to_intlayer.md +0 -26
- package/docs/zh/migration_from_next-i18next_to_intlayer.md +0 -26
- package/docs/zh/migration_from_next-intl_to_intlayer.md +0 -26
- package/docs/zh/migration_from_nuxtjs_i18n_to_intlayer.md +0 -26
- package/docs/zh/migration_from_react-i18next_to_intlayer.md +0 -26
- package/docs/zh/migration_from_vue-i18n_to_intlayer.md +0 -26
- package/docs/zh/packages/@intlayer_babel/export.md +0 -10
- package/docs/zh/packages/adonis-intlayer/t.md +0 -12
- package/docs/zh/packages/express-intlayer/t.md +0 -24
- package/docs/zh/packages/hono-intlayer/t.md +0 -22
- package/docs/zh/packages/intlayer/comparePaths.md +0 -12
- package/docs/zh/packages/intlayer/getCanonicalPath.md +0 -10
- package/docs/zh/packages/intlayer/getConfiguration.md +0 -4
- package/docs/zh/packages/intlayer/getDictionary.md +0 -10
- package/docs/zh/packages/intlayer/getDictionaryAsync.md +0 -12
- package/docs/zh/packages/intlayer/getIntlayer.md +0 -12
- package/docs/zh/packages/intlayer/getIntlayerAsync.md +0 -12
- package/docs/zh/packages/intlayer/getLocalizedPath.md +0 -10
- package/docs/zh/packages/intlayer/getLocalizedUrl.md +0 -10
- package/docs/zh/packages/intlayer/getMultilingualUrls.md +0 -10
- package/docs/zh/packages/intlayer/getPrefix.md +0 -10
- package/docs/zh/packages/next-intlayer/t.md +0 -18
- package/docs/zh/packages/react-intlayer/t.md +0 -18
- package/docs/zh/readme.md +0 -2
- package/docs/zh/releases/v6.md +0 -26
- package/docs/zh/releases/v7.md +0 -26
- package/docs/zh/releases/v8.md +3 -45
- package/docs/zh/releases/v9.md +0 -22
- package/docs/zh/roadmap.md +0 -22
- package/docs/zh/self_hosting.md +0 -24
- package/docs/zh/testing.md +0 -12
- package/docs/zh-TW/bundle_optimization.md +0 -2
- package/docs/zh-TW/interest_of_intlayer.md +0 -2
- package/docs/zh-TW/intlayer_with_angular_21.md +0 -10
- package/docs/zh-TW/introduction.md +29 -10
- package/docs/zh-TW/packages/intlayer/comparePaths.md +0 -12
- package/legal/ar/privacy_notice.md +0 -2
- package/legal/de/privacy_notice.md +0 -2
- package/legal/en/privacy_notice.md +0 -2
- package/legal/en-GB/privacy_notice.md +0 -2
- package/legal/es/privacy_notice.md +0 -2
- package/legal/fr/privacy_notice.md +0 -2
- package/legal/hi/privacy_notice.md +0 -2
- package/legal/id/privacy_notice.md +0 -2
- package/legal/it/privacy_notice.md +0 -2
- package/legal/ja/privacy_notice.md +0 -2
- package/legal/ko/privacy_notice.md +0 -2
- package/legal/pl/privacy_notice.md +0 -2
- package/legal/pt/privacy_notice.md +0 -2
- package/legal/ru/privacy_notice.md +0 -2
- package/legal/tr/privacy_notice.md +0 -2
- package/legal/uk/privacy_notice.md +0 -2
- package/legal/vi/privacy_notice.md +0 -2
- package/legal/zh/privacy_notice.md +0 -2
- package/package.json +9 -9
- package/src/generated/blog.entry.ts +46 -0
- package/src/generated/docs.entry.ts +0 -80
- package/docs/ar/intlayer_with_nextjs_compiler.md +0 -838
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +0 -981
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +0 -886
- package/docs/ar/intlayer_with_vite+react_compiler.md +0 -652
- package/docs/de/intlayer_with_nextjs_compiler.md +0 -829
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +0 -969
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +0 -931
- package/docs/de/intlayer_with_vite+react_compiler.md +0 -652
- package/docs/en/intlayer_with_nextjs_compiler.md +0 -833
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +0 -961
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +0 -930
- package/docs/en/intlayer_with_vite+react_compiler.md +0 -655
- package/docs/en-GB/intlayer_with_nextjs_compiler.md +0 -836
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +0 -986
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +0 -890
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +0 -646
- package/docs/es/intlayer_with_nextjs_compiler.md +0 -838
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +0 -993
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +0 -925
- package/docs/es/intlayer_with_vite+react_compiler.md +0 -652
- package/docs/fr/intlayer_with_nextjs_compiler.md +0 -839
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +0 -986
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +0 -925
- package/docs/fr/intlayer_with_vite+react_compiler.md +0 -652
- package/docs/hi/intlayer_with_nextjs_compiler.md +0 -840
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +0 -989
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +0 -866
- package/docs/hi/intlayer_with_vite+react_compiler.md +0 -653
- package/docs/id/intlayer_with_nextjs_compiler.md +0 -840
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +0 -985
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +0 -883
- package/docs/id/intlayer_with_vite+react_compiler.md +0 -652
- package/docs/it/intlayer_with_nextjs_compiler.md +0 -838
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +0 -981
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +0 -925
- package/docs/it/intlayer_with_vite+react_compiler.md +0 -657
- package/docs/ja/intlayer_with_nextjs_compiler.md +0 -840
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +0 -1013
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +0 -920
- package/docs/ja/intlayer_with_vite+react_compiler.md +0 -652
- package/docs/ko/intlayer_with_nextjs_compiler.md +0 -824
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +0 -997
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +0 -886
- package/docs/ko/intlayer_with_vite+react_compiler.md +0 -637
- package/docs/pl/intlayer_with_nextjs_compiler.md +0 -840
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +0 -982
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +0 -919
- package/docs/pl/intlayer_with_vite+react_compiler.md +0 -652
- package/docs/pt/intlayer_with_nextjs_compiler.md +0 -838
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +0 -985
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +0 -919
- package/docs/pt/intlayer_with_vite+react_compiler.md +0 -657
- package/docs/ru/intlayer_with_nextjs_compiler.md +0 -838
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +0 -1000
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +0 -921
- package/docs/ru/intlayer_with_vite+react_compiler.md +0 -652
- package/docs/tr/intlayer_with_nextjs_compiler.md +0 -840
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +0 -958
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +0 -925
- package/docs/tr/intlayer_with_vite+react_compiler.md +0 -658
- package/docs/uk/intlayer_with_nextjs_compiler.md +0 -840
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +0 -958
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +0 -933
- package/docs/uk/intlayer_with_vite+react_compiler.md +0 -652
- package/docs/vi/intlayer_with_nextjs_compiler.md +0 -840
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +0 -985
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +0 -883
- package/docs/vi/intlayer_with_vite+react_compiler.md +0 -652
- package/docs/zh/intlayer_with_nextjs_compiler.md +0 -838
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +0 -965
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +0 -875
- package/docs/zh/intlayer_with_vite+react_compiler.md +0 -655
|
@@ -1,993 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
createdAt: 2026-01-10
|
|
3
|
-
updatedAt: 2026-08-30
|
|
4
|
-
title: "Next.js 16 i18n - Guía completa para traducir tu aplicación"
|
|
5
|
-
description: "Sin más i18next. La guía 2026 para crear una aplicación Next.js 16 multilingüe (i18n). Traduce con agentes de IA y optimiza el tamaño del bundle, SEO y rendimiento."
|
|
6
|
-
keywords:
|
|
7
|
-
- Internacionalización
|
|
8
|
-
- Documentación
|
|
9
|
-
- Intlayer
|
|
10
|
-
- Next.js 16
|
|
11
|
-
- JavaScript
|
|
12
|
-
- React
|
|
13
|
-
slugs:
|
|
14
|
-
- doc
|
|
15
|
-
- environment
|
|
16
|
-
- nextjs
|
|
17
|
-
- no-locale-path
|
|
18
|
-
applicationTemplate: https://github.com/aymericzip/intlayer-next-no-lolale-path-template
|
|
19
|
-
youtubeVideo: https://www.youtube.com/watch?v=e_PPG7PTqGU
|
|
20
|
-
history:
|
|
21
|
-
- version: 8.9.0
|
|
22
|
-
date: 2026-05-04
|
|
23
|
-
changes: "Actualizar el uso de la API useIntlayer de Solid para el acceso directo a las propiedades"
|
|
24
|
-
- version: 8.0.0
|
|
25
|
-
date: 2026-01-10
|
|
26
|
-
changes: "Lanzamiento inicial"
|
|
27
|
-
author: aymericzip
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
# Traduce tu sitio web Next.js 16 (sin [locale] en la ruta de la página) usando Intlayer | Internacionalización (i18n)
|
|
31
|
-
|
|
32
|
-
<Tabs defaultTab="video">
|
|
33
|
-
<Tab label="Vídeo" value="video">
|
|
34
|
-
|
|
35
|
-
<iframe title="¿La mejor solución i18n para Next.js? Descubre 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/e_PPG7PTqGU?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
36
|
-
|
|
37
|
-
</Tab>
|
|
38
|
-
<Tab label="Código" value="code">
|
|
39
|
-
|
|
40
|
-
<iframe
|
|
41
|
-
src="https://ide.intlayer.org/aymericzip/intlayer-next-16-no-locale-path-template?file=intlayer.config.ts"
|
|
42
|
-
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
43
|
-
title="Demo CodeSandbox - Cómo internacionalizar tu aplicación usando Intlayer"
|
|
44
|
-
sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
|
|
45
|
-
loading="lazy"
|
|
46
|
-
/>
|
|
47
|
-
|
|
48
|
-
</Tab>
|
|
49
|
-
</Tabs>
|
|
50
|
-
|
|
51
|
-
Ver [Plantilla de aplicación](https://github.com/aymericzip/intlayer-next-no-lolale-path-template) en GitHub.
|
|
52
|
-
|
|
53
|
-
## Tabla de contenidos
|
|
54
|
-
|
|
55
|
-
<TOC/>
|
|
56
|
-
|
|
57
|
-
## ¿Por qué Intlayer en lugar de alternativas?
|
|
58
|
-
|
|
59
|
-
En comparación con soluciones principales como `next-intl` o `i18next`, Intlayer es una solución que viene con optimizaciones integradas como:
|
|
60
|
-
|
|
61
|
-
<AccordionGroup>
|
|
62
|
-
<Accordion header="Soporte completo de Next.js">
|
|
63
|
-
|
|
64
|
-
Intlayer está optimizado para funcionar con **Componentes del servidor** para una representación eficiente y es totalmente compatible con [**Turbopack**](https://nextjs.org/docs/architecture/turbopack). No bloquea la representación estática y ofrece middleware, así como todas las funciones necesarias para escalar la internacionalización (i18n).
|
|
65
|
-
|
|
66
|
-
> Intlayer es compatible con Next.js 12, 13, 14, 15 y 16. Si está utilizando Next.js Pages Router, puede consultar esta [guía](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_page_router.md).
|
|
67
|
-
> El enrutamiento por locale es útil para SEO, tamaño del bundle y rendimiento. Si no lo necesita, puede consultar esta [guía] (https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md).
|
|
68
|
-
> Para Next.js 12, 13, 14 y 15 con App Router, consulte esta [guía](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_14.md).
|
|
69
|
-
|
|
70
|
-
</Accordion>
|
|
71
|
-
|
|
72
|
-
<Accordion header="Tamaño del bundle">
|
|
73
|
-
|
|
74
|
-
En lugar de cargar archivos JSON masivos en sus páginas, cargue solo el contenido necesario. Intlayer ayuda a **reducir el tamaño de su bundle y de sus páginas hasta en un 50%**.
|
|
75
|
-
|
|
76
|
-
</Accordion>
|
|
77
|
-
|
|
78
|
-
<Accordion header="Mantenibilidad">
|
|
79
|
-
|
|
80
|
-
Determinar el alcance del contenido de su aplicación **facilita el mantenimiento** para aplicaciones a gran escala. Puede duplicar o eliminar una sola carpeta de funciones sin la carga mental de revisar todo el código base de contenido. Además, Intlayer está **completamente escrito** para garantizar la precisión de su contenido.
|
|
81
|
-
|
|
82
|
-
</Accordion>
|
|
83
|
-
|
|
84
|
-
<Accordion header="Agente de IA">
|
|
85
|
-
|
|
86
|
-
La ubicación conjunta de contenido **reduce el contexto necesario** para los modelos de lenguajes grandes (LLM). Intlayer también viene con un conjunto de herramientas, como una **CLI** para comprobar si faltan traducciones,**[LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/lsp.md)**, **[MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/mcp_server.md)** y **[agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/agent_skills.md)**, para que la experiencia del desarrollador (DX) sea aún más fluida para los agentes de IA.
|
|
87
|
-
|
|
88
|
-
</Accordion>
|
|
89
|
-
|
|
90
|
-
<Accordion header="Automatización">
|
|
91
|
-
|
|
92
|
-
Utilice la automatización para traducir su canal de CI/CD utilizando el LLM de su elección al costo de su proveedor de IA. Intlayer también ofrece un **compilador** para automatizar la extracción de contenido, así como una [plataforma web](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md) para ayudar a **traducir en segundo plano**.
|
|
93
|
-
|
|
94
|
-
</Accordion>
|
|
95
|
-
|
|
96
|
-
<Accordion header="Actuación">
|
|
97
|
-
|
|
98
|
-
La conexión de archivos JSON masivos a componentes puede provocar problemas de rendimiento y reactividad. Intlayer optimiza la carga de su contenido en el momento de la compilación.
|
|
99
|
-
|
|
100
|
-
</Accordion>
|
|
101
|
-
|
|
102
|
-
<Accordion header="Escalando sin ningún desarrollador">
|
|
103
|
-
|
|
104
|
-
Más que una simple solución i18n, Intlayer proporciona un **[editor visual] autohospedado(https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_visual_editor.md)** y un **[CMS completo](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md)** para ayudarle a administrar su contenido multilingüe en **tiempo real**, lo que facilita la colaboración con traductores, redactores y otros miembros del equipo. El contenido se puede almacenar de forma local y/o remota.
|
|
105
|
-
|
|
106
|
-
</Accordion>
|
|
107
|
-
</AccordionGroup>
|
|
108
|
-
|
|
109
|
-
---
|
|
110
|
-
|
|
111
|
-
## Guía paso a paso para configurar Intlayer en una aplicación Next.js
|
|
112
|
-
|
|
113
|
-
<Steps>
|
|
114
|
-
|
|
115
|
-
<Step number={1} title="Instalar dependencias">
|
|
116
|
-
|
|
117
|
-
Instala los paquetes necesarios usando npm:
|
|
118
|
-
|
|
119
|
-
```bash packageManager="npm"
|
|
120
|
-
npx intlayer init --interactive
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
```bash packageManager="pnpm"
|
|
124
|
-
pnpm dlx intlayer init --interactive
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
```bash packageManager="yarn"
|
|
128
|
-
yarn dlx intlayer init --interactive
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
```bash packageManager="bun"
|
|
132
|
-
bunx intlayer init --interactive
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
> la bandera `--interactive` es opcional. Usa `intlayer-cli init` si eres un agente de IA.
|
|
136
|
-
|
|
137
|
-
> Este comando detectará su entorno e instalará los paquetes necesarios. Por ejemplo:
|
|
138
|
-
|
|
139
|
-
```bash packageManager="npm"
|
|
140
|
-
npm install intlayer next-intlayer
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
```bash packageManager="pnpm"
|
|
144
|
-
pnpm add intlayer next-intlayer
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
```bash packageManager="yarn"
|
|
148
|
-
yarn add intlayer next-intlayer
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
```bash packageManager="bun"
|
|
152
|
-
bun add intlayer next-intlayer
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
- **intlayer**
|
|
156
|
-
|
|
157
|
-
El paquete central que proporciona herramientas de internacionalización para la gestión de configuración, traducción, [declaración de contenido](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/content_file.md), transpilación y [comandos CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/index.md).
|
|
158
|
-
|
|
159
|
-
- **next-intlayer**
|
|
160
|
-
|
|
161
|
-
El paquete que integra Intlayer con Next.js. Proporciona proveedores de contexto y hooks para la internacionalización en Next.js. Además, incluye el plugin de Next.js para integrar Intlayer con [Webpack](https://webpack.js.org/) o [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack), así como un proxy para detectar la locale preferida del usuario, gestionar cookies y manejar la redirección de URL.
|
|
162
|
-
|
|
163
|
-
</Step>
|
|
164
|
-
|
|
165
|
-
<Step number={2} title="Configura tu proyecto">
|
|
166
|
-
|
|
167
|
-
Aquí está la estructura final que crearemos:
|
|
168
|
-
|
|
169
|
-
```bash
|
|
170
|
-
.
|
|
171
|
-
├── src
|
|
172
|
-
│ ├── app
|
|
173
|
-
│ │ ├── layout.tsx
|
|
174
|
-
│ │ ├── page.content.ts
|
|
175
|
-
│ │ └── page.tsx
|
|
176
|
-
│ ├── components
|
|
177
|
-
│ │ ├── clientComponentExample
|
|
178
|
-
│ │ │ ├── client-component-example.content.ts
|
|
179
|
-
│ │ │ └── ClientComponentExample.tsx
|
|
180
|
-
│ │ ├── localeSwitcher
|
|
181
|
-
│ │ │ ├── localeSwitcher.content.ts
|
|
182
|
-
│ │ │ └── LocaleSwitcher.tsx
|
|
183
|
-
│ │ └── serverComponentExample
|
|
184
|
-
│ │ ├── server-component-example.content.ts
|
|
185
|
-
│ │ └── ServerComponentExample.tsx
|
|
186
|
-
│ └── proxy.ts
|
|
187
|
-
├── intlayer.config.ts
|
|
188
|
-
├── next.config.ts
|
|
189
|
-
├── package.json
|
|
190
|
-
└── tsconfig.json
|
|
191
|
-
```
|
|
192
|
-
|
|
193
|
-
> Si no quieres locale routing, intlayer puede usarse como un simple provider / hook. Consulta [esta guía](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_with_nextjs_no_locale_path.md) para más detalles.
|
|
194
|
-
|
|
195
|
-
Crea un archivo de configuración para definir los idiomas de tu aplicación:
|
|
196
|
-
|
|
197
|
-
```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
198
|
-
import { Locales, type IntlayerConfig } from "intlayer";
|
|
199
|
-
|
|
200
|
-
const config: IntlayerConfig = {
|
|
201
|
-
internationalization: {
|
|
202
|
-
locales: [
|
|
203
|
-
Locales.ENGLISH,
|
|
204
|
-
Locales.FRENCH,
|
|
205
|
-
Locales.SPANISH,
|
|
206
|
-
// Tus otros locales
|
|
207
|
-
],
|
|
208
|
-
defaultLocale: Locales.ENGLISH,
|
|
209
|
-
},
|
|
210
|
-
routing: {
|
|
211
|
-
mode: "search-params", // o `no-prefix` - Útil para la detección en el middleware
|
|
212
|
-
},
|
|
213
|
-
};
|
|
214
|
-
|
|
215
|
-
export default config;
|
|
216
|
-
```
|
|
217
|
-
|
|
218
|
-
> A través de este archivo de configuración, puedes configurar URLs localizadas, redirección de proxy, nombres de cookies, la ubicación y extensión de tus declaraciones de contenido, desactivar los logs de Intlayer en la consola y más. Para una lista completa de los parámetros disponibles, consulta la [documentación de configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md).
|
|
219
|
-
|
|
220
|
-
</Step>
|
|
221
|
-
|
|
222
|
-
<Step number={3} title="Integrar Intlayer en tu configuración de Next.js">
|
|
223
|
-
|
|
224
|
-
Configura tu setup de Next.js para usar Intlayer:
|
|
225
|
-
|
|
226
|
-
```typescript fileName="next.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
227
|
-
import type { NextConfig } from "next";
|
|
228
|
-
import { withIntlayer } from "next-intlayer/server";
|
|
229
|
-
|
|
230
|
-
const nextConfig: NextConfig = {/* opciones de configuración aquí */};
|
|
231
|
-
|
|
232
|
-
export default withIntlayer(nextConfig);
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
> El plugin de Next.js `withIntlayer()` se utiliza para integrar Intlayer con Next.js. Asegura la generación de los archivos de declaración de contenido y los vigila en modo de desarrollo. Define las variables de entorno de Intlayer dentro de los entornos de [Webpack](https://webpack.js.org/) o [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack). Además, proporciona alias para optimizar el rendimiento y garantiza la compatibilidad con los server components.
|
|
236
|
-
|
|
237
|
-
> La función `withIntlayer()` es una función promise. Permite preparar los diccionarios de intlayer antes de que comience la compilación. Si deseas utilizarla con otros plugins, puedes awaitearlo. Ejemplo:
|
|
238
|
-
>
|
|
239
|
-
> ```ts
|
|
240
|
-
> const nextConfig = await withIntlayer(nextConfig);
|
|
241
|
-
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
242
|
-
>
|
|
243
|
-
> export default nextConfigWithOtherPlugins;
|
|
244
|
-
> ```
|
|
245
|
-
>
|
|
246
|
-
> Si deseas utilizarla de forma síncrona, puedes usar la función `withIntlayerSync()`. Ejemplo:
|
|
247
|
-
>
|
|
248
|
-
> ```ts
|
|
249
|
-
> const nextConfig = withIntlayerSync(nextConfig);
|
|
250
|
-
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
251
|
-
>
|
|
252
|
-
> export default nextConfigWithOtherPlugins;
|
|
253
|
-
> ```
|
|
254
|
-
|
|
255
|
-
> La función `withIntlayer()` es una función que devuelve una promesa. Permite preparar los diccionarios de Intlayer antes de que comience la compilación. Si quieres usarla con otros plugins, puedes usar await. Ejemplo:
|
|
256
|
-
>
|
|
257
|
-
> ```ts
|
|
258
|
-
> const nextConfig = await withIntlayer(nextConfig);
|
|
259
|
-
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
260
|
-
>
|
|
261
|
-
> export default nextConfigWithOtherPlugins;
|
|
262
|
-
> ```
|
|
263
|
-
>
|
|
264
|
-
> Si quieres usarlo de forma sincrónica, puedes usar la función `withIntlayerSync()`. Ejemplo:
|
|
265
|
-
>
|
|
266
|
-
> ```ts
|
|
267
|
-
> const nextConfig = withIntlayerSync(nextConfig);
|
|
268
|
-
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
269
|
-
>
|
|
270
|
-
> export default nextConfigWithOtherPlugins;
|
|
271
|
-
> ```
|
|
272
|
-
>
|
|
273
|
-
> Intlayer detecta automáticamente si tu proyecto está usando **webpack** o **Turbopack** basándose en las banderas de línea de comandos `--webpack`, `--turbo`, o `--turbopack`, así como en tu **versión de Next.js** actual.
|
|
274
|
-
>
|
|
275
|
-
> Desde `next>=16`, si estás usando **Rspack**, debes forzar explícitamente a Intlayer a usar la configuración de webpack deshabilitando Turbopack:
|
|
276
|
-
>
|
|
277
|
-
> ```ts
|
|
278
|
-
> withRspack(withIntlayer(nextConfig, { enableTurbopack: false }));
|
|
279
|
-
> ```
|
|
280
|
-
|
|
281
|
-
</Step>
|
|
282
|
-
|
|
283
|
-
<Step number={4} title="Definir rutas locales dinámicas">
|
|
284
|
-
|
|
285
|
-
Elimina todo de `RootLayout` y reemplázalo con el siguiente código:
|
|
286
|
-
|
|
287
|
-
<Tabs>
|
|
288
|
-
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
289
|
-
|
|
290
|
-
```tsx {5} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
291
|
-
import type { Metadata } from "next";
|
|
292
|
-
import type { ReactNode } from "react";
|
|
293
|
-
import "./globals.css";
|
|
294
|
-
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
295
|
-
import { getLocale, IntlayerProvider } from "next-intlayer/server";
|
|
296
|
-
export { generateStaticParams } from "next-intlayer";
|
|
297
|
-
|
|
298
|
-
export const generateMetadata = async (): Promise<Metadata> => {
|
|
299
|
-
const locale = await getLocale();
|
|
300
|
-
const { title, description, keywords } = getIntlayer("metadata", locale);
|
|
301
|
-
|
|
302
|
-
return {
|
|
303
|
-
title,
|
|
304
|
-
description,
|
|
305
|
-
keywords,
|
|
306
|
-
};
|
|
307
|
-
};
|
|
308
|
-
|
|
309
|
-
const RootLayout = async ({
|
|
310
|
-
children,
|
|
311
|
-
}: Readonly<{
|
|
312
|
-
children: ReactNode;
|
|
313
|
-
}>) => {
|
|
314
|
-
const locale = await getLocale();
|
|
315
|
-
|
|
316
|
-
return (
|
|
317
|
-
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
318
|
-
<body>
|
|
319
|
-
<IntlayerProvider locale={locale}>{children}</IntlayerProvider>
|
|
320
|
-
</body>
|
|
321
|
-
</html>
|
|
322
|
-
);
|
|
323
|
-
};
|
|
324
|
-
|
|
325
|
-
export default RootLayout;
|
|
326
|
-
```
|
|
327
|
-
|
|
328
|
-
> Un único `IntlayerProvider` cubre ambas mitades del árbol: proporciona el contexto del servidor con alcance de solicitud leído por los hooks del servidor e instala el proveedor del cliente para que los componentes del cliente reciban la misma locale.
|
|
329
|
-
|
|
330
|
-
</Tab>
|
|
331
|
-
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
332
|
-
|
|
333
|
-
```tsx {3} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
334
|
-
import type { Metadata } from "next";
|
|
335
|
-
import type { ReactNode } from "react";
|
|
336
|
-
import "./globals.css";
|
|
337
|
-
import { IntlayerProvider, LocalPromiseParams } from "next-intlayer";
|
|
338
|
-
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
339
|
-
import { getLocale } from "next-intlayer/server";
|
|
340
|
-
export { generateStaticParams } from "next-intlayer";
|
|
341
|
-
|
|
342
|
-
export const generateMetadata = async (): Promise<Metadata> => {
|
|
343
|
-
const locale = await getLocale();
|
|
344
|
-
const { title, description, keywords } = getIntlayer("metadata", locale);
|
|
345
|
-
|
|
346
|
-
return {
|
|
347
|
-
title,
|
|
348
|
-
description,
|
|
349
|
-
keywords,
|
|
350
|
-
};
|
|
351
|
-
};
|
|
352
|
-
|
|
353
|
-
const RootLayout = async ({
|
|
354
|
-
children,
|
|
355
|
-
}: Readonly<{
|
|
356
|
-
children: ReactNode;
|
|
357
|
-
}>) => {
|
|
358
|
-
const locale = await getLocale();
|
|
359
|
-
|
|
360
|
-
return (
|
|
361
|
-
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
362
|
-
<body>
|
|
363
|
-
<IntlayerProvider defaultLocale={locale}>{children}</IntlayerProvider>
|
|
364
|
-
</body>
|
|
365
|
-
</html>
|
|
366
|
-
);
|
|
367
|
-
};
|
|
368
|
-
|
|
369
|
-
export default RootLayout;
|
|
370
|
-
```
|
|
371
|
-
|
|
372
|
-
</Tab>
|
|
373
|
-
</Tabs>
|
|
374
|
-
|
|
375
|
-
</Step>
|
|
376
|
-
|
|
377
|
-
<Step number={5} title="Declarar su contenido">
|
|
378
|
-
|
|
379
|
-
Cree y gestione sus declaraciones de contenido para almacenar traducciones:
|
|
380
|
-
|
|
381
|
-
```tsx fileName="src/app/metadata.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
382
|
-
import { t, type Dictionary } from "intlayer";
|
|
383
|
-
import { Metadata } from "next";
|
|
384
|
-
|
|
385
|
-
const metadataContent = {
|
|
386
|
-
key: "metadata",
|
|
387
|
-
content: {
|
|
388
|
-
title: t({
|
|
389
|
-
es: "El Título de mi Proyecto",
|
|
390
|
-
en: "My Project Title",
|
|
391
|
-
fr: "Le Titre de mon Projet",
|
|
392
|
-
}),
|
|
393
|
-
|
|
394
|
-
description: t({
|
|
395
|
-
es: "Descubra nuestra plataforma innovadora diseñada para simplificar su flujo de trabajo y aumentar su productividad.",
|
|
396
|
-
en: "Discover our innovative platform designed to streamline your workflow and boost productivity.",
|
|
397
|
-
fr: "Découvrez notre plateforme innovante conçue pour simplifier votre flux de travail et booster votre productivité.",
|
|
398
|
-
es: "Descubra nuestra plataforma innovadora diseñada para simplificar su flujo de trabajo y aumentar su productividad.",
|
|
399
|
-
}),
|
|
400
|
-
|
|
401
|
-
keywords: t({
|
|
402
|
-
en: ["innovation", "productivity", "workflow", "SaaS"],
|
|
403
|
-
fr: ["innovation", "productivité", "flux de travail", "SaaS"],
|
|
404
|
-
es: ["innovación", "productividad", "flujo de trabajo", "SaaS"],
|
|
405
|
-
}),
|
|
406
|
-
},
|
|
407
|
-
} as Dictionary<Metadata>;
|
|
408
|
-
|
|
409
|
-
export default metadataContent;
|
|
410
|
-
```
|
|
411
|
-
|
|
412
|
-
```json fileName="src/app/metadata.content.json" contentDeclarationFormat="json"
|
|
413
|
-
{
|
|
414
|
-
"key": "metadata",
|
|
415
|
-
"content": {
|
|
416
|
-
"title": {
|
|
417
|
-
"nodeType": "translation",
|
|
418
|
-
"translation": {
|
|
419
|
-
"es": "El Título de mi Proyecto",
|
|
420
|
-
"en": "My Project Title",
|
|
421
|
-
"fr": "Le Titre de mon Projet"
|
|
422
|
-
}
|
|
423
|
-
},
|
|
424
|
-
"description": {
|
|
425
|
-
"nodeType": "translation",
|
|
426
|
-
"translation": {
|
|
427
|
-
"es": "Descubra nuestra plataforma innovadora diseñada para simplificar su flujo de trabajo y aumentar su productividad.",
|
|
428
|
-
"en": "Discover our innovative platform designed to streamline your workflow and boost productivity.",
|
|
429
|
-
"fr": "Descubra nuestra plataforma innovadora diseñada para simplificar su flujo de trabajo y aumentar su productividad.",
|
|
430
|
-
"es": "Descubra nuestra plataforma innovadora diseñada para simplificar su flujo de trabajo y aumentar su productividad."
|
|
431
|
-
}
|
|
432
|
-
},
|
|
433
|
-
"keywords": {
|
|
434
|
-
"nodeType": "translation",
|
|
435
|
-
"translation": {
|
|
436
|
-
"en": ["innovation", "productivity", "workflow", "SaaS"],
|
|
437
|
-
"fr": ["innovation", "productivité", "flux de travail", "SaaS"],
|
|
438
|
-
"es": ["innovación", "productividad", "flujo de trabajo", "SaaS"]
|
|
439
|
-
}
|
|
440
|
-
}
|
|
441
|
-
}
|
|
442
|
-
}
|
|
443
|
-
```
|
|
444
|
-
|
|
445
|
-
```tsx fileName="src/app/page.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
446
|
-
import { t, type Dictionary } from "intlayer";
|
|
447
|
-
|
|
448
|
-
const pageContent = {
|
|
449
|
-
key: "page",
|
|
450
|
-
content: {
|
|
451
|
-
getStarted: {
|
|
452
|
-
main: t({
|
|
453
|
-
es: "Comience por editar",
|
|
454
|
-
en: "Get started by editing",
|
|
455
|
-
fr: "Commencez par éditer",
|
|
456
|
-
}),
|
|
457
|
-
pageLink: "src/app/page.tsx",
|
|
458
|
-
},
|
|
459
|
-
},
|
|
460
|
-
} satisfies Dictionary;
|
|
461
|
-
|
|
462
|
-
export default pageContent;
|
|
463
|
-
```
|
|
464
|
-
|
|
465
|
-
```json fileName="src/app/page.content.json" contentDeclarationFormat="json"
|
|
466
|
-
{
|
|
467
|
-
"$schema": "https://intlayer.org/schema.json",
|
|
468
|
-
"key": "page",
|
|
469
|
-
"content": {
|
|
470
|
-
"getStarted": {
|
|
471
|
-
"nodeType": "translation",
|
|
472
|
-
"translation": {
|
|
473
|
-
"es": "Comience por editar",
|
|
474
|
-
"en": "Get started by editing",
|
|
475
|
-
"fr": "Commencez par éditer"
|
|
476
|
-
}
|
|
477
|
-
},
|
|
478
|
-
"pageLink": "src/app/page.tsx"
|
|
479
|
-
}
|
|
480
|
-
}
|
|
481
|
-
```
|
|
482
|
-
|
|
483
|
-
> Tus declaraciones de contenido pueden definirse en cualquier lugar de tu aplicación siempre que se incluyan en el directorio `contentDir` (por defecto, `./src`). Y coincidan con la extensión de archivo de declaración de contenido (por defecto, `.content.{json,ts,tsx,js,jsx,mjs,cjs,md,mdx,yaml,yml}`).
|
|
484
|
-
|
|
485
|
-
> Para más detalles, consulta la [documentación de declaraciones de contenido](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/content_file.md).
|
|
486
|
-
|
|
487
|
-
</Step>
|
|
488
|
-
|
|
489
|
-
<Step number={6} title="Utiliza el contenido en tu código">
|
|
490
|
-
|
|
491
|
-
Accede a los diccionarios de contenido desde cualquier parte de tu aplicación:
|
|
492
|
-
|
|
493
|
-
<Tabs>
|
|
494
|
-
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
495
|
-
|
|
496
|
-
```tsx fileName="src/app/page.tsx" codeFormat={["typescript", "esm"]}
|
|
497
|
-
import type { FC } from "react";
|
|
498
|
-
import { ClientComponentExample } from "@components/clientComponentExample/ClientComponentExample";
|
|
499
|
-
import { ServerComponentExample } from "@components/serverComponentExample/ServerComponentExample";
|
|
500
|
-
import { useIntlayer } from "next-intlayer";
|
|
501
|
-
import { NextPage } from "next";
|
|
502
|
-
|
|
503
|
-
const PageContent: FC = () => {
|
|
504
|
-
const content = useIntlayer("page");
|
|
505
|
-
|
|
506
|
-
return (
|
|
507
|
-
<>
|
|
508
|
-
<p>{content.getStarted.main}</p>
|
|
509
|
-
<code>{content.getStarted.pageLink}</code>
|
|
510
|
-
</>
|
|
511
|
-
);
|
|
512
|
-
};
|
|
513
|
-
|
|
514
|
-
const Page: NextPage = () => (
|
|
515
|
-
<>
|
|
516
|
-
<PageContent />
|
|
517
|
-
<ServerComponentExample />
|
|
518
|
-
<ClientComponentExample />
|
|
519
|
-
</>
|
|
520
|
-
);
|
|
521
|
-
|
|
522
|
-
export default Page;
|
|
523
|
-
```
|
|
524
|
-
|
|
525
|
-
- **`IntlayerProvider`** se monta una sola vez, en el layout raíz. Proporciona la configuración regional tanto a componentes de servidor como de cliente, por lo que las páginas ya no se envuelven a sí mismas.
|
|
526
|
-
- Sin un segmento de ruta `[locale]`, la configuración regional siempre proviene de la solicitud — el encabezado `x-intlayer-locale` establecido por el proxy de Intlayer, luego la cookie de configuración regional — que los hooks del servidor leen por su cuenta cuando el provider no ha sido ejecutado.
|
|
527
|
-
|
|
528
|
-
</Tab>
|
|
529
|
-
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
530
|
-
|
|
531
|
-
```tsx fileName="src/app/page.tsx" codeFormat={["typescript", "esm"]}
|
|
532
|
-
import type { FC } from "react";
|
|
533
|
-
import { ClientComponentExample } from "@components/clientComponentExample/ClientComponentExample";
|
|
534
|
-
import { ServerComponentExample } from "@components/serverComponentExample/ServerComponentExample";
|
|
535
|
-
import {
|
|
536
|
-
IntlayerServerProvider,
|
|
537
|
-
useIntlayer,
|
|
538
|
-
getLocale,
|
|
539
|
-
} from "next-intlayer/server";
|
|
540
|
-
import { NextPage } from "next";
|
|
541
|
-
import { headers, cookies } from "next/headers";
|
|
542
|
-
|
|
543
|
-
const PageContent: FC = () => {
|
|
544
|
-
const content = useIntlayer("page");
|
|
545
|
-
|
|
546
|
-
return (
|
|
547
|
-
<>
|
|
548
|
-
<p>{content.getStarted.main}</p>
|
|
549
|
-
<code>{content.getStarted.pageLink}</code>
|
|
550
|
-
</>
|
|
551
|
-
);
|
|
552
|
-
};
|
|
553
|
-
|
|
554
|
-
const Page: NextPage = async () => {
|
|
555
|
-
// Espera headers y cookies en Next.js 15+
|
|
556
|
-
const headerList = await headers();
|
|
557
|
-
const cookieList = await cookies();
|
|
558
|
-
|
|
559
|
-
const locale = await getLocale({
|
|
560
|
-
// Primero verifica la cookie de intlayer (por defecto: 'INTLAYER_LOCALE')
|
|
561
|
-
getCookie: (name) => cookieList.get(name)?.value,
|
|
562
|
-
|
|
563
|
-
// Luego verifica el header de intlayer (por defecto: 'x-intlayer-locale')
|
|
564
|
-
// Y finalmente verifica el header accept-language ('accept-language')
|
|
565
|
-
getHeader: (name) => headerList.get(name),
|
|
566
|
-
});
|
|
567
|
-
|
|
568
|
-
return (
|
|
569
|
-
<IntlayerServerProvider locale={locale}>
|
|
570
|
-
<PageContent />
|
|
571
|
-
<ServerComponentExample />
|
|
572
|
-
<ClientComponentExample />
|
|
573
|
-
</IntlayerServerProvider>
|
|
574
|
-
);
|
|
575
|
-
};
|
|
576
|
-
|
|
577
|
-
export default Page;
|
|
578
|
-
```
|
|
579
|
-
|
|
580
|
-
- **`IntlayerClientProvider`** se utiliza para proporcionar el locale a los componentes del lado del cliente. Puede colocarse en cualquier componente padre, incluido el layout. Sin embargo, se recomienda colocarlo en un layout porque Next.js comparte el código del layout entre páginas, lo que lo hace más eficiente. Al usar `IntlayerClientProvider` en el layout, evitas reinicializarlo en cada página, mejorando el rendimiento y manteniendo un contexto de localización coherente en toda la aplicación.
|
|
581
|
-
- **`IntlayerServerProvider`** se utiliza para proporcionar el locale a los hijos en el servidor. No puede establecerse en el layout.
|
|
582
|
-
|
|
583
|
-
> El layout y la página no pueden compartir un contexto del servidor común porque el sistema de contexto del servidor se basa en un almacenamiento de datos por solicitud (a través del mecanismo de [cache de React](https://react.dev/reference/react/cache)), lo que hace que cada "context" se vuelva a crear para diferentes segmentos de la aplicación. Colocar el provider en un layout compartido rompería este aislamiento, impidiendo la propagación correcta de los valores del contexto del servidor a tus server components.
|
|
584
|
-
|
|
585
|
-
</Tab>
|
|
586
|
-
</Tabs>
|
|
587
|
-
|
|
588
|
-
```tsx {4,7} fileName="src/components/clientComponentExample/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
589
|
-
"use client";
|
|
590
|
-
|
|
591
|
-
import type { FC } from "react";
|
|
592
|
-
import { useIntlayer } from "next-intlayer";
|
|
593
|
-
|
|
594
|
-
export const ClientComponentExample: FC = () => {
|
|
595
|
-
const content = useIntlayer("client-component-example"); // Crear declaración de contenido relacionada
|
|
596
|
-
|
|
597
|
-
return (
|
|
598
|
-
<div>
|
|
599
|
-
<h2>{content.title}</h2>
|
|
600
|
-
<p>{content.content}</p>
|
|
601
|
-
</div>
|
|
602
|
-
);
|
|
603
|
-
};
|
|
604
|
-
```
|
|
605
|
-
|
|
606
|
-
<Tabs>
|
|
607
|
-
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
608
|
-
|
|
609
|
-
```tsx {2} fileName="src/components/serverComponentExample/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
610
|
-
import type { FC } from "react";
|
|
611
|
-
import { useIntlayer } from "next-intlayer";
|
|
612
|
-
|
|
613
|
-
export const ServerComponentExample: FC = () => {
|
|
614
|
-
const content = useIntlayer("server-component-example"); // Crear declaración de contenido relacionada
|
|
615
|
-
|
|
616
|
-
return (
|
|
617
|
-
<div>
|
|
618
|
-
<h2>{content.title}</h2>
|
|
619
|
-
<p>{content.content}</p>
|
|
620
|
-
</div>
|
|
621
|
-
);
|
|
622
|
-
};
|
|
623
|
-
```
|
|
624
|
-
|
|
625
|
-
> `next-intlayer` es la ruta de importación isomórfica: la condición de exportación `react-server` proporciona a los componentes del servidor la implementación de locale ambiental, mientras que los componentes del cliente obtienen la basada en contexto. La misma llamada funciona en ambos lados.
|
|
626
|
-
|
|
627
|
-
</Tab>
|
|
628
|
-
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
629
|
-
|
|
630
|
-
```tsx {2} fileName="src/components/serverComponentExample/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
631
|
-
import type { FC } from "react";
|
|
632
|
-
import { useIntlayer } from "next-intlayer/server";
|
|
633
|
-
|
|
634
|
-
export const ServerComponentExample: FC = () => {
|
|
635
|
-
const content = useIntlayer("server-component-example"); // Crear la declaración de contenido relacionada
|
|
636
|
-
|
|
637
|
-
return (
|
|
638
|
-
<div>
|
|
639
|
-
<h2>{content.title}</h2>
|
|
640
|
-
<p>{content.content}</p>
|
|
641
|
-
</div>
|
|
642
|
-
);
|
|
643
|
-
};
|
|
644
|
-
```
|
|
645
|
-
|
|
646
|
-
</Tab>
|
|
647
|
-
</Tabs>
|
|
648
|
-
|
|
649
|
-
> Si deseas utilizar tu contenido en un atributo `string`, como `alt`, `title`, `href`, `aria-label`, etc., puedes usar el valor de la función, como:
|
|
650
|
-
|
|
651
|
-
> Si desea usar su contenido en un atributo de tipo `string`, como `alt`, `title`, `href`, `aria-label`, etc., debe invocar el valor de la función, por ejemplo:
|
|
652
|
-
>
|
|
653
|
-
> ```html
|
|
654
|
-
> <img src="{content.image.src.value}" alt="{content.image.value}" />
|
|
655
|
-
> <img src="{content.image.src.toString()}" alt="{content.image.toString()}" />
|
|
656
|
-
> <img src="{String(content.image.src)}" alt="{String(content.image)}" />
|
|
657
|
-
> ```
|
|
658
|
-
>
|
|
659
|
-
> Para saber más sobre el hook `useIntlayer`, consulte la [documentación](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/next-intlayer/useIntlayer.md).
|
|
660
|
-
|
|
661
|
-
> Para obtener más información sobre el hook `useIntlayer`, consulta la [documentación](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/next-intlayer/useIntlayer.md).
|
|
662
|
-
|
|
663
|
-
</Step>
|
|
664
|
-
|
|
665
|
-
<Step number={7} title="Configurar el proxy para la detección del locale" isOptional={true}>
|
|
666
|
-
|
|
667
|
-
Configura el proxy para detectar el locale preferido del usuario:
|
|
668
|
-
|
|
669
|
-
```typescript fileName="src/proxy.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
670
|
-
export { intlayerProxy as proxy } from "next-intlayer/proxy";
|
|
671
|
-
|
|
672
|
-
export const config = {
|
|
673
|
-
matcher:
|
|
674
|
-
"/((?!api|static|assets|robots|sitemap|sw|service-worker|manifest|.*\\..*|_next).*)",
|
|
675
|
-
};
|
|
676
|
-
```
|
|
677
|
-
|
|
678
|
-
> El `intlayerProxy` se utiliza para detectar el locale preferido del usuario y redirigirle a la URL correspondiente según se especifica en la [configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md). Además, permite guardar el locale preferido del usuario en una cookie.
|
|
679
|
-
|
|
680
|
-
> Desde Intlayer v9, este middleware respeta la opción `routing.enableProxy` (`true` por defecto). Establece `routing.enableProxy: false` en tu configuración para convertirlo en un pass-through sin eliminar este archivo. Consulta las [notas de la versión v9](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/releases/v9.md).
|
|
681
|
-
|
|
682
|
-
> Si necesitas encadenar varios proxies (por ejemplo, `intlayerProxy` con autenticación o proxies personalizados), Intlayer ahora proporciona un helper llamado `multipleProxies`.
|
|
683
|
-
|
|
684
|
-
```ts
|
|
685
|
-
import { multipleProxies, intlayerProxy } from "next-intlayer/proxy";
|
|
686
|
-
import { customProxy } from "@utils/customProxy";
|
|
687
|
-
|
|
688
|
-
export const proxy = multipleProxies([intlayerProxy, customProxy]);
|
|
689
|
-
```
|
|
690
|
-
|
|
691
|
-
</Step>
|
|
692
|
-
|
|
693
|
-
<Step number={8} title="Cambiar el idioma de tu contenido" isOptional={true}>
|
|
694
|
-
|
|
695
|
-
Para cambiar el idioma de tu contenido en Next.js, la forma recomendada es usar el componente `Link` para redirigir a los usuarios a la página localizada correspondiente. El componente `Link` habilita la precarga (prefetch) de la página, lo que ayuda a evitar una recarga completa de la página.
|
|
696
|
-
|
|
697
|
-
```tsx fileName="src/components/localeSwitcher/LocaleSwitcher.tsx" codeFormat={["typescript", "esm"]}
|
|
698
|
-
"use client";
|
|
699
|
-
|
|
700
|
-
import type { FC } from "react";
|
|
701
|
-
import { Locales, getHTMLTextDir, getLocaleName } from "intlayer";
|
|
702
|
-
import { useLocale } from "next-intlayer";
|
|
703
|
-
|
|
704
|
-
export const LocaleSwitcher: FC = () => {
|
|
705
|
-
const { locale, availableLocales, setLocale } = useLocale();
|
|
706
|
-
|
|
707
|
-
return (
|
|
708
|
-
<div>
|
|
709
|
-
<button popoverTarget="localePopover">{getLocaleName(locale)}</button>
|
|
710
|
-
<div id="localePopover" popover="auto">
|
|
711
|
-
{availableLocales.map((localeItem) => (
|
|
712
|
-
<button
|
|
713
|
-
key={localeItem}
|
|
714
|
-
aria-current={locale === localeItem ? "page" : undefined}
|
|
715
|
-
onClick={() => setLocale(localeItem)}
|
|
716
|
-
>
|
|
717
|
-
<span>
|
|
718
|
-
{/* Locale - p. ej. FR */}
|
|
719
|
-
{localeItem}
|
|
720
|
-
</span>
|
|
721
|
-
<span>
|
|
722
|
-
{/* Idioma en su propio locale - p. ej. Français */}
|
|
723
|
-
{getLocaleName(localeItem, locale)}
|
|
724
|
-
</span>
|
|
725
|
-
<span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
|
|
726
|
-
{/* Idioma en el locale actual - p. ej. Francés con el locale actual establecido en Locales.SPANISH */}
|
|
727
|
-
{getLocaleName(localeItem)}
|
|
728
|
-
</span>
|
|
729
|
-
<span dir="ltr" lang={Locales.ENGLISH}>
|
|
730
|
-
{/* Idioma en inglés - p. ej. French */}
|
|
731
|
-
{getLocaleName(localeItem, Locales.ENGLISH)}
|
|
732
|
-
</span>
|
|
733
|
-
</button>
|
|
734
|
-
))}
|
|
735
|
-
</div>
|
|
736
|
-
</div>
|
|
737
|
-
);
|
|
738
|
-
};
|
|
739
|
-
```
|
|
740
|
-
|
|
741
|
-
> Una alternativa es usar la función `setLocale` proporcionada por el hook `useLocale`. Esta función no permitirá el prefetch de la página. Consulta la [documentación del hook `useLocale`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/next-intlayer/useLocale.md) para más detalles.
|
|
742
|
-
|
|
743
|
-
> Referencias de la documentación:
|
|
744
|
-
>
|
|
745
|
-
> - [`useLocale` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/next-intlayer/useLocale.md)
|
|
746
|
-
> - [`getLocaleName` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/intlayer/getLocaleName.md)
|
|
747
|
-
> - [`getLocalizedUrl` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/intlayer/getLocalizedUrl.md)
|
|
748
|
-
> - [`getHTMLTextDir` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/intlayer/getHTMLTextDir.md)
|
|
749
|
-
> - [atributo `hrefLang`](https://developers.google.com/search/docs/specialty/international/localized-versions?hl=fr)
|
|
750
|
-
> - [atributo `lang`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang)
|
|
751
|
-
> - [atributo `dir`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dir)
|
|
752
|
-
> - [atributo `aria-current`](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)
|
|
753
|
-
|
|
754
|
-
</Step>
|
|
755
|
-
|
|
756
|
-
<Step number={9} title="Obtener la locale actual en Server Actions" isOptional={true}>
|
|
757
|
-
|
|
758
|
-
Si necesitas la locale activa dentro de una Server Action (p. ej., para localizar correos electrónicos o ejecutar lógica dependiente de la locale), llama a `getLocale` desde `next-intlayer/server`:
|
|
759
|
-
|
|
760
|
-
```tsx fileName="src/app/actions/getLocale.ts" codeFormat="typescript"
|
|
761
|
-
"use server";
|
|
762
|
-
|
|
763
|
-
import { getLocale } from "next-intlayer/server";
|
|
764
|
-
|
|
765
|
-
export const myServerAction = async () => {
|
|
766
|
-
const locale = await getLocale();
|
|
767
|
-
|
|
768
|
-
// Haz algo con la locale
|
|
769
|
-
};
|
|
770
|
-
```
|
|
771
|
-
|
|
772
|
-
> La función `getLocale` sigue una estrategia en cascada para determinar la locale del usuario:
|
|
773
|
-
>
|
|
774
|
-
> 1. Primero, comprueba las cabeceras de la petición en busca de un valor de locale que pueda haber sido establecido por el proxy
|
|
775
|
-
> 2. Si no se encuentra locale en las cabeceras, busca un locale almacenado en cookies
|
|
776
|
-
> 3. Si no se encuentra cookie, intenta detectar el idioma preferido del usuario a partir de la configuración del navegador
|
|
777
|
-
> 4. Como último recurso, recurre al locale predeterminado configurado en la aplicación
|
|
778
|
-
>
|
|
779
|
-
> Esto asegura que se seleccione el locale más apropiado según el contexto disponible.
|
|
780
|
-
|
|
781
|
-
</Step>
|
|
782
|
-
|
|
783
|
-
<Step number={10} title="Optimiza el tamaño del bundle" isOptional={true}>
|
|
784
|
-
|
|
785
|
-
Al usar `next-intlayer`, los diccionarios se incluyen en el bundle para cada página por defecto. Para optimizar el tamaño del bundle, Intlayer proporciona un plugin SWC opcional que reemplaza inteligentemente las llamadas a `useIntlayer` usando macros. Esto asegura que los diccionarios solo se incluyan en los bundles de las páginas que realmente los utilizan.
|
|
786
|
-
|
|
787
|
-
Para habilitar esta optimización, instala el paquete `@intlayer/swc`. Una vez instalado, `next-intlayer` detectará y usará automáticamente el plugin:
|
|
788
|
-
|
|
789
|
-
```bash packageManager="npm"
|
|
790
|
-
npm install @intlayer/swc --save-dev
|
|
791
|
-
```
|
|
792
|
-
|
|
793
|
-
```bash packageManager="pnpm"
|
|
794
|
-
pnpm add @intlayer/swc --save-dev
|
|
795
|
-
```
|
|
796
|
-
|
|
797
|
-
```bash packageManager="yarn"
|
|
798
|
-
yarn add @intlayer/swc --save-dev
|
|
799
|
-
```
|
|
800
|
-
|
|
801
|
-
```bash packageManager="bun"
|
|
802
|
-
bun add @intlayer/swc --dev
|
|
803
|
-
```
|
|
804
|
-
|
|
805
|
-
> Nota: Esta optimización solo está disponible para Next.js 13 y versiones superiores.
|
|
806
|
-
|
|
807
|
-
> Nota: Este paquete no se instala por defecto porque los plugins de SWC siguen siendo experimentales en Next.js. Esto podría cambiar en el futuro.
|
|
808
|
-
|
|
809
|
-
> Nota: Si configuras la opción como `importMode: 'dynamic'` o `importMode: 'fetch'` (en la configuración `dictionary`), dependerá de Suspense, por lo que tendrás que envolver tus llamadas a `useIntlayer` en un límite de `Suspense`. Eso significa que no podrás usar `useIntlayer` directamente en el nivel superior de tu componente Page / Layout.
|
|
810
|
-
|
|
811
|
-
</Step>
|
|
812
|
-
|
|
813
|
-
</Steps>
|
|
814
|
-
|
|
815
|
-
### Supervisar cambios en los diccionarios con Turbopack
|
|
816
|
-
|
|
817
|
-
Cuando uses Turbopack como servidor de desarrollo con el comando `next dev`, los cambios en los diccionarios no se detectarán automáticamente por defecto.
|
|
818
|
-
|
|
819
|
-
Esta limitación se debe a que Turbopack no puede ejecutar plugins de webpack en paralelo para supervisar los cambios en tus archivos de contenido. Para evitar esto, deberás usar el comando `intlayer watch` para ejecutar simultáneamente tanto el servidor de desarrollo como el observador de compilación de Intlayer.
|
|
820
|
-
|
|
821
|
-
```json5 fileName="package.json"
|
|
822
|
-
{
|
|
823
|
-
// ... Tus configuraciones existentes de package.json
|
|
824
|
-
"scripts": {
|
|
825
|
-
// ... Tus configuraciones existentes de scripts
|
|
826
|
-
"dev": "intlayer watch --with 'next dev'",
|
|
827
|
-
},
|
|
828
|
-
}
|
|
829
|
-
```
|
|
830
|
-
|
|
831
|
-
> Si estás usando next-intlayer@<=6.x.x, debes mantener la opción `--turbopack` para que la aplicación Next.js 16 funcione correctamente con Turbopack. Recomendamos usar next-intlayer@>=7.x.x para evitar esta limitación.
|
|
832
|
-
|
|
833
|
-
### Configurar TypeScript
|
|
834
|
-
|
|
835
|
-
Intlayer usa module augmentation para aprovechar TypeScript y fortalecer tu codebase.
|
|
836
|
-
|
|
837
|
-

|
|
838
|
-
|
|
839
|
-

|
|
840
|
-
|
|
841
|
-
Asegúrate de que tu configuración de TypeScript incluya los tipos autogenerados.
|
|
842
|
-
|
|
843
|
-
```json5 fileName="tsconfig.json"
|
|
844
|
-
{
|
|
845
|
-
// ... Tus configuraciones existentes de TypeScript
|
|
846
|
-
"include": [
|
|
847
|
-
// ... Tus configuraciones existentes de TypeScript
|
|
848
|
-
".intlayer/**/*.ts", // Incluir los tipos generados automáticamente
|
|
849
|
-
],
|
|
850
|
-
}
|
|
851
|
-
```
|
|
852
|
-
|
|
853
|
-
### Configuración de Git
|
|
854
|
-
|
|
855
|
-
Se recomienda ignorar los archivos generados por Intlayer. Esto te permite evitar comprometerlos en tu repositorio Git.
|
|
856
|
-
|
|
857
|
-
Para ello, puedes añadir las siguientes instrucciones a tu archivo `.gitignore`:
|
|
858
|
-
|
|
859
|
-
```plaintext fileName=".gitignore"
|
|
860
|
-
# Ignorar los archivos generados por Intlayer
|
|
861
|
-
.intlayer
|
|
862
|
-
```
|
|
863
|
-
|
|
864
|
-
### Extensión de VS Code
|
|
865
|
-
|
|
866
|
-
Para mejorar tu experiencia de desarrollo con Intlayer, puedes instalar la **Extensión oficial de Intlayer para VS Code**.
|
|
867
|
-
|
|
868
|
-
[Instalar desde el VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=intlayer.intlayer-vs-code-extension)
|
|
869
|
-
|
|
870
|
-
Esta extensión proporciona:
|
|
871
|
-
|
|
872
|
-
- **Autocompletado** para claves de traducción.
|
|
873
|
-
- **Detección de errores en tiempo real** para traducciones faltantes.
|
|
874
|
-
- **Previsualizaciones en línea** del contenido traducido.
|
|
875
|
-
- **Acciones rápidas** para crear y actualizar traducciones fácilmente.
|
|
876
|
-
|
|
877
|
-
Para más detalles sobre cómo usar la extensión, consulta la [documentación de la extensión de Intlayer para VS Code](https://intlayer.org/doc/vs-code-extension).
|
|
878
|
-
|
|
879
|
-
### Ir más lejos
|
|
880
|
-
|
|
881
|
-
Para ir más lejos, puedes implementar el [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_visual_editor.md) o externalizar tu contenido usando el [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_CMS.md).
|
|
882
|
-
|
|
883
|
-
## Preguntas frecuentes
|
|
884
|
-
|
|
885
|
-
<FAQ>
|
|
886
|
-
|
|
887
|
-
<Question title="¿Qué soluciones existen para internacionalizar una aplicación Next.js?">
|
|
888
|
-
|
|
889
|
-
El campo `i18n` de `next.config.js` no se aplica al App Router, así que la capa de localización siempre es una elección de biblioteca:
|
|
890
|
-
|
|
891
|
-
- **`next-intl`**, **`next-i18next` / `i18next`** y **`react-intl`**: catálogos JSON o ICU cargados por espacio de nombres.
|
|
892
|
-
- **`Lingui`**: basada en extracción, con mensajes ICU compilados en tiempo de compilación.
|
|
893
|
-
- **`Intlayer`**: contenido declarado junto a cada componente y compilado por componente, totalmente tipado, con traducción con IA, un editor visual y un CMS.
|
|
894
|
-
|
|
895
|
-
Esta guía cubre la configuración sin idioma en la ruta. Consulta [por qué Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/interest_of_intlayer.md) y el [benchmark de i18n de Next.js](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/benchmark/nextjs.md).
|
|
896
|
-
|
|
897
|
-
</Question>
|
|
898
|
-
|
|
899
|
-
<Question title="¿Cuánto añade la i18n al tamaño del bundle de mi aplicación Next.js?">
|
|
900
|
-
|
|
901
|
-
Mucho menos que una configuración basada en espacios de nombres, porque una página nunca descarga un catálogo que no renderiza. Los Server Components resuelven su contenido en el servidor, y el compilador de tiempo de compilación reemplaza las llamadas a `useIntlayer` por las entradas de diccionario exactas que usa un componente, de modo que se descartan las claves sin usar y los idiomas sin usar, y los [diccionarios dinámicos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dynamic_dictionaries/index.md) reparten el resto por idioma. Frente a las alternativas habituales, Intlayer reduce el tamaño del bundle y de la página hasta en un 50%. Consulta la [optimización del bundle](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/bundle_optimization.md) y el [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/benchmark/nextjs.md).
|
|
902
|
-
|
|
903
|
-
</Question>
|
|
904
|
-
|
|
905
|
-
<Question title="¿Puedo migrar desde `next-intl`, `next-i18next` o `i18next` sin reescribir mis componentes?">
|
|
906
|
-
|
|
907
|
-
Sí, y hay dos caminos. Puedes migrar el contenido de forma progresiva con la [guía de migración de next-intl](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/migration_from_next-intl_to_intlayer.md) o la [guía de migración de i18next](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/migration_from_i18next_to_intlayer.md). O puedes mantener tu API actual por completo: los [adaptadores de compatibilidad](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/compat/index.md) exponen exactamente la misma API que `next-intl`, `react-i18next` y `react-intl`, pero servida por diccionarios de Intlayer, así que cambian los imports y el código de los componentes no.
|
|
908
|
-
|
|
909
|
-
</Question>
|
|
910
|
-
|
|
911
|
-
<Question title="¿Puedo conservar mis archivos de traducción JSON existentes?">
|
|
912
|
-
|
|
913
|
-
Sí. El [plugin de sincronización JSON](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/plugins/sync-json.md) mantiene tus archivos `/messages/{locale}/{namespace}.json` como fuente de verdad y genera diccionarios de Intlayer a partir de ellos, en ambas direcciones. Un [plugin de sincronización PO](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/plugins/sync-po.md) hace lo mismo para los catálogos gettext, y los [archivos por idioma](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/per_locale_file.md) te permiten dividir el contenido por idioma en lugar de agrupar los idiomas en un solo archivo.
|
|
914
|
-
|
|
915
|
-
</Question>
|
|
916
|
-
|
|
917
|
-
<Question title="¿Tengo que trasladar mi contenido clave por clave?">
|
|
918
|
-
|
|
919
|
-
No. Ejecuta `npx intlayer extract` e Intlayer lee tus componentes, extrae las cadenas visibles para el usuario y escribe un archivo `.content` junto a cada uno, así que revisas un diff en lugar de copiar cadenas a un catálogo una por una.
|
|
920
|
-
|
|
921
|
-
Para una canalización totalmente automatizada, el [compilador de Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/compiler.md) hace lo mismo en tiempo de compilación: escanea tu código JSX, TSX, Vue y Svelte en cada cambio, genera los diccionarios y los mantiene sincronizados mediante el reemplazo de módulos en caliente, así que no hay ninguna clave que mantener a mano.
|
|
922
|
-
|
|
923
|
-
Conviene conocer dos límites antes de activar el compilador. Funciona por análisis estático, así que las cadenas que solo existen en tiempo de ejecución, como los códigos de error de la API o los campos del CMS, quedan fuera de su alcance. Y tiene que distinguir el texto visible para el usuario de la lógica de la aplicación, como `className="active"` o un código de estado, lo que requiere unas pocas anotaciones en una base de código grande. El [comando extract](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/extract.md) evita ambos manteniéndote en el proceso.
|
|
924
|
-
|
|
925
|
-
</Question>
|
|
926
|
-
|
|
927
|
-
<Question title="¿Qué herramientas para editores y agentes de IA están disponibles?">
|
|
928
|
-
|
|
929
|
-
Cinco piezas, todas opcionales:
|
|
930
|
-
|
|
931
|
-
- **[Extensión de VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/vs_code_extension.md)**: salta de una clave `useIntlayer` al archivo de contenido que la declara, extrae contenido de un componente y ejecuta build, fill, test, push y pull desde la paleta de comandos o desde una pestaña de Intlayer dedicada.
|
|
932
|
-
- **[Servidor LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/lsp.md)**: el mismo conocimiento en cualquier editor que hable LSP, con ir a la definición, buscar todas las referencias, vistas previas al pasar el cursor de un valor traducido, autocompletado de claves y campos, y un aviso cuando una clave no está declarada en ninguna parte. También resuelve las llamadas a `i18next`, `react-i18next`, `next-intl` y `use-intl`, lo que ayuda durante la migración.
|
|
933
|
-
- **[Servidor MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/mcp_server.md)**: expone la documentación y la CLI de Intlayer a Cursor, VS Code, Claude Desktop, Claude Code y ChatGPT, para que un asistente responda a partir de la documentación actual en lugar de adivinar, y pueda ejecutar comandos como `intlayer fill` por sí mismo.
|
|
934
|
-
- **[Habilidades para agentes](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/agent_skills.md)**: habilidades específicas como `intlayer-config`, `intlayer-cli` e `intlayer-content`, además de una por framework, que enseñan a un agente tu configuración de enrutamiento y los tipos de nodo de contenido.
|
|
935
|
-
- **[Plugin de ESLint](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/eslint.md)**: `no-raw-text` marca las cadenas codificadas de forma fija, con reglas adicionales para claves de diccionario estáticas y contenido sin usar.
|
|
936
|
-
|
|
937
|
-
</Question>
|
|
938
|
-
|
|
939
|
-
<Question title="¿Por qué serviría mi aplicación sin el idioma en la URL?">
|
|
940
|
-
|
|
941
|
-
Porque el idioma no siempre forma parte de la identidad de la página. Un panel de control autenticado, una herramienta interna o una aplicación tras un inicio de sesión no tienen motivo para exponer `/fr/` en cada URL: el idioma es una preferencia del usuario, no un documento distinto. Quitar el prefijo también mantiene tus rutas, tus enlaces y tus analíticas en un único conjunto de rutas.
|
|
942
|
-
|
|
943
|
-
</Question>
|
|
944
|
-
|
|
945
|
-
<Question title="¿Cuáles son las consecuencias para el SEO de no tener el idioma en la URL?">
|
|
946
|
-
|
|
947
|
-
Son reales, así que elige de forma deliberada. Sin una URL distinta por idioma, los motores de búsqueda no tienen una página separada que indexar para cada idioma, `hreflang` no tiene a qué apuntar y un rastreador solo ve el idioma que le sirve tu detección por defecto. Eso está bien para el contenido tras un inicio de sesión, que de todos modos no se indexa, y encaja mal con un sitio de marketing público o con documentación. Si el tráfico orgánico por idioma importa, usa la configuración con prefijo de la [guía de Next.js 16](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_with_nextjs_16.md) en su lugar.
|
|
948
|
-
|
|
949
|
-
</Question>
|
|
950
|
-
|
|
951
|
-
<Question title="¿Cuál es la diferencia entre los modos `no-prefix` y `search-params`?">
|
|
952
|
-
|
|
953
|
-
`"no-prefix"` mantiene el idioma completamente fuera de la URL y lo resuelve a partir de una cookie, una cabecera o un dominio, así que todos los idiomas comparten una única dirección. `"search-params"` lo pone en la cadena de consulta como `/dashboard?locale=fr`, lo que sigue dando a cada idioma una URL distinta, enlazable y marcable como favorito sin cambiar tu árbol de rutas. Prefiere `"search-params"` cuando quieras enlaces compartibles por idioma.
|
|
954
|
-
|
|
955
|
-
</Question>
|
|
956
|
-
|
|
957
|
-
<Question title="¿Cómo se detecta entonces el idioma?">
|
|
958
|
-
|
|
959
|
-
De las fuentes listadas en `routing.storage`, por defecto primero una cookie y luego la cabecera `Accept-Language`, recurriendo a tu idioma por defecto. El paso 7 añade el proxy que lo aplica. Un idioma que el usuario elige explícitamente se conserva, de modo que sobrevive a la siguiente visita. Consulta la [referencia de configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md).
|
|
960
|
-
|
|
961
|
-
</Question>
|
|
962
|
-
|
|
963
|
-
<Question title="¿Puedo asignar cada idioma a su propio dominio en su lugar?">
|
|
964
|
-
|
|
965
|
-
Sí, y es la opción a considerar cuando quitaste el prefijo por motivos estéticos pero aún quieres el SEO. `routing.domains` asigna un idioma a un nombre de host, así que el dominio identifica el idioma, no se añade prefijo a la ruta y cada idioma obtiene una URL indexable a la que `hreflang` puede apuntar.
|
|
966
|
-
|
|
967
|
-
</Question>
|
|
968
|
-
|
|
969
|
-
<Question title="¿Cómo traduzco la aplicación automáticamente con IA?">
|
|
970
|
-
|
|
971
|
-
Ejecuta `npx intlayer fill`. Rellena las traducciones que faltan con el LLM de tu elección, usando tu propio proveedor y tu clave de API, y `--git-diff` limita la ejecución al contenido modificado en la rama. Consulta el [comando fill](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/fill.md) y la [integración de CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/CI_CD.md).
|
|
972
|
-
|
|
973
|
-
</Question>
|
|
974
|
-
|
|
975
|
-
<Question title="¿Intlayer admite plurales, género y texto enriquecido?">
|
|
976
|
-
|
|
977
|
-
Sí: [formas plurales](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/plurial.md), [contenido según el género](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/gender.md), condiciones, [inserciones](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/insertion.md), [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/markdown.md) y [formateadores](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/formatters.md) para números, fechas y monedas.
|
|
978
|
-
|
|
979
|
-
</Question>
|
|
980
|
-
|
|
981
|
-
<Question title="¿Cómo pueden los traductores editar el contenido sin tocar el código?">
|
|
982
|
-
|
|
983
|
-
A través del [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_visual_editor.md), que se ejecuta en tu propia infraestructura y permite que cualquiera edite texto en su sitio en la aplicación en ejecución, o del [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_CMS.md), que externaliza el contenido para que pueda cambiar sin un despliegue.
|
|
984
|
-
|
|
985
|
-
</Question>
|
|
986
|
-
|
|
987
|
-
<Question title="¿Es Intlayer gratuito y de código abierto?">
|
|
988
|
-
|
|
989
|
-
Sí, bajo la licencia Apache 2.0, uso comercial incluido. El CMS alojado es un servicio de pago opcional que también puede [autoalojarse](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/self_hosting.md).
|
|
990
|
-
|
|
991
|
-
</Question>
|
|
992
|
-
|
|
993
|
-
</FAQ>
|