@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,965 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
createdAt: 2026-01-10
|
|
3
|
-
updatedAt: 2026-08-30
|
|
4
|
-
title: "Next.js 16 i18n - 翻译你的应用的完整指南"
|
|
5
|
-
description: "告别 i18next。2026 年构建多语言 (i18n) Next.js 16 应用的完整指南。使用 AI 代理翻译并优化包体积、SEO 和性能。"
|
|
6
|
-
keywords:
|
|
7
|
-
- 国际化
|
|
8
|
-
- 文档
|
|
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: "更新 Solid useIntlayer API 用法以直接访问属性"
|
|
24
|
-
- version: 8.0.0
|
|
25
|
-
date: 2026-01-10
|
|
26
|
-
changes: "初始发布"
|
|
27
|
-
author: aymericzip
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
# 使用 Intlayer 翻译你的 Next.js 16 网站(页面路径中不包含 [locale]) | 国际化 (i18n)
|
|
31
|
-
|
|
32
|
-
<Tabs defaultTab="video">
|
|
33
|
-
<Tab label="视频" value="video">
|
|
34
|
-
|
|
35
|
-
<iframe title="适用于 Next.js 的最佳 i18n 解决方案?探索 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="代码" 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="演示 CodeSandbox - 使用 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
|
-
查看 GitHub 上的 [应用模板](https://github.com/aymericzip/intlayer-next-no-lolale-path-template)。
|
|
52
|
-
|
|
53
|
-
## 目录
|
|
54
|
-
|
|
55
|
-
<TOC/>
|
|
56
|
-
|
|
57
|
-
## 为什么选择 Inlayer 而不是替代品?
|
|
58
|
-
|
|
59
|
-
与“next-intl”或“i18next”等主要解决方案相比,Intlayer是一个具有集成优化的解决方案,例如:
|
|
60
|
-
|
|
61
|
-
<AccordionGroup>
|
|
62
|
-
<Accordion header="Full Next.js coverage">
|
|
63
|
-
|
|
64
|
-
Intlayer 经过优化,可以与 **服务器组件** 配合使用,以实现高效渲染,并且与 [**Turbopack**](https://nextjs.org/docs/architecture/turbopack) 完全兼容。它不会阻止静态渲染,并提供中间件以及扩展国际化 (i18n) 所需的所有功能。
|
|
65
|
-
|
|
66
|
-
> Intlayer 兼容 Next.js 12、13、14、15 和 16。如果您使用 Next.js Pages Router,可以参考此[指南](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_page_router.md)。
|
|
67
|
-
> 区域设置路由对于 SEO、Bundle 大小和性能很有用。如果不需要,可以参考这个[指南](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_no_locale_path.md)。
|
|
68
|
-
> 对于带有 App Router 的 Next.js 12、13、14 和 15,请参阅此[指南](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_with_nextjs_14.md)。
|
|
69
|
-
|
|
70
|
-
</Accordion>
|
|
71
|
-
|
|
72
|
-
<Accordion header="捆绑尺寸">
|
|
73
|
-
|
|
74
|
-
不要将大量 JSON 文件加载到页面中,而只需加载必要的内容。 Intlayer 有助于**将捆绑包和页面大小减少多达 50%**。
|
|
75
|
-
|
|
76
|
-
</Accordion>
|
|
77
|
-
|
|
78
|
-
<Accordion header="可维护性">
|
|
79
|
-
|
|
80
|
-
确定应用程序内容的范围**有利于大型应用程序的维护**。您可以复制或删除单个功能文件夹,而无需承担检查整个内容代码库的精神负担。此外,Intlayer 具有**完全类型化 (fully typed)**,以确保您的内容的准确性。
|
|
81
|
-
|
|
82
|
-
</Accordion>
|
|
83
|
-
|
|
84
|
-
<Accordion header="AI Agent">
|
|
85
|
-
|
|
86
|
-
共置内容**减少大型语言模型 (LLM) 所需的上下文**。 Intlayer 还附带了一套工具,例如用于测试缺失翻译的 **CLI**、**[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)** 和 **[agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/agent_skills.md)**,使 AI 代理的开发者体验 (DX) 更加流畅。
|
|
87
|
-
|
|
88
|
-
</Accordion>
|
|
89
|
-
|
|
90
|
-
<Accordion header="自动化">
|
|
91
|
-
|
|
92
|
-
使用您选择的法学硕士,通过自动化在 CI/CD 管道中进行翻译,而费用由您的 AI 提供商承担。 Intlayer 还提供了一个**编译器**来自动提取内容,以及一个[网络平台](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md)来帮助**在后台翻译**。
|
|
93
|
-
|
|
94
|
-
</Accordion>
|
|
95
|
-
|
|
96
|
-
<Accordion header="表现">
|
|
97
|
-
|
|
98
|
-
将大量 JSON 文件连接到组件可能会导致性能和反应性问题。 Intlayer 可在构建时 (build time)优化您的内容加载。
|
|
99
|
-
|
|
100
|
-
</Accordion>
|
|
101
|
-
|
|
102
|
-
<Accordion header="使用非开发环境进行扩展">
|
|
103
|
-
|
|
104
|
-
Intlayer 不仅仅是一个 i18n 解决方案,还提供了一个**自托管的[可视化编辑器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_visual_editor.md)**和一个**[完整的 CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md)** 来帮助您管理多语言内容**实时**,与译员、文案人员和其他团队成员无缝协作。内容可以本地和/或远程存储。
|
|
105
|
-
|
|
106
|
-
</Accordion>
|
|
107
|
-
</AccordionGroup>
|
|
108
|
-
|
|
109
|
-
---
|
|
110
|
-
|
|
111
|
-
## 在 Next.js 应用中逐步设置 Intlayer 的指南
|
|
112
|
-
|
|
113
|
-
<Steps>
|
|
114
|
-
|
|
115
|
-
<Step number={1} title="安装依赖">
|
|
116
|
-
|
|
117
|
-
使用 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
|
-
> `--interactive` 标志是可选的。如果你是 AI agent,请使用 `intlayer-cli init`。
|
|
136
|
-
|
|
137
|
-
> 此命令将检测你的环境并安装所需的包。例如:
|
|
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
|
-
核心包,提供国际化工具,用于配置管理、翻译、[内容声明](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/content_file.md)、转换以及 [CLI 命令](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/index.md)。
|
|
158
|
-
|
|
159
|
-
- **next-intlayer**
|
|
160
|
-
|
|
161
|
-
将 Intlayer 与 Next.js 集成的包。它为 Next.js 国际化提供上下文提供者和 hooks。此外,它还包括用于将 Intlayer 与 [Webpack](https://webpack.js.org/) 或 [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack) 集成的 Next.js 插件,以及用于检测用户首选语言、管理 cookies 和处理 URL 重定向的代理。
|
|
162
|
-
|
|
163
|
-
</Step>
|
|
164
|
-
|
|
165
|
-
<Step number={2} title="配置你的项目">
|
|
166
|
-
|
|
167
|
-
以下是我们将创建的最终结构:
|
|
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
|
-
> 如果你不想要语言路由,intlayer 可以作为一个简单的提供者 / hook 使用。详见[此指南](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_with_nextjs_no_locale_path.md)。
|
|
194
|
-
|
|
195
|
-
创建一个配置文件来配置你的应用程序的语言:
|
|
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
|
-
// 你的其他语言
|
|
207
|
-
],
|
|
208
|
-
defaultLocale: Locales.ENGLISH,
|
|
209
|
-
},
|
|
210
|
-
routing: {
|
|
211
|
-
mode: "search-params", // 或 `no-prefix` - 用于中间件检测
|
|
212
|
-
},
|
|
213
|
-
};
|
|
214
|
-
|
|
215
|
-
export default config;
|
|
216
|
-
```
|
|
217
|
-
|
|
218
|
-
> 通过此配置文件,你可以设置本地化 URL、代理重定向、cookie 名称、内容声明的位置和扩展名、禁用 Intlayer 的控制台日志等。如需完整的可用参数列表,请参考[配置文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/configuration.md)。
|
|
219
|
-
|
|
220
|
-
</Step>
|
|
221
|
-
|
|
222
|
-
<Step number={3} title="在 Next.js 配置中集成 Intlayer">
|
|
223
|
-
|
|
224
|
-
配置你的 Next.js 设置以使用 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 = {/* 配置选项在这里 */};
|
|
231
|
-
|
|
232
|
-
export default withIntlayer(nextConfig);
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
> `withIntlayer()` Next.js 插件用于将 Intlayer 与 Next.js 集成。它确保构建内容声明文件,并在开发模式下监视它们。它在 [Webpack](https://webpack.js.org/) 或 [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack) 环境中定义 Intlayer 环境变量。此外,它提供别名以优化性能并确保与服务器组件的兼容性。
|
|
236
|
-
|
|
237
|
-
> `withIntlayer()` 函数是一个 promise 函数。它允许在构建开始之前准备 intlayer 字典。如果你想将其与其他插件一起使用,你可以等待它。例如:
|
|
238
|
-
>
|
|
239
|
-
> ```ts
|
|
240
|
-
> const nextConfig = await withIntlayer(nextConfig);
|
|
241
|
-
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
242
|
-
>
|
|
243
|
-
> export default nextConfigWithOtherPlugins;
|
|
244
|
-
> ```
|
|
245
|
-
>
|
|
246
|
-
> 如果你想同步使用它,可以使用 `withIntlayerSync()` 函数。例如:
|
|
247
|
-
>
|
|
248
|
-
> ```ts
|
|
249
|
-
> const nextConfig = withIntlayerSync(nextConfig);
|
|
250
|
-
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
251
|
-
>
|
|
252
|
-
> export default nextConfigWithOtherPlugins;
|
|
253
|
-
> ```
|
|
254
|
-
|
|
255
|
-
> Intlayer 根据命令行标志 `--webpack`、`--turbo` 或 `--turbopack`,以及你当前的 **Next.js 版本**,自动检测你的项目是否使用 **webpack** 或 **Turbopack**。
|
|
256
|
-
>
|
|
257
|
-
> 自 `next>=16` 起,如果你使用 **Rspack**,必须通过禁用 Turbopack 显式强制 Intlayer 使用 webpack 配置:
|
|
258
|
-
>
|
|
259
|
-
> ```ts
|
|
260
|
-
> withRspack(withIntlayer(nextConfig, { enableTurbopack: false }));
|
|
261
|
-
> ```
|
|
262
|
-
|
|
263
|
-
</Step>
|
|
264
|
-
|
|
265
|
-
<Step number={4} title="定义动态语言路由">
|
|
266
|
-
|
|
267
|
-
从 `RootLayout` 中删除所有内容,然后用以下代码替换:
|
|
268
|
-
|
|
269
|
-
<Tabs>
|
|
270
|
-
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
271
|
-
|
|
272
|
-
```tsx {5} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
273
|
-
import type { Metadata } from "next";
|
|
274
|
-
import type { ReactNode } from "react";
|
|
275
|
-
import "./globals.css";
|
|
276
|
-
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
277
|
-
import { getLocale, IntlayerProvider } from "next-intlayer/server";
|
|
278
|
-
export { generateStaticParams } from "next-intlayer";
|
|
279
|
-
|
|
280
|
-
export const generateMetadata = async (): Promise<Metadata> => {
|
|
281
|
-
const locale = await getLocale();
|
|
282
|
-
const { title, description, keywords } = getIntlayer("metadata", locale);
|
|
283
|
-
|
|
284
|
-
return {
|
|
285
|
-
title,
|
|
286
|
-
description,
|
|
287
|
-
keywords,
|
|
288
|
-
};
|
|
289
|
-
};
|
|
290
|
-
|
|
291
|
-
const RootLayout = async ({
|
|
292
|
-
children,
|
|
293
|
-
}: Readonly<{
|
|
294
|
-
children: ReactNode;
|
|
295
|
-
}>) => {
|
|
296
|
-
const locale = await getLocale();
|
|
297
|
-
|
|
298
|
-
return (
|
|
299
|
-
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
300
|
-
<body>
|
|
301
|
-
<IntlayerProvider locale={locale}>{children}</IntlayerProvider>
|
|
302
|
-
</body>
|
|
303
|
-
</html>
|
|
304
|
-
);
|
|
305
|
-
};
|
|
306
|
-
|
|
307
|
-
export default RootLayout;
|
|
308
|
-
```
|
|
309
|
-
|
|
310
|
-
> 单个 `IntlayerProvider` 覆盖树的两个部分:它为服务器钩子读取的请求作用域服务器上下文提供种子,并挂载客户端提供程序,以便客户端组件接收相同的区域设置。
|
|
311
|
-
|
|
312
|
-
</Tab>
|
|
313
|
-
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
314
|
-
|
|
315
|
-
```tsx {3} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
316
|
-
import type { Metadata } from "next";
|
|
317
|
-
import type { ReactNode } from "react";
|
|
318
|
-
import "./globals.css";
|
|
319
|
-
import { IntlayerProvider, LocalPromiseParams } from "next-intlayer";
|
|
320
|
-
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
321
|
-
import { getLocale } from "next-intlayer/server";
|
|
322
|
-
export { generateStaticParams } from "next-intlayer";
|
|
323
|
-
|
|
324
|
-
export const generateMetadata = async (): Promise<Metadata> => {
|
|
325
|
-
const locale = await getLocale();
|
|
326
|
-
const { title, description, keywords } = getIntlayer("metadata", locale);
|
|
327
|
-
|
|
328
|
-
return {
|
|
329
|
-
title,
|
|
330
|
-
description,
|
|
331
|
-
keywords,
|
|
332
|
-
};
|
|
333
|
-
};
|
|
334
|
-
|
|
335
|
-
const RootLayout = async ({
|
|
336
|
-
children,
|
|
337
|
-
}: Readonly<{
|
|
338
|
-
children: ReactNode;
|
|
339
|
-
}>) => {
|
|
340
|
-
const locale = await getLocale();
|
|
341
|
-
|
|
342
|
-
return (
|
|
343
|
-
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
344
|
-
<body>
|
|
345
|
-
<IntlayerProvider defaultLocale={locale}>{children}</IntlayerProvider>
|
|
346
|
-
</body>
|
|
347
|
-
</html>
|
|
348
|
-
);
|
|
349
|
-
};
|
|
350
|
-
|
|
351
|
-
export default RootLayout;
|
|
352
|
-
```
|
|
353
|
-
|
|
354
|
-
</Tab>
|
|
355
|
-
</Tabs>
|
|
356
|
-
|
|
357
|
-
</Step>
|
|
358
|
-
|
|
359
|
-
<Step number={5} title="声明你的内容">
|
|
360
|
-
|
|
361
|
-
创建和管理你的内容声明以存储翻译:
|
|
362
|
-
|
|
363
|
-
```tsx fileName="src/app/metadata.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
364
|
-
import { t, type Dictionary } from "intlayer";
|
|
365
|
-
import { Metadata } from "next";
|
|
366
|
-
|
|
367
|
-
const metadataContent = {
|
|
368
|
-
key: "metadata",
|
|
369
|
-
content: {
|
|
370
|
-
title: t({
|
|
371
|
-
zh: "我的项目标题",
|
|
372
|
-
en: "My Project Title",
|
|
373
|
-
fr: "Le Titre de mon Projet",
|
|
374
|
-
es: "El Título de mi Proyecto",
|
|
375
|
-
}),
|
|
376
|
-
|
|
377
|
-
description: t({
|
|
378
|
-
zh: "发现我们为简化工作流程和提高生产力而设计的创新平台。",
|
|
379
|
-
en: "Discover our innovative platform designed to streamline your workflow and boost productivity.",
|
|
380
|
-
fr: "Découvrez notre plateforme innovante conçue pour simplifier votre flux de travail et booster votre productivité.",
|
|
381
|
-
es: "Descubra nuestra plataforma innovadora diseñada para simplificar su flujo de trabajo y aumentar su productividad.",
|
|
382
|
-
}),
|
|
383
|
-
|
|
384
|
-
keywords: t({
|
|
385
|
-
zh: ["创新", "生产力", "工作流程", "SaaS"],
|
|
386
|
-
en: ["innovation", "productivity", "workflow", "SaaS"],
|
|
387
|
-
fr: ["innovation", "productivité", "flux de travail", "SaaS"],
|
|
388
|
-
es: ["innovación", "productividad", "flujo de trabajo", "SaaS"],
|
|
389
|
-
}),
|
|
390
|
-
},
|
|
391
|
-
} as Dictionary<Metadata>;
|
|
392
|
-
|
|
393
|
-
export default metadataContent;
|
|
394
|
-
```
|
|
395
|
-
|
|
396
|
-
```json fileName="src/app/metadata.content.json" contentDeclarationFormat="json"
|
|
397
|
-
{
|
|
398
|
-
"key": "metadata",
|
|
399
|
-
"content": {
|
|
400
|
-
"title": {
|
|
401
|
-
"nodeType": "translation",
|
|
402
|
-
"translation": {
|
|
403
|
-
"zh": "我的项目标题",
|
|
404
|
-
"en": "My Project Title",
|
|
405
|
-
"fr": "Le Titre de mon Projet",
|
|
406
|
-
"es": "El Título de mi Proyecto"
|
|
407
|
-
}
|
|
408
|
-
},
|
|
409
|
-
"description": {
|
|
410
|
-
"nodeType": "translation",
|
|
411
|
-
"translation": {
|
|
412
|
-
"zh": "发现我们为简化工作流程和提高生产力而设计的创新平台。",
|
|
413
|
-
"en": "Discover our innovative platform designed to streamline your workflow and boost productivity.",
|
|
414
|
-
"fr": "Découvrez notre plateforme innovante conçue pour simplifier votre flux de travail et booster votre productivité.",
|
|
415
|
-
"es": "Descubra nuestra plataforma innovadora diseñada para simplificar su flujo de trabajo y aumentar su productividad."
|
|
416
|
-
}
|
|
417
|
-
},
|
|
418
|
-
"keywords": {
|
|
419
|
-
"nodeType": "translation",
|
|
420
|
-
"translation": {
|
|
421
|
-
"zh": ["创新", "生产力", "工作流程", "SaaS"],
|
|
422
|
-
"en": ["innovation", "productivity", "workflow", "SaaS"],
|
|
423
|
-
"fr": ["innovation", "productivité", "flux de travail", "SaaS"],
|
|
424
|
-
"es": ["innovación", "productividad", "flujo de trabajo", "SaaS"]
|
|
425
|
-
}
|
|
426
|
-
}
|
|
427
|
-
}
|
|
428
|
-
}
|
|
429
|
-
```
|
|
430
|
-
|
|
431
|
-
```tsx fileName="src/app/page.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
432
|
-
import { t, type Dictionary } from "intlayer";
|
|
433
|
-
|
|
434
|
-
const pageContent = {
|
|
435
|
-
key: "page",
|
|
436
|
-
content: {
|
|
437
|
-
getStarted: {
|
|
438
|
-
main: t({
|
|
439
|
-
zh: "通过编辑开始",
|
|
440
|
-
en: "Get started by editing",
|
|
441
|
-
fr: "Commencez par éditer",
|
|
442
|
-
es: "Comience por editar",
|
|
443
|
-
}),
|
|
444
|
-
pageLink: "src/app/page.tsx",
|
|
445
|
-
},
|
|
446
|
-
},
|
|
447
|
-
} satisfies Dictionary;
|
|
448
|
-
|
|
449
|
-
export default pageContent;
|
|
450
|
-
```
|
|
451
|
-
|
|
452
|
-
```json fileName="src/app/page.content.json" contentDeclarationFormat="json"
|
|
453
|
-
{
|
|
454
|
-
"$schema": "https://intlayer.org/schema.json",
|
|
455
|
-
"key": "page",
|
|
456
|
-
"content": {
|
|
457
|
-
"getStarted": {
|
|
458
|
-
"nodeType": "translation",
|
|
459
|
-
"translation": {
|
|
460
|
-
"zh": "通过编辑开始",
|
|
461
|
-
"en": "Get started by editing",
|
|
462
|
-
"fr": "Commencez par éditer",
|
|
463
|
-
"es": "Comience por editar"
|
|
464
|
-
}
|
|
465
|
-
},
|
|
466
|
-
"pageLink": "src/app/page.tsx"
|
|
467
|
-
}
|
|
468
|
-
}
|
|
469
|
-
```
|
|
470
|
-
|
|
471
|
-
> 你的内容声明可以在应用程序的任何地方定义,只要它们包含在 `contentDir` 目录中(默认为 `./src`)且匹配内容声明文件扩展名(默认为 `.content.{json,ts,tsx,js,jsx,mjs,cjs,md,mdx,yaml,yml}`)。
|
|
472
|
-
|
|
473
|
-
> 更多详情,请参考[内容声明文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/content_file.md)。
|
|
474
|
-
|
|
475
|
-
</Step>
|
|
476
|
-
|
|
477
|
-
<Step number={6} title="在代码中使用内容">
|
|
478
|
-
|
|
479
|
-
在整个应用程序中访问你的内容字典:
|
|
480
|
-
|
|
481
|
-
<Tabs>
|
|
482
|
-
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
483
|
-
|
|
484
|
-
```tsx fileName="src/app/page.tsx" codeFormat={["typescript", "esm"]}
|
|
485
|
-
import type { FC } from "react";
|
|
486
|
-
import { ClientComponentExample } from "@components/clientComponentExample/ClientComponentExample";
|
|
487
|
-
import { ServerComponentExample } from "@components/serverComponentExample/ServerComponentExample";
|
|
488
|
-
import { useIntlayer } from "next-intlayer";
|
|
489
|
-
import { NextPage } from "next";
|
|
490
|
-
|
|
491
|
-
const PageContent: FC = () => {
|
|
492
|
-
const content = useIntlayer("page");
|
|
493
|
-
|
|
494
|
-
return (
|
|
495
|
-
<>
|
|
496
|
-
<p>{content.getStarted.main}</p>
|
|
497
|
-
<code>{content.getStarted.pageLink}</code>
|
|
498
|
-
</>
|
|
499
|
-
);
|
|
500
|
-
};
|
|
501
|
-
|
|
502
|
-
const Page: NextPage = () => (
|
|
503
|
-
<>
|
|
504
|
-
<PageContent />
|
|
505
|
-
<ServerComponentExample />
|
|
506
|
-
<ClientComponentExample />
|
|
507
|
-
</>
|
|
508
|
-
);
|
|
509
|
-
|
|
510
|
-
export default Page;
|
|
511
|
-
```
|
|
512
|
-
|
|
513
|
-
- **`IntlayerProvider`** 挂载一次,在根布局中。它为服务器和客户端组件提供语言区域,所以页面不再自动包装。
|
|
514
|
-
- 没有 `[locale]` 路径段的情况下,语言区域总是来自请求 — 由 Intlayer 代理设置的 `x-intlayer-locale` 请求头,然后是语言区域 cookie — 当提供者未运行时,服务器 hooks 会自行读取这些。
|
|
515
|
-
|
|
516
|
-
在整个应用程序中访问你的内容字典:
|
|
517
|
-
|
|
518
|
-
```tsx fileName="src/app/page.tsx" codeFormat={["typescript", "esm"]}
|
|
519
|
-
import type { FC } from "react";
|
|
520
|
-
import { ClientComponentExample } from "@components/clientComponentExample/ClientComponentExample";
|
|
521
|
-
import { ServerComponentExample } from "@components/serverComponentExample/ServerComponentExample";
|
|
522
|
-
import {
|
|
523
|
-
IntlayerServerProvider,
|
|
524
|
-
useIntlayer,
|
|
525
|
-
getLocale,
|
|
526
|
-
} from "next-intlayer/server";
|
|
527
|
-
import { NextPage } from "next";
|
|
528
|
-
import { headers, cookies } from "next/headers";
|
|
529
|
-
|
|
530
|
-
const PageContent: FC = () => {
|
|
531
|
-
const content = useIntlayer("page");
|
|
532
|
-
|
|
533
|
-
return (
|
|
534
|
-
<>
|
|
535
|
-
<p>{content.getStarted.main}</p>
|
|
536
|
-
<code>{content.getStarted.pageLink}</code>
|
|
537
|
-
</>
|
|
538
|
-
);
|
|
539
|
-
};
|
|
540
|
-
|
|
541
|
-
const Page: NextPage = async () => {
|
|
542
|
-
const locale = await getLocale();
|
|
543
|
-
|
|
544
|
-
return (
|
|
545
|
-
<IntlayerServerProvider locale={locale}>
|
|
546
|
-
<PageContent />
|
|
547
|
-
<ServerComponentExample />
|
|
548
|
-
<ClientComponentExample />
|
|
549
|
-
</IntlayerServerProvider>
|
|
550
|
-
);
|
|
551
|
-
};
|
|
552
|
-
|
|
553
|
-
export default Page;
|
|
554
|
-
```
|
|
555
|
-
|
|
556
|
-
- **`IntlayerClientProvider`** 用于向客户端组件提供语言设置。它可以放在任何父组件中,包括布局。但是,建议将其放在布局中,因为 Next.js 在页面中共享布局代码,这样更有效。通过在布局中使用 `IntlayerClientProvider`,你可以避免为每个页面重新初始化它,改进性能并在整个应用程序中维持一致的本地化上下文。
|
|
557
|
-
- **`IntlayerServerProvider`** 用于向服务器子组件提供语言设置。它不能在布局中设置。
|
|
558
|
-
|
|
559
|
-
> 布局和页面不能共享一个通用的服务器上下文,因为服务器上下文系统基于每个请求的数据存储(通过 [React's cache](https://react.dev/reference/react/cache) 机制),导致每个"上下文"为应用程序的不同段重新创建。在共享布局中放置提供者会破坏这种隔离,防止服务器上下文值正确传播到你的服务器组件。
|
|
560
|
-
|
|
561
|
-
</Tab>
|
|
562
|
-
</Tabs>
|
|
563
|
-
|
|
564
|
-
```tsx {4,7} fileName="src/components/clientComponentExample/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
565
|
-
"use client";
|
|
566
|
-
|
|
567
|
-
import type { FC } from "react";
|
|
568
|
-
import { useIntlayer } from "next-intlayer";
|
|
569
|
-
|
|
570
|
-
export const ClientComponentExample: FC = () => {
|
|
571
|
-
const content = useIntlayer("client-component-example"); // 创建相关的内容声明
|
|
572
|
-
|
|
573
|
-
return (
|
|
574
|
-
<div>
|
|
575
|
-
<h2>{content.title}</h2>
|
|
576
|
-
<p>{content.content}</p>
|
|
577
|
-
</div>
|
|
578
|
-
);
|
|
579
|
-
};
|
|
580
|
-
```
|
|
581
|
-
|
|
582
|
-
<Tabs>
|
|
583
|
-
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
584
|
-
|
|
585
|
-
```tsx {2} fileName="src/components/serverComponentExample/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
586
|
-
import type { FC } from "react";
|
|
587
|
-
import { useIntlayer } from "next-intlayer";
|
|
588
|
-
|
|
589
|
-
export const ServerComponentExample: FC = () => {
|
|
590
|
-
const content = useIntlayer("server-component-example"); // 创建相关内容声明
|
|
591
|
-
|
|
592
|
-
return (
|
|
593
|
-
<div>
|
|
594
|
-
<h2>{content.title}</h2>
|
|
595
|
-
<p>{content.content}</p>
|
|
596
|
-
</div>
|
|
597
|
-
);
|
|
598
|
-
};
|
|
599
|
-
```
|
|
600
|
-
|
|
601
|
-
> `next-intlayer` 是同构导入路径:`react-server` 导出条件为服务器组件提供环境区域设置实现,而客户端组件获得基于上下文的实现。同一调用在两端都有效。
|
|
602
|
-
|
|
603
|
-
</Tab>
|
|
604
|
-
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
605
|
-
|
|
606
|
-
```tsx {2} fileName="src/components/serverComponentExample/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
607
|
-
import type { FC } from "react";
|
|
608
|
-
import { useIntlayer } from "next-intlayer/server";
|
|
609
|
-
|
|
610
|
-
export const ServerComponentExample: FC = () => {
|
|
611
|
-
const content = useIntlayer("server-component-example"); // 创建相关的内容声明
|
|
612
|
-
|
|
613
|
-
return (
|
|
614
|
-
<div>
|
|
615
|
-
<h2>{content.title}</h2>
|
|
616
|
-
<p>{content.content}</p>
|
|
617
|
-
</div>
|
|
618
|
-
);
|
|
619
|
-
};
|
|
620
|
-
```
|
|
621
|
-
|
|
622
|
-
</Tab>
|
|
623
|
-
</Tabs>
|
|
624
|
-
|
|
625
|
-
> 如果你想在 `string` 属性(如 `alt`、`title`、`href`、`aria-label` 等)中使用你的内容,你可以使用函数的值,如:
|
|
626
|
-
|
|
627
|
-
> ```html
|
|
628
|
-
> <img src="{content.image.src.value}" alt="{content.image.value}" />
|
|
629
|
-
> <img src="{content.image.src.toString()}" alt="{content.image.toString()}" />
|
|
630
|
-
> <img src="{String(content.image.src)}" alt="{String(content.image)}" />
|
|
631
|
-
> ```
|
|
632
|
-
|
|
633
|
-
> 要了解更多关于 `useIntlayer` hook 的信息,请参考[文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/next-intlayer/useIntlayer.md)。
|
|
634
|
-
|
|
635
|
-
</Step>
|
|
636
|
-
|
|
637
|
-
<Step number={7} title="配置代理以进行语言检测" isOptional={true}>
|
|
638
|
-
|
|
639
|
-
设置代理以检测用户的首选语言:
|
|
640
|
-
|
|
641
|
-
```typescript fileName="src/proxy.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
642
|
-
export { intlayerProxy as proxy } from "next-intlayer/proxy";
|
|
643
|
-
|
|
644
|
-
export const config = {
|
|
645
|
-
matcher:
|
|
646
|
-
"/((?!api|static|assets|robots|sitemap|sw|service-worker|manifest|.*\\..*|_next).*)",
|
|
647
|
-
};
|
|
648
|
-
```
|
|
649
|
-
|
|
650
|
-
> `intlayerProxy` 用于检测用户的首选语言并根据[配置](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/configuration.md)中指定的内容将其重定向到适当的 URL。此外,它能够将用户的首选语言保存在 cookie 中。
|
|
651
|
-
|
|
652
|
-
> 自 Intlayer v9 起,此中间件遵守 `routing.enableProxy` 选项(默认为 `true`)。在你的配置中设置 `routing.enableProxy: false` 以将其转为通过模式,而不移除此文件。详见 [v9 发行说明](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/releases/v9.md)。
|
|
653
|
-
|
|
654
|
-
> 如果你需要将多个代理链接在一起(例如,`intlayerProxy` 与认证或自定义代理),Intlayer 现在提供一个称为 `multipleProxies` 的辅助函数。
|
|
655
|
-
|
|
656
|
-
```ts
|
|
657
|
-
import { multipleProxies, intlayerProxy } from "next-intlayer/proxy";
|
|
658
|
-
import { customProxy } from "@utils/customProxy";
|
|
659
|
-
|
|
660
|
-
export const proxy = multipleProxies([intlayerProxy, customProxy]);
|
|
661
|
-
```
|
|
662
|
-
|
|
663
|
-
</Step>
|
|
664
|
-
|
|
665
|
-
<Step number={8} title="改变内容的语言" isOptional={true}>
|
|
666
|
-
|
|
667
|
-
要在 Next.js 中改变内容的语言,推荐的方式是使用 `Link` 组件将用户重定向到适当的本地化页面。`Link` 组件支持页面预获取,这有助于避免完整的页面重新加载。
|
|
668
|
-
|
|
669
|
-
```tsx fileName="src/components/localeSwitcher/LocaleSwitcher.tsx" codeFormat={["typescript", "esm"]}
|
|
670
|
-
"use client";
|
|
671
|
-
|
|
672
|
-
import type { FC } from "react";
|
|
673
|
-
import { Locales, getHTMLTextDir, getLocaleName } from "intlayer";
|
|
674
|
-
import { useLocale } from "next-intlayer";
|
|
675
|
-
|
|
676
|
-
export const LocaleSwitcher: FC = () => {
|
|
677
|
-
const { locale, availableLocales, setLocale } = useLocale();
|
|
678
|
-
|
|
679
|
-
return (
|
|
680
|
-
<div>
|
|
681
|
-
<button popoverTarget="localePopover">{getLocaleName(locale)}</button>
|
|
682
|
-
<div id="localePopover" popover="auto">
|
|
683
|
-
{availableLocales.map((localeItem) => (
|
|
684
|
-
<button
|
|
685
|
-
key={localeItem}
|
|
686
|
-
aria-current={locale === localeItem ? "page" : undefined}
|
|
687
|
-
onClick={() => setLocale(localeItem)}
|
|
688
|
-
>
|
|
689
|
-
<span>
|
|
690
|
-
{/* 语言代码 - 例如 FR */}
|
|
691
|
-
{localeItem}
|
|
692
|
-
</span>
|
|
693
|
-
<span>
|
|
694
|
-
{/* 该语言用其自身语言表示 - 例如 Français */}
|
|
695
|
-
{getLocaleName(localeItem, locale)}
|
|
696
|
-
</span>
|
|
697
|
-
<span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
|
|
698
|
-
{/* 该语言用当前语言表示 - 例如当前语言设置为 Locales.SPANISH 时为 Francés */}
|
|
699
|
-
{getLocaleName(localeItem)}
|
|
700
|
-
</span>
|
|
701
|
-
<span dir="ltr" lang={Locales.ENGLISH}>
|
|
702
|
-
{/* 英语中的语言 - 例如 French */}
|
|
703
|
-
{getLocaleName(localeItem, Locales.ENGLISH)}
|
|
704
|
-
</span>
|
|
705
|
-
</button>
|
|
706
|
-
))}
|
|
707
|
-
</div>
|
|
708
|
-
</div>
|
|
709
|
-
);
|
|
710
|
-
};
|
|
711
|
-
```
|
|
712
|
-
|
|
713
|
-
> 另一种方式是使用 `useLocale` hook 提供的 `setLocale` 函数。此函数不允许预获取页面。详见 [`useLocale` hook 文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/next-intlayer/useLocale.md)以了解更多详情。
|
|
714
|
-
|
|
715
|
-
> 文档参考:
|
|
716
|
-
>
|
|
717
|
-
> - [`useLocale` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/next-intlayer/useLocale.md)
|
|
718
|
-
> - [`getLocaleName` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/intlayer/getLocaleName.md)
|
|
719
|
-
> - [`getLocalizedUrl` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/intlayer/getLocalizedUrl.md)
|
|
720
|
-
> - [`getHTMLTextDir` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/packages/intlayer/getHTMLTextDir.md)
|
|
721
|
-
> - [`hrefLang` 属性](https://developers.google.com/search/docs/specialty/international/localized-versions?hl=fr)
|
|
722
|
-
> - [`lang` 属性](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang)
|
|
723
|
-
> - [`dir` 属性](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dir)
|
|
724
|
-
> - [`aria-current` 属性](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)
|
|
725
|
-
|
|
726
|
-
</Step>
|
|
727
|
-
|
|
728
|
-
<Step number={9} title="在 Server Actions 中获取当前语言" isOptional={true}>
|
|
729
|
-
|
|
730
|
-
如果你需要在 Server Action 中使用活动语言(例如,本地化电子邮件或运行与语言相关的逻辑),请从 `next-intlayer/server` 调用 `getLocale`:
|
|
731
|
-
|
|
732
|
-
```tsx fileName="src/app/actions/getLocale.ts" codeFormat="typescript"
|
|
733
|
-
"use server";
|
|
734
|
-
|
|
735
|
-
import { getLocale } from "next-intlayer/server";
|
|
736
|
-
|
|
737
|
-
export const myServerAction = async () => {
|
|
738
|
-
const locale = await getLocale();
|
|
739
|
-
|
|
740
|
-
// 使用语言做一些操作
|
|
741
|
-
};
|
|
742
|
-
```
|
|
743
|
-
|
|
744
|
-
> `getLocale` 函数遵循级联策略来确定用户的语言:
|
|
745
|
-
>
|
|
746
|
-
> 1. 首先,它检查请求标头中的语言值,该值可能已由代理设置
|
|
747
|
-
> 2. 如果在标头中找不到语言,它会查找存储在 cookies 中的语言
|
|
748
|
-
> 3. 如果找不到 cookie,它会尝试检测用户浏览器设置中的首选语言
|
|
749
|
-
> 4. 作为最后的手段,它会回退到应用程序配置的默认语言
|
|
750
|
-
>
|
|
751
|
-
> 这确保根据可用的上下文选择最合适的语言。
|
|
752
|
-
|
|
753
|
-
</Step>
|
|
754
|
-
|
|
755
|
-
<Step number={10} title="优化你的 bundle 大小" isOptional={true}>
|
|
756
|
-
|
|
757
|
-
在使用 `next-intlayer` 时,默认情况下字典被包含在每个页面的 bundle 中。要优化 bundle 大小,Intlayer 提供了一个可选的 SWC 插件,它可以智能地替换使用宏的 `useIntlayer` 调用。这确保字典仅被包含在实际使用它们的页面的 bundle 中。
|
|
758
|
-
|
|
759
|
-
要启用此优化,请安装 `@intlayer/swc` 包。安装后,`next-intlayer` 将自动检测并使用该插件:
|
|
760
|
-
|
|
761
|
-
```bash packageManager="npm"
|
|
762
|
-
npm install @intlayer/swc --save-dev
|
|
763
|
-
```
|
|
764
|
-
|
|
765
|
-
```bash packageManager="pnpm"
|
|
766
|
-
pnpm add @intlayer/swc --save-dev
|
|
767
|
-
```
|
|
768
|
-
|
|
769
|
-
```bash packageManager="yarn"
|
|
770
|
-
yarn add @intlayer/swc --save-dev
|
|
771
|
-
```
|
|
772
|
-
|
|
773
|
-
```bash packageManager="bun"
|
|
774
|
-
bun add @intlayer/swc --dev
|
|
775
|
-
```
|
|
776
|
-
|
|
777
|
-
> 注意:此优化仅适用于 Next.js 13 及以上版本。
|
|
778
|
-
|
|
779
|
-
> 注意:此包默认未安装,因为 SWC 插件在 Next.js 中仍是实验性的。它可能会在未来发生变化。
|
|
780
|
-
|
|
781
|
-
> 注意:如果你将选项设置为 `importMode: 'dynamic'` 或 `importMode: 'fetch'`(在 `dictionary` 配置中),它将依赖于 Suspense,因此你需要将你的 `useIntlayer` 调用包装在 `Suspense` 边界中。这意味着你将不能在你的 Page / Layout 组件的顶层直接使用 `useIntlayer`。
|
|
782
|
-
|
|
783
|
-
</Step>
|
|
784
|
-
|
|
785
|
-
</Steps>
|
|
786
|
-
|
|
787
|
-
### 第一步:安装依赖
|
|
788
|
-
|
|
789
|
-
当使用 Turbopack 作为通过 `next dev` 命令运行的开发服务器时,字典更改默认不会被自动检测。
|
|
790
|
-
|
|
791
|
-
这个限制是因为 Turbopack 无法并行运行 webpack 插件来监视内容文件的更改。为了解决这个问题,你需要使用 `intlayer watch` 命令同时运行开发服务器和 Intlayer 构建监视器。
|
|
792
|
-
|
|
793
|
-
```json5 fileName="package.json"
|
|
794
|
-
{
|
|
795
|
-
// ... 你现有的 package.json 配置
|
|
796
|
-
"scripts": {
|
|
797
|
-
// ... 你现有的 scripts 配置
|
|
798
|
-
"dev": "intlayer watch --with 'next dev'",
|
|
799
|
-
},
|
|
800
|
-
}
|
|
801
|
-
```
|
|
802
|
-
|
|
803
|
-
> 如果你使用的是 next-intlayer@<=6.x.x,你需要保留 `--turbopack` 标志以使 Next.js 16 应用程序能与 Turbopack 正常工作。我们建议使用 next-intlayer@>=7.x.x 来避免此限制。
|
|
804
|
-
|
|
805
|
-
### 配置 TypeScript
|
|
806
|
-
|
|
807
|
-
Intlayer 使用模块扩展(module augmentation)来利用 TypeScript 的优势并增强你的 codebase 的类型安全性。
|
|
808
|
-
|
|
809
|
-

|
|
810
|
-
|
|
811
|
-

|
|
812
|
-
|
|
813
|
-
确保你的 TypeScript 配置包含自动生成的类型。
|
|
814
|
-
|
|
815
|
-
```json5 fileName="tsconfig.json"
|
|
816
|
-
{
|
|
817
|
-
// ... 你现有的 TypeScript 配置
|
|
818
|
-
"include": [
|
|
819
|
-
// ... 你现有的 TypeScript 配置
|
|
820
|
-
".intlayer/**/*.ts", // 包含自动生成的类型
|
|
821
|
-
],
|
|
822
|
-
}
|
|
823
|
-
```
|
|
824
|
-
|
|
825
|
-
### Git 配置
|
|
826
|
-
|
|
827
|
-
建议将 Intlayer 生成的文件忽略(ignore)。这样可以避免将这些文件提交到你的 Git 仓库。
|
|
828
|
-
|
|
829
|
-
为此,你可以将以下内容添加到你的 `.gitignore` 文件中:
|
|
830
|
-
|
|
831
|
-
```plaintext fileName=".gitignore"
|
|
832
|
-
# 忽略 Intlayer 生成的文件
|
|
833
|
-
.intlayer
|
|
834
|
-
```
|
|
835
|
-
|
|
836
|
-
### VS Code Extension
|
|
837
|
-
|
|
838
|
-
为了提升在 Intlayer 的开发体验,你可以安装官方的 **Intlayer VS Code Extension**。
|
|
839
|
-
|
|
840
|
-
[从 VS Code Marketplace 安装](https://marketplace.visualstudio.com/items?itemName=intlayer.intlayer-vs-code-extension)
|
|
841
|
-
|
|
842
|
-
此扩展提供:
|
|
843
|
-
|
|
844
|
-
- **Autocompletion**:翻译键自动补全。
|
|
845
|
-
- **Real-time error detection**:实时检测缺失的翻译。
|
|
846
|
-
- **内联预览** 翻译后的内容。
|
|
847
|
-
- **快速操作** 以便轻松创建和更新翻译。
|
|
848
|
-
|
|
849
|
-
有关如何使用该扩展的更多详细信息,请参阅 [Intlayer VS Code 扩展文档](https://intlayer.org/doc/vs-code-extension)。
|
|
850
|
-
|
|
851
|
-
### 更进一步
|
|
852
|
-
|
|
853
|
-
要深入了解,您可以实现 [可视化编辑器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_visual_editor.md) 或使用 [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md) 将内容外部化。
|
|
854
|
-
|
|
855
|
-
## 常见问题
|
|
856
|
-
|
|
857
|
-
<FAQ>
|
|
858
|
-
|
|
859
|
-
<Question title="国际化 Next.js 应用有哪些不同的解决方案?">
|
|
860
|
-
|
|
861
|
-
`next.config.js` 中的 `i18n` 字段不适用于 App Router,因此国际化层始终需要选择第三方库:
|
|
862
|
-
|
|
863
|
-
- **`next-intl`**、**`next-i18next` / `i18next`** 和 **`react-intl`**:按命名空间加载 JSON 或 ICU 目录。
|
|
864
|
-
- **`Lingui`**:基于提取驱动,在构建时编译 ICU 消息。
|
|
865
|
-
- **`Intlayer`**:最先进的解决方案。内容可以在代码库中的任何位置声明([靠近每个组件或集中管理](https://intlayer.org/zh/blog/per-component-vs-centralized-i18n)),并按组件进行编译,完全类型安全,并内置 AI 翻译、可视化编辑器和 CMS。
|
|
866
|
-
|
|
867
|
-
本指南涵盖在路径中不包含语言环境的配置。请参阅 [为什么选择 Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/interest_of_intlayer.md) 和 [Next.js i18n 性能基准](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/benchmark/nextjs.md)。
|
|
868
|
-
|
|
869
|
-
</Question>
|
|
870
|
-
|
|
871
|
-
<Question title="i18n 会给我的 Next.js bundle 体积增加多少?">
|
|
872
|
-
|
|
873
|
-
远少于基于命名空间的方案,因为页面永远不会下载它不渲染的语言目录。Server Components 在服务端直接解析其内容,构建时编译器将 `useIntlayer` 调用替换为组件使用的确切字典条目,因此未使用的键和未使用的语言都会被自动丢弃,并且 [动态字典](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dynamic_dictionaries/index.md) 会按语言环境拆分剩余内容。与常规替代方案相比,Intlayer 可将 bundle 和页面体积减少高达 50%。请参阅 [Bundle 体积优化](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/bundle_optimization.md) 和 [性能基准](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/benchmark/nextjs.md)。
|
|
874
|
-
|
|
875
|
-
</Question>
|
|
876
|
-
|
|
877
|
-
<Question title="我可以从 next-intl、next-i18next 或 i18next 迁移而无需重写组件吗?">
|
|
878
|
-
|
|
879
|
-
可以,有两条迁移路径。您可以使用 [next-intl 迁移指南](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/migration_from_next-intl_to_intlayer.md) 或 [i18next 迁移指南](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/migration_from_i18next_to_intlayer.md) 逐步迁移内容。或者,您可以完全保留当前的 API:[兼容性适配器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/compat/index.md) 公开与 `next-intl`、`react-i18next` 和 `react-intl` 完全相同的 API,但底层由 Intlayer 字典驱动,因此只需更改导入语句,组件代码完全无需修改。
|
|
880
|
-
|
|
881
|
-
</Question>
|
|
882
|
-
|
|
883
|
-
<Question title="我可以保留现有的 JSON 翻译文件吗?">
|
|
884
|
-
|
|
885
|
-
可以。[JSON 同步插件](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/plugins/sync-json.md) 将您的 `/messages/{locale}/{namespace}.json` 文件作为单一真实来源(source of truth),并双向生成 Intlayer 字典。[PO 同步插件](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/plugins/sync-po.md) 对 gettext 目录执行相同的操作,而 [按语言环境组织的文件](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/per_locale_file.md) 允许您按语言拆分内容,而不是将所有语言打包到一个文件中。
|
|
886
|
-
|
|
887
|
-
</Question>
|
|
888
|
-
|
|
889
|
-
<Question title="我必须逐个键迁移我的内容吗?">
|
|
890
|
-
|
|
891
|
-
不需要。运行 `npx intlayer extract`,Intlayer 会读取您的组件,提取面向用户的字符串,并在每个组件旁边生成 `.content` 文件,这样您只需审查 diff,而无需手动逐一复制字符串到语言目录中。
|
|
892
|
-
|
|
893
|
-
如需全自动流程,[Intlayer Compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/compiler.md) 可在构建时执行相同操作:它在每次更改时扫描您的 JSX、TSX、Vue 和 Svelte 源代码,生成字典并通过热模块替换 (HMR) 保持同步,因此完全无需手动维护键名。
|
|
894
|
-
|
|
895
|
-
开启编译器前有两个限制值得了解:它通过静态分析工作,因此仅在运行时存在的字符串(如 API 错误代码或 CMS 字段)无法被捕获;此外它需要区分用户文本和应用程序逻辑(如 `className="active"` 或状态代码),在大型代码库中需要少量注解。而 [extract 命令](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/extract.md) 则通过让您参与审查避免了这两个问题。
|
|
896
|
-
|
|
897
|
-
</Question>
|
|
898
|
-
|
|
899
|
-
<Question title="有哪些可用的编辑器和 AI 代理工具?">
|
|
900
|
-
|
|
901
|
-
共有 5 个工具,均为可选:
|
|
902
|
-
|
|
903
|
-
- **[VS Code 扩展](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/vs_code_extension.md)**:从 `useIntlayer` 键跳转到声明它的内容文件,从组件中提取内容,并从命令面板或专属的 Intlayer 选项卡运行 build、fill、test、push 和 pull。
|
|
904
|
-
- **[LSP 服务器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/lsp.md)**:在任何支持 LSP 的编辑器中提供相同的感知能力,支持跳转到定义、查找所有引用、悬停预览翻译值、键和字段的自动补全,以及在键未声明时发出警告。它还可以解析 `i18next`、`react-i18next`、`next-intl` 和 `use-intl` 调用,助力平滑迁移。
|
|
905
|
-
- **[MCP 服务器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/mcp_server.md)**:向 Cursor、VS Code、Claude Desktop、Claude Code 和 ChatGPT 公开 Intlayer 文档与 CLI,使 AI 助手能够基于最新文档进行准确回答,并能自行运行 `intlayer fill` 等命令。
|
|
906
|
-
- **[Agent Skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/agent_skills.md)**:针对特定领域的技能(如 `intlayer-config`、`intlayer-cli` 和 `intlayer-content`,以及每个框架对应的专属技能),教导 AI 代理您的路由配置和内容节点类型。
|
|
907
|
-
- **[ESLint 插件](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/eslint.md)**:`no-raw-text` 规则标记硬编码字符串,并提供针对静态字典键和未使用内容的额外规则。
|
|
908
|
-
|
|
909
|
-
</Question>
|
|
910
|
-
|
|
911
|
-
<Question title="为什么在 URL 中不包含语言环境?">
|
|
912
|
-
|
|
913
|
-
因为语言环境并不总是页面标识的一部分。对于需要登录的控制面板 (Dashboard)、内部工具或个人后台,完全没有理由在每个 URL 中暴露 `/fr/`:语言是一种用户偏好,而不是一个不同的文档。去除前缀还可以让您的路由、链接和分析统计统一在一组路径上。
|
|
914
|
-
|
|
915
|
-
</Question>
|
|
916
|
-
|
|
917
|
-
<Question title="URL 中不包含语言环境对 SEO 有什么影响?">
|
|
918
|
-
|
|
919
|
-
影响是确实存在的,因此需要谨慎权衡。如果每种语言没有单独的 URL,搜索引擎就无法为每个语言版本建立单独的索引,`hreflang` 也无处可指,爬虫只能看到默认检测所提供的语言。这对于登录后的内部内容完全没有问题(反正不会被索引),但对于公开的营销站点或文档则不太合适。如果每种语言的自然搜索流量对您很重要,建议改用 [Next.js 16 指南](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_with_nextjs_16.md) 中的带前缀方案。
|
|
920
|
-
|
|
921
|
-
</Question>
|
|
922
|
-
|
|
923
|
-
<Question title="no-prefix 模式与 search-params 模式有什么区别?">
|
|
924
|
-
|
|
925
|
-
`"no-prefix"` 将语言环境完全从 URL 中剔除,通过 Cookie、Header 或域名来解析,因此所有语言共享同一个地址。`"search-params"` 则将其作为查询参数(例如 `/dashboard?locale=fr`),这既为每种语言提供了独立、可分享和可添加书签的 URL,又无需修改路由树。如果您需要针对不同语言生成可分享的链接,推荐使用 `"search-params"`。
|
|
926
|
-
|
|
927
|
-
</Question>
|
|
928
|
-
|
|
929
|
-
<Question title="这种情况下如何检测语言环境?">
|
|
930
|
-
|
|
931
|
-
通过 `routing.storage` 中列出的来源进行检测,默认情况下先检测 Cookie,再检测 `Accept-Language` 请求头,最后回退到默认语言环境。第 7 步添加了应用该逻辑的代理。用户显式选择的语言会被持久化,以便下次访问时生效。请参阅 [配置参考](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/configuration.md)。
|
|
932
|
-
|
|
933
|
-
</Question>
|
|
934
|
-
|
|
935
|
-
<Question title="我可以将每种语言分别映射到其独立的域名吗?">
|
|
936
|
-
|
|
937
|
-
可以,如果您出于视觉简洁考虑去除了路径前缀,但依然希望保留良好的 SEO,这正是理想的方案。`routing.domains` 将语言环境映射到主机名,由域名来标识语言,路径中不需要添加任何前缀,每种语言都能拥有可被索引且能供 `hreflang` 指向的独立 URL。
|
|
938
|
-
|
|
939
|
-
</Question>
|
|
940
|
-
|
|
941
|
-
<Question title="如何使用 AI 自动翻译应用?">
|
|
942
|
-
|
|
943
|
-
运行 `npx intlayer fill`。它会使用您选择的 LLM、您自己的提供商和 API 密钥填充缺失的翻译,并且 `--git-diff` 参数可将处理范围限制在当前分支修改的内容。请参阅 [fill 命令](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/fill.md) 和 [CI/CD 集成](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/CI_CD.md)。
|
|
944
|
-
|
|
945
|
-
</Question>
|
|
946
|
-
|
|
947
|
-
<Question title="Intlayer 是否支持复数、性别和富文本?">
|
|
948
|
-
|
|
949
|
-
支持:包括 [复数形式](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/plurial.md)、[基于性别的内容](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/gender.md)、条件渲染、插值用的 [插入内容 (insertions)](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/insertion.md)、用于长文本的 [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/markdown.md),以及用于数字、日期和货币的 [格式化工具](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/formatters.md)。
|
|
950
|
-
|
|
951
|
-
</Question>
|
|
952
|
-
|
|
953
|
-
<Question title="翻译人员如何无需接触代码即可编辑内容?">
|
|
954
|
-
|
|
955
|
-
可以通过自托管的 [可视化编辑器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_visual_editor.md)(任何人都可以直接在运行中的应用上就地修改文案),或通过 [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md) 进行无需重新部署的内容外部化更新。
|
|
956
|
-
|
|
957
|
-
</Question>
|
|
958
|
-
|
|
959
|
-
<Question title="Intlayer 是免费且开源的吗?">
|
|
960
|
-
|
|
961
|
-
是的,基于 Apache 2.0 许可证开源,包含商业用途。托管版 CMS 是可选的付费服务,同时完全支持 [自托管](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/self_hosting.md)。
|
|
962
|
-
|
|
963
|
-
</Question>
|
|
964
|
-
|
|
965
|
-
</FAQ>
|