@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,985 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
createdAt: 2026-01-10
|
|
3
|
-
updatedAt: 2026-08-30
|
|
4
|
-
title: "Next.js 16 i18n - Guia completo para traduzir seu aplicativo"
|
|
5
|
-
description: "Sem mais i18next. O guia 2026 para criar uma aplicação Next.js 16 multilíngue (i18n). Traduza com agentes de IA e otimize o tamanho do bundle, SEO e desempenho."
|
|
6
|
-
keywords:
|
|
7
|
-
- Internacionalização
|
|
8
|
-
- Documentação
|
|
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: "Atualizar o uso da API useIntlayer do Solid para acesso direto a propriedades"
|
|
24
|
-
- version: 8.0.0
|
|
25
|
-
date: 2026-01-10
|
|
26
|
-
changes: "Lançamento inicial"
|
|
27
|
-
author: aymericzip
|
|
28
|
-
---
|
|
29
|
-
|
|
30
|
-
# Traduza seu site Next.js 16 (sem [locale] no caminho da página) usando Intlayer | Internacionalização (i18n)
|
|
31
|
-
|
|
32
|
-
<Tabs defaultTab="video">
|
|
33
|
-
<Tab label="Vídeo" value="video">
|
|
34
|
-
|
|
35
|
-
<iframe title="A melhor solução de i18n para Next.js? Descubra o Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/e_PPG7PTqGU?autoplay=0&origin=https://intlayer.org&controls=0&rel=1"/>
|
|
36
|
-
|
|
37
|
-
</Tab>
|
|
38
|
-
<Tab label="Código" value="code">
|
|
39
|
-
|
|
40
|
-
<iframe
|
|
41
|
-
src="https://ide.intlayer.org/aymericzip/intlayer-next-16-no-locale-path-template?file=intlayer.config.ts"
|
|
42
|
-
className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
|
|
43
|
-
title="Demo CodeSandbox - Como internacionalizar sua aplicação usando o 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
|
-
Veja o [Modelo de Aplicação](https://github.com/aymericzip/intlayer-next-no-lolale-path-template) no GitHub.
|
|
52
|
-
|
|
53
|
-
## Índice
|
|
54
|
-
|
|
55
|
-
<TOC/>
|
|
56
|
-
|
|
57
|
-
## Por que Intlayer em vez de alternativas?
|
|
58
|
-
|
|
59
|
-
Comparado com soluções principais como `next-intl` ou `i18next`, Intlayer é uma solução que vem com otimizações integradas como:
|
|
60
|
-
|
|
61
|
-
<AccordionGroup>
|
|
62
|
-
<Accordion header="Cobertura completa do Next.js">
|
|
63
|
-
|
|
64
|
-
O Intlayer é otimizado para funcionar com **Componentes de servidor** para renderização eficiente e é totalmente compatível com [**Turbopack**](https://nextjs.org/docs/architecture/turbopack). Ele não bloqueia a renderização estática e oferece middleware, bem como todos os recursos necessários para dimensionar a internacionalização (i18n).
|
|
65
|
-
|
|
66
|
-
> Intlayer é compatível com Next.js 12, 13, 14, 15 e 16. Se você estiver usando o roteador de páginas Next.js, pode consultar este [guia] (https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_with_nextjs_page_router.md).
|
|
67
|
-
> O roteamento por locale é útil para SEO, tamanho do bundle e desempenho. Se não precisar dele, você pode consultar este [guia](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_with_nextjs_no_locale_path.md).
|
|
68
|
-
> Para Next.js 12, 13, 14 e 15 com o App Router, consulte este [guia](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_with_nextjs_14.md).
|
|
69
|
-
|
|
70
|
-
</Accordion>
|
|
71
|
-
|
|
72
|
-
<Accordion header="Tamanho do bundle">
|
|
73
|
-
|
|
74
|
-
Em vez de carregar arquivos JSON enormes em suas páginas, carregue apenas o conteúdo necessário. O Intlayer ajuda a **reduzir o tamanho do bundle e das páginas em até 50%**.
|
|
75
|
-
|
|
76
|
-
</Accordion>
|
|
77
|
-
|
|
78
|
-
<Accordion header="Manutenção">
|
|
79
|
-
|
|
80
|
-
Definir o escopo do conteúdo do seu aplicativo **facilita a manutenção** de aplicativos de grande escala. Você pode duplicar ou excluir uma única pasta de recursos sem o fardo mental de revisar toda a base de código de seu conteúdo. Além disso, o Intlayer é **totalmente tipado (fully typed)** para garantir a precisão do seu conteúdo.
|
|
81
|
-
|
|
82
|
-
</Accordion>
|
|
83
|
-
|
|
84
|
-
<Accordion header="Agente de IA">
|
|
85
|
-
|
|
86
|
-
A co-localização de conteúdo **reduz o contexto necessário** pelos Large Language Models (LLMs). O Intlayer também vem com um conjunto de ferramentas, como uma **CLI** para testar traduções ausentes,**[LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/lsp.md)**, **[MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/mcp_server.md)**, e **[agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/agent_skills.md)**, para tornar a experiência do desenvolvedor (DX) ainda mais tranquila para os agentes de IA.
|
|
87
|
-
|
|
88
|
-
</Accordion>
|
|
89
|
-
|
|
90
|
-
<Accordion header="Automação">
|
|
91
|
-
|
|
92
|
-
Use a automação para traduzir seu pipeline de CI/CD usando o LLM de sua escolha às custas de seu provedor de IA. O Intlayer também oferece um **compilador** para automatizar a extração de conteúdo, bem como uma [plataforma web](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_CMS.md) para ajudar a **traduzir em segundo plano**.
|
|
93
|
-
|
|
94
|
-
</Accordion>
|
|
95
|
-
|
|
96
|
-
<Accordion header="Desempenho">
|
|
97
|
-
|
|
98
|
-
Conectar arquivos JSON enormes a componentes pode levar a problemas de desempenho e reatividade. O Intlayer otimiza o carregamento do seu conteúdo no momento da construção.
|
|
99
|
-
|
|
100
|
-
</Accordion>
|
|
101
|
-
|
|
102
|
-
<Accordion header="Escalonamento sem nenhum desenvolvedor">
|
|
103
|
-
|
|
104
|
-
Mais do que apenas uma solução i18n, o Intlayer fornece um **[editor visual] auto-hospedado(https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_visual_editor.md)** e um **[CMS completo](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_CMS.md)** para ajudá-lo a gerenciar seu conteúdo multilíngue em **tempo real**, facilitando a colaboração com tradutores, redatores e outros membros da equipe. O conteúdo pode ser armazenado local e/ou remotamente.
|
|
105
|
-
|
|
106
|
-
</Accordion>
|
|
107
|
-
</AccordionGroup>
|
|
108
|
-
|
|
109
|
-
---
|
|
110
|
-
|
|
111
|
-
## Guia passo a passo para configurar o Intlayer numa aplicação Next.js
|
|
112
|
-
|
|
113
|
-
<Steps>
|
|
114
|
-
|
|
115
|
-
<Step number={1} title="Instalar dependências">
|
|
116
|
-
|
|
117
|
-
Instale os pacotes necessários usando npm:
|
|
118
|
-
|
|
119
|
-
```bash packageManager="npm"
|
|
120
|
-
npx intlayer init --interactive
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
```bash packageManager="pnpm"
|
|
124
|
-
pnpm dlx intlayer init --interactive
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
```bash packageManager="yarn"
|
|
128
|
-
yarn dlx intlayer init --interactive
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
```bash packageManager="bun"
|
|
132
|
-
bunx intlayer init --interactive
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
> a flag `--interactive` é opcional. Use `intlayer-cli init` se você for um agente de IA.
|
|
136
|
-
|
|
137
|
-
> Este comando detectará seu ambiente e instalará os pacotes necessários. Por exemplo:
|
|
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
|
-
O pacote principal que fornece ferramentas de internacionalização para gerenciamento de configuração, tradução, [declaração de conteúdo](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dictionary/content_file.md), transpilação e [comandos CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/cli/index.md).
|
|
158
|
-
|
|
159
|
-
- **next-intlayer**
|
|
160
|
-
|
|
161
|
-
O pacote que integra o Intlayer com o Next.js. Fornece providers de contexto e hooks para internacionalização no Next.js. Além disso, inclui o plugin do Next.js para integrar o Intlayer com o [Webpack](https://webpack.js.org/) ou o [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack), bem como um proxy para detectar a locale preferida do utilizador, gerir cookies e tratar redirecionamentos de URL.
|
|
162
|
-
|
|
163
|
-
</Step>
|
|
164
|
-
|
|
165
|
-
<Step number={2} title="Configure o seu projeto">
|
|
166
|
-
|
|
167
|
-
Aqui está a estrutura final que iremos criar:
|
|
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
|
-
> Se não quiser roteamento por locale, o intlayer pode ser usado apenas como um provider / hook. Veja [este guia](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_with_nextjs_no_locale_path.md) para mais detalhes.
|
|
194
|
-
|
|
195
|
-
Crie um arquivo de configuração para definir os idiomas da sua aplicação:
|
|
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
|
-
// Outros locales
|
|
207
|
-
],
|
|
208
|
-
defaultLocale: Locales.ENGLISH,
|
|
209
|
-
},
|
|
210
|
-
routing: {
|
|
211
|
-
mode: "search-params", // ou `no-prefix` - Útil para detecção no middleware
|
|
212
|
-
},
|
|
213
|
-
};
|
|
214
|
-
|
|
215
|
-
export default config;
|
|
216
|
-
```
|
|
217
|
-
|
|
218
|
-
> Através deste arquivo de configuração, você pode configurar URLs localizadas, redirecionamento por proxy, nomes de cookies, a localização e extensão das suas declarações de conteúdo, desativar os logs do Intlayer no console e muito mais. Para uma lista completa dos parâmetros disponíveis, consulte a [documentação de configuração](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/configuration.md).
|
|
219
|
-
|
|
220
|
-
</Step>
|
|
221
|
-
|
|
222
|
-
<Step number={3} title="Integrar o Intlayer na sua configuração do Next.js">
|
|
223
|
-
|
|
224
|
-
Configure seu setup do Next.js para usar o 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 = {/* opções de configuração aqui */};
|
|
231
|
-
|
|
232
|
-
export default withIntlayer(nextConfig);
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
> O plugin Next.js `withIntlayer()` é usado para integrar o Intlayer com o Next.js. Ele garante a geração dos ficheiros de declaração de conteúdo e os monitora em modo de desenvolvimento. Define as variáveis de ambiente do Intlayer nos ambientes do [Webpack](https://webpack.js.org/) ou [Turbopack](https://nextjs.org/docs/app/api-reference/turbopack). Além disso, fornece aliases para otimizar o desempenho e assegura compatibilidade com server components.
|
|
236
|
-
|
|
237
|
-
> A função `withIntlayer()` é uma função promise. Ela permite preparar os dicionários do intlayer antes do início da build. Se você quiser usá-la com outros plugins, pode aguardá-la. Exemplo:
|
|
238
|
-
>
|
|
239
|
-
> ```ts
|
|
240
|
-
> const nextConfig = await withIntlayer(nextConfig);
|
|
241
|
-
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
242
|
-
>
|
|
243
|
-
> export default nextConfigWithOtherPlugins;
|
|
244
|
-
> ```
|
|
245
|
-
>
|
|
246
|
-
> Se você quiser usá-la de forma síncrona, pode usar a função `withIntlayerSync()`. Exemplo:
|
|
247
|
-
>
|
|
248
|
-
> ```ts
|
|
249
|
-
> const nextConfig = withIntlayerSync(nextConfig);
|
|
250
|
-
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
251
|
-
>
|
|
252
|
-
> export default nextConfigWithOtherPlugins;
|
|
253
|
-
> ```
|
|
254
|
-
|
|
255
|
-
> A função `withIntlayer()` é uma função que retorna uma promise. Permite preparar os dicionários do intlayer antes do início do build. Se quiser utilizá-la com outros plugins, pode fazer await. Exemplo:
|
|
256
|
-
>
|
|
257
|
-
> ```ts
|
|
258
|
-
> const nextConfig = await withIntlayer(nextConfig);
|
|
259
|
-
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
260
|
-
>
|
|
261
|
-
> export default nextConfigWithOtherPlugins;
|
|
262
|
-
> ```
|
|
263
|
-
>
|
|
264
|
-
> Se você quiser usá-lo de forma síncrona, pode usar a função `withIntlayerSync()`. Exemplo:
|
|
265
|
-
>
|
|
266
|
-
> ```ts
|
|
267
|
-
> const nextConfig = withIntlayerSync(nextConfig);
|
|
268
|
-
> const nextConfigWithOtherPlugins = withOtherPlugins(nextConfig);
|
|
269
|
-
>
|
|
270
|
-
> export default nextConfigWithOtherPlugins;
|
|
271
|
-
> ```
|
|
272
|
-
>
|
|
273
|
-
> O Intlayer detecta automaticamente se o seu projeto está usando **webpack** ou **Turbopack** com base nas flags de linha de comando `--webpack`, `--turbo`, ou `--turbopack`, assim como na sua **versão do Next.js** atual.
|
|
274
|
-
>
|
|
275
|
-
> Desde `next>=16`, se você estiver usando **Rspack**, deve forçar explicitamente o Intlayer a usar a configuração do webpack desabilitando o Turbopack:
|
|
276
|
-
>
|
|
277
|
-
> ```ts
|
|
278
|
-
> withRspack(withIntlayer(nextConfig, { enableTurbopack: false }));
|
|
279
|
-
> ```
|
|
280
|
-
|
|
281
|
-
</Step>
|
|
282
|
-
|
|
283
|
-
<Step number={4} title="Definir rotas de localidade dinâmicas">
|
|
284
|
-
|
|
285
|
-
Remova tudo de `RootLayout` e substitua pelo código a seguir:
|
|
286
|
-
|
|
287
|
-
<Tabs>
|
|
288
|
-
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
289
|
-
|
|
290
|
-
```tsx {5} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
291
|
-
import type { Metadata } from "next";
|
|
292
|
-
import type { ReactNode } from "react";
|
|
293
|
-
import "./globals.css";
|
|
294
|
-
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
295
|
-
import { getLocale, IntlayerProvider } from "next-intlayer/server";
|
|
296
|
-
export { generateStaticParams } from "next-intlayer";
|
|
297
|
-
|
|
298
|
-
export const generateMetadata = async (): Promise<Metadata> => {
|
|
299
|
-
const locale = await getLocale();
|
|
300
|
-
const { title, description, keywords } = getIntlayer("metadata", locale);
|
|
301
|
-
|
|
302
|
-
return {
|
|
303
|
-
title,
|
|
304
|
-
description,
|
|
305
|
-
keywords,
|
|
306
|
-
};
|
|
307
|
-
};
|
|
308
|
-
|
|
309
|
-
const RootLayout = async ({
|
|
310
|
-
children,
|
|
311
|
-
}: Readonly<{
|
|
312
|
-
children: ReactNode;
|
|
313
|
-
}>) => {
|
|
314
|
-
const locale = await getLocale();
|
|
315
|
-
|
|
316
|
-
return (
|
|
317
|
-
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
318
|
-
<body>
|
|
319
|
-
<IntlayerProvider locale={locale}>{children}</IntlayerProvider>
|
|
320
|
-
</body>
|
|
321
|
-
</html>
|
|
322
|
-
);
|
|
323
|
-
};
|
|
324
|
-
|
|
325
|
-
export default RootLayout;
|
|
326
|
-
```
|
|
327
|
-
|
|
328
|
-
> Um único `IntlayerProvider` cobre ambas as metades da árvore: ele alimenta o contexto do servidor com escopo de requisição lido pelos hooks do servidor e monta o provedor do cliente para que os componentes do cliente recebam a mesma localidade.
|
|
329
|
-
|
|
330
|
-
</Tab>
|
|
331
|
-
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
332
|
-
|
|
333
|
-
```tsx {3} fileName="src/app/layout.tsx" codeFormat={["typescript", "esm"]}
|
|
334
|
-
import type { Metadata } from "next";
|
|
335
|
-
import type { ReactNode } from "react";
|
|
336
|
-
import "./globals.css";
|
|
337
|
-
import { IntlayerProvider, LocalPromiseParams } from "next-intlayer";
|
|
338
|
-
import { getHTMLTextDir, getIntlayer } from "intlayer";
|
|
339
|
-
import { getLocale } from "next-intlayer/server";
|
|
340
|
-
export { generateStaticParams } from "next-intlayer";
|
|
341
|
-
|
|
342
|
-
export const generateMetadata = async (): Promise<Metadata> => {
|
|
343
|
-
const locale = await getLocale();
|
|
344
|
-
const { title, description, keywords } = getIntlayer("metadata", locale);
|
|
345
|
-
|
|
346
|
-
return {
|
|
347
|
-
title,
|
|
348
|
-
description,
|
|
349
|
-
keywords,
|
|
350
|
-
};
|
|
351
|
-
};
|
|
352
|
-
|
|
353
|
-
const RootLayout = async ({
|
|
354
|
-
children,
|
|
355
|
-
}: Readonly<{
|
|
356
|
-
children: ReactNode;
|
|
357
|
-
}>) => {
|
|
358
|
-
const locale = await getLocale();
|
|
359
|
-
|
|
360
|
-
return (
|
|
361
|
-
<html lang={locale} dir={getHTMLTextDir(locale)}>
|
|
362
|
-
<body>
|
|
363
|
-
<IntlayerProvider defaultLocale={locale}>{children}</IntlayerProvider>
|
|
364
|
-
</body>
|
|
365
|
-
</html>
|
|
366
|
-
);
|
|
367
|
-
};
|
|
368
|
-
|
|
369
|
-
export default RootLayout;
|
|
370
|
-
```
|
|
371
|
-
|
|
372
|
-
</Tab>
|
|
373
|
-
</Tabs>
|
|
374
|
-
|
|
375
|
-
</Step>
|
|
376
|
-
|
|
377
|
-
<Step number={5} title="Declarar o seu conteúdo">
|
|
378
|
-
|
|
379
|
-
Crie e gerencie suas declarações de conteúdo para armazenar traduções:
|
|
380
|
-
|
|
381
|
-
```tsx fileName="src/app/metadata.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
382
|
-
import { t, type Dictionary } from "intlayer";
|
|
383
|
-
import { Metadata } from "next";
|
|
384
|
-
|
|
385
|
-
const metadataContent = {
|
|
386
|
-
key: "metadata",
|
|
387
|
-
content: {
|
|
388
|
-
title: t({
|
|
389
|
-
pt: "Meu Título do Projeto",
|
|
390
|
-
en: "My Project Title",
|
|
391
|
-
fr: "Le Titre de mon Projet",
|
|
392
|
-
es: "El Título de mi Proyecto",
|
|
393
|
-
}),
|
|
394
|
-
|
|
395
|
-
description: t({
|
|
396
|
-
pt: "Descubra a nossa plataforma inovadora projetada para simplificar o seu fluxo de trabalho e aumentar a sua produtividade.",
|
|
397
|
-
en: "Discover our innovative platform designed to streamline your workflow and boost productivity.",
|
|
398
|
-
fr: "Découvrez notre plateforme innovante conçue pour simplifier votre flux de travail et booster votre productivité.",
|
|
399
|
-
es: "Descubra nuestra plataforma innovadora diseñada para simplificar su flujo de trabajo y aumentar su productividad.",
|
|
400
|
-
}),
|
|
401
|
-
|
|
402
|
-
keywords: t({
|
|
403
|
-
pt: ["inovação", "produtividade", "fluxo de trabalho", "SaaS"],
|
|
404
|
-
en: ["innovation", "productivity", "workflow", "SaaS"],
|
|
405
|
-
pt: ["inovação", "produtividade", "fluxo de trabalho", "SaaS"],
|
|
406
|
-
fr: ["innovation", "productivité", "flux de travail", "SaaS"],
|
|
407
|
-
es: ["innovación", "productividad", "flujo de trabajo", "SaaS"],
|
|
408
|
-
}),
|
|
409
|
-
},
|
|
410
|
-
} as Dictionary<Metadata>;
|
|
411
|
-
|
|
412
|
-
export default metadataContent;
|
|
413
|
-
```
|
|
414
|
-
|
|
415
|
-
```json fileName="src/app/metadata.content.json" contentDeclarationFormat="json"
|
|
416
|
-
{
|
|
417
|
-
"key": "metadata",
|
|
418
|
-
"content": {
|
|
419
|
-
"title": {
|
|
420
|
-
"nodeType": "translation",
|
|
421
|
-
"translation": {
|
|
422
|
-
"pt": "O Título do Meu Projeto",
|
|
423
|
-
"en": "My Project Title",
|
|
424
|
-
"fr": "Le Titre de mon Projet",
|
|
425
|
-
"es": "El Título de mi Proyecto"
|
|
426
|
-
}
|
|
427
|
-
},
|
|
428
|
-
"description": {
|
|
429
|
-
"nodeType": "translation",
|
|
430
|
-
"translation": {
|
|
431
|
-
"pt": "Descubra nossa plataforma inovadora projetada para otimizar seu fluxo de trabalho e aumentar sua produtividade.",
|
|
432
|
-
"en": "Discover our innovative platform designed to streamline your workflow and boost productivity.",
|
|
433
|
-
"fr": "Découvrez notre plateforme innovante conçue pour simplifier votre flux de travail et booster votre productivité.",
|
|
434
|
-
"es": "Descubra nuestra plataforma innovadora diseñada para simplificar su flujo de trabajo y aumentar su productividad."
|
|
435
|
-
}
|
|
436
|
-
},
|
|
437
|
-
"keywords": {
|
|
438
|
-
"nodeType": "translation",
|
|
439
|
-
"translation": {
|
|
440
|
-
"pt": ["inovação", "produtividade", "fluxo de trabalho", "SaaS"],
|
|
441
|
-
"en": ["innovation", "productivity", "workflow", "SaaS"],
|
|
442
|
-
"fr": ["innovation", "productivité", "flux de travail", "SaaS"],
|
|
443
|
-
"es": ["innovación", "productividad", "flujo de trabajo", "SaaS"]
|
|
444
|
-
}
|
|
445
|
-
}
|
|
446
|
-
}
|
|
447
|
-
}
|
|
448
|
-
```
|
|
449
|
-
|
|
450
|
-
```tsx fileName="src/app/page.content.ts" contentDeclarationFormat={["typescript", "esm", "commonjs"]}
|
|
451
|
-
import { t, type Dictionary } from "intlayer";
|
|
452
|
-
|
|
453
|
-
const pageContent = {
|
|
454
|
-
key: "page",
|
|
455
|
-
content: {
|
|
456
|
-
getStarted: {
|
|
457
|
-
main: t({
|
|
458
|
-
pt: "Comece por editar",
|
|
459
|
-
en: "Get started by editing",
|
|
460
|
-
fr: "Commencez par éditer",
|
|
461
|
-
es: "Comience por editar",
|
|
462
|
-
}),
|
|
463
|
-
pageLink: "src/app/page.tsx",
|
|
464
|
-
},
|
|
465
|
-
},
|
|
466
|
-
} satisfies Dictionary;
|
|
467
|
-
|
|
468
|
-
export default pageContent;
|
|
469
|
-
```
|
|
470
|
-
|
|
471
|
-
```json fileName="src/app/page.content.json" contentDeclarationFormat="json"
|
|
472
|
-
{
|
|
473
|
-
"$schema": "https://intlayer.org/schema.json",
|
|
474
|
-
"key": "page",
|
|
475
|
-
"content": {
|
|
476
|
-
"getStarted": {
|
|
477
|
-
"nodeType": "translation",
|
|
478
|
-
"translation": {
|
|
479
|
-
"pt": "Comece por editar",
|
|
480
|
-
"en": "Get started by editing",
|
|
481
|
-
"fr": "Commencez par éditer",
|
|
482
|
-
"es": "Comience por editar"
|
|
483
|
-
}
|
|
484
|
-
},
|
|
485
|
-
"pageLink": "src/app/page.tsx"
|
|
486
|
-
}
|
|
487
|
-
}
|
|
488
|
-
```
|
|
489
|
-
|
|
490
|
-
> As declarações de conteúdo podem ser definidas em qualquer lugar da sua aplicação desde que sejam incluídas no diretório `contentDir` (por padrão, `./src`). E que correspondam à extensão de ficheiro de declaração de conteúdo (por padrão, `.content.{json,ts,tsx,js,jsx,mjs,cjs,md,mdx,yaml,yml}`).
|
|
491
|
-
|
|
492
|
-
> Para mais detalhes, consulte a [documentação de declaração de conteúdo](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dictionary/content_file.md).
|
|
493
|
-
|
|
494
|
-
</Step>
|
|
495
|
-
|
|
496
|
-
<Step number={6} title="Utilizar Conteúdo no Seu Código">
|
|
497
|
-
|
|
498
|
-
Aceda aos seus dicionários de conteúdo em toda a sua aplicação:
|
|
499
|
-
|
|
500
|
-
<Tabs>
|
|
501
|
-
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
502
|
-
|
|
503
|
-
```tsx fileName="src/app/page.tsx" codeFormat={["typescript", "esm"]}
|
|
504
|
-
import type { FC } from "react";
|
|
505
|
-
import { ClientComponentExample } from "@components/clientComponentExample/ClientComponentExample";
|
|
506
|
-
import { ServerComponentExample } from "@components/serverComponentExample/ServerComponentExample";
|
|
507
|
-
import { useIntlayer } from "next-intlayer";
|
|
508
|
-
import { NextPage } from "next";
|
|
509
|
-
|
|
510
|
-
const PageContent: FC = () => {
|
|
511
|
-
const content = useIntlayer("page");
|
|
512
|
-
|
|
513
|
-
return (
|
|
514
|
-
<>
|
|
515
|
-
<p>{content.getStarted.main}</p>
|
|
516
|
-
<code>{content.getStarted.pageLink}</code>
|
|
517
|
-
</>
|
|
518
|
-
);
|
|
519
|
-
};
|
|
520
|
-
|
|
521
|
-
const Page: NextPage = () => (
|
|
522
|
-
<>
|
|
523
|
-
<PageContent />
|
|
524
|
-
<ServerComponentExample />
|
|
525
|
-
<ClientComponentExample />
|
|
526
|
-
</>
|
|
527
|
-
);
|
|
528
|
-
|
|
529
|
-
export default Page;
|
|
530
|
-
```
|
|
531
|
-
|
|
532
|
-
- **`IntlayerProvider`** é montado uma vez, no layout raiz. Ele fornece a locale para componentes de servidor e cliente, então as páginas não se envolvem mais.
|
|
533
|
-
- Sem um segmento de caminho `[locale]`, a locale sempre vem da requisição — o header `x-intlayer-locale` definido pelo proxy Intlayer, depois o cookie de locale — que os server hooks leem por conta própria quando o provider não foi executado.
|
|
534
|
-
|
|
535
|
-
</Tab>
|
|
536
|
-
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
537
|
-
|
|
538
|
-
```tsx fileName="src/app/page.tsx" codeFormat={["typescript", "esm"]}
|
|
539
|
-
import type { FC } from "react";
|
|
540
|
-
import { ClientComponentExample } from "@components/clientComponentExample/ClientComponentExample";
|
|
541
|
-
import { ServerComponentExample } from "@components/serverComponentExample/ServerComponentExample";
|
|
542
|
-
import {
|
|
543
|
-
IntlayerServerProvider,
|
|
544
|
-
useIntlayer,
|
|
545
|
-
getLocale,
|
|
546
|
-
} from "next-intlayer/server";
|
|
547
|
-
import { NextPage } from "next";
|
|
548
|
-
import { headers, cookies } from "next/headers";
|
|
549
|
-
|
|
550
|
-
const PageContent: FC = () => {
|
|
551
|
-
const content = useIntlayer("page");
|
|
552
|
-
|
|
553
|
-
return (
|
|
554
|
-
<>
|
|
555
|
-
<p>{content.getStarted.main}</p>
|
|
556
|
-
<code>{content.getStarted.pageLink}</code>
|
|
557
|
-
</>
|
|
558
|
-
);
|
|
559
|
-
};
|
|
560
|
-
|
|
561
|
-
const Page: NextPage = async () => {
|
|
562
|
-
const locale = await getLocale();
|
|
563
|
-
|
|
564
|
-
return (
|
|
565
|
-
<IntlayerServerProvider locale={locale}>
|
|
566
|
-
<PageContent />
|
|
567
|
-
<ServerComponentExample />
|
|
568
|
-
<ClientComponentExample />
|
|
569
|
-
</IntlayerServerProvider>
|
|
570
|
-
);
|
|
571
|
-
};
|
|
572
|
-
|
|
573
|
-
export default Page;
|
|
574
|
-
```
|
|
575
|
-
|
|
576
|
-
- **`IntlayerClientProvider`** é usado para fornecer a locale aos componentes do lado do cliente. Pode ser colocado em qualquer componente pai, incluindo o layout. No entanto, recomenda-se colocá-lo no layout porque o Next.js compartilha o código do layout entre páginas, tornando-o mais eficiente. Ao usar o `IntlayerClientProvider` no layout, você evita reinicializá-lo para cada página, melhorando o desempenho e mantendo um contexto de localização consistente em toda a sua aplicação.
|
|
577
|
-
- **`IntlayerServerProvider`** é usado para fornecer o locale aos filhos do servidor. Não pode ser definido no layout.
|
|
578
|
-
|
|
579
|
-
> Layout e página não podem compartilhar um contexto de servidor comum porque o sistema de contexto de servidor baseia-se num armazenamento de dados por requisição (via [cache do React](https://react.dev/reference/react/cache)), fazendo com que cada "context" seja recriado para diferentes segmentos da aplicação. Colocar o provider num layout partilhado quebraria esse isolamento, impedindo a propagação correta dos valores do contexto de servidor para os seus componentes de servidor.
|
|
580
|
-
|
|
581
|
-
</Tab>
|
|
582
|
-
</Tabs>
|
|
583
|
-
|
|
584
|
-
```tsx {4,7} fileName="src/components/clientComponentExample/ClientComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
585
|
-
"use client";
|
|
586
|
-
|
|
587
|
-
import type { FC } from "react";
|
|
588
|
-
import { useIntlayer } from "next-intlayer";
|
|
589
|
-
|
|
590
|
-
export const ClientComponentExample: FC = () => {
|
|
591
|
-
const content = useIntlayer("client-component-example"); // Cria a declaração de conteúdo relacionada
|
|
592
|
-
|
|
593
|
-
return (
|
|
594
|
-
<div>
|
|
595
|
-
<h2>{content.title}</h2>
|
|
596
|
-
<p>{content.content}</p>
|
|
597
|
-
</div>
|
|
598
|
-
);
|
|
599
|
-
};
|
|
600
|
-
```
|
|
601
|
-
|
|
602
|
-
<Tabs>
|
|
603
|
-
<Tab label='Intlayer >=9.4' value='>=9.4'>
|
|
604
|
-
|
|
605
|
-
```tsx {2} fileName="src/components/serverComponentExample/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
606
|
-
import type { FC } from "react";
|
|
607
|
-
import { useIntlayer } from "next-intlayer";
|
|
608
|
-
|
|
609
|
-
export const ServerComponentExample: FC = () => {
|
|
610
|
-
const content = useIntlayer("server-component-example"); // Criar declaração de conteúdo relacionada
|
|
611
|
-
|
|
612
|
-
return (
|
|
613
|
-
<div>
|
|
614
|
-
<h2>{content.title}</h2>
|
|
615
|
-
<p>{content.content}</p>
|
|
616
|
-
</div>
|
|
617
|
-
);
|
|
618
|
-
};
|
|
619
|
-
```
|
|
620
|
-
|
|
621
|
-
> `next-intlayer` é o caminho de importação isomórfico: a condição de exportação `react-server` fornece aos componentes de servidor a implementação de locale ambiente, enquanto os componentes de cliente obtêm a implementação baseada em contexto. A mesma chamada funciona em ambos os lados.
|
|
622
|
-
|
|
623
|
-
</Tab>
|
|
624
|
-
<Tab label='Intlayer <9.4' value='<9.4'>
|
|
625
|
-
|
|
626
|
-
```tsx {2} fileName="src/components/serverComponentExample/ServerComponentExample.tsx" codeFormat={["typescript", "esm"]}
|
|
627
|
-
import type { FC } from "react";
|
|
628
|
-
import { useIntlayer } from "next-intlayer/server";
|
|
629
|
-
|
|
630
|
-
export const ServerComponentExample: FC = () => {
|
|
631
|
-
const content = useIntlayer("server-component-example"); // Criar declaração de conteúdo relacionada
|
|
632
|
-
|
|
633
|
-
return (
|
|
634
|
-
<div>
|
|
635
|
-
<h2>{content.title}</h2>
|
|
636
|
-
<p>{content.content}</p>
|
|
637
|
-
</div>
|
|
638
|
-
);
|
|
639
|
-
};
|
|
640
|
-
```
|
|
641
|
-
|
|
642
|
-
</Tab>
|
|
643
|
-
</Tabs>
|
|
644
|
-
|
|
645
|
-
> Se quiser usar o seu conteúdo num atributo `string`, como `alt`, `title`, `href`, `aria-label`, etc., deve chamar o valor da função, por exemplo:
|
|
646
|
-
|
|
647
|
-
> ```html
|
|
648
|
-
> <img src="{content.image.src.value}" alt="{content.image.value}" />
|
|
649
|
-
> <img src="{content.image.src.toString()}" alt="{content.image.toString()}" />
|
|
650
|
-
> <img src="{String(content.image.src)}" alt="{String(content.image)}" />
|
|
651
|
-
> ```
|
|
652
|
-
|
|
653
|
-
> Para saber mais sobre o hook `useIntlayer`, consulte a [documentação](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/packages/next-intlayer/useIntlayer.md).
|
|
654
|
-
|
|
655
|
-
</Step>
|
|
656
|
-
|
|
657
|
-
<Step number={7} title="Configurar Proxy para Detecção de Locale" isOptional={true}>
|
|
658
|
-
|
|
659
|
-
Configure o proxy para detetar a locale preferida do usuário:
|
|
660
|
-
|
|
661
|
-
```typescript fileName="src/proxy.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
662
|
-
export { intlayerProxy as proxy } from "next-intlayer/proxy";
|
|
663
|
-
|
|
664
|
-
export const config = {
|
|
665
|
-
matcher:
|
|
666
|
-
"/((?!api|static|assets|robots|sitemap|sw|service-worker|manifest|.*\\..*|_next).*)",
|
|
667
|
-
};
|
|
668
|
-
```
|
|
669
|
-
|
|
670
|
-
> O `intlayerProxy` é usado para detectar a localidade preferida do usuário e redirecioná-lo para a URL apropriada conforme especificado na [configuração](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/configuration.md). Além disso, permite salvar a localidade preferida do usuário em um cookie.
|
|
671
|
-
|
|
672
|
-
> Desde Intlayer v9, este middleware respeita a opção `routing.enableProxy` (`true` por padrão). Defina `routing.enableProxy: false` na sua configuração para transformá-lo em um pass-through sem remover este arquivo. Veja as [notas de lançamento da v9](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/releases/v9.md).
|
|
673
|
-
|
|
674
|
-
> Se precisar encadear vários proxies juntos (por exemplo, `intlayerProxy` com autenticação ou proxies customizados), o Intlayer agora fornece um helper chamado `multipleProxies`.
|
|
675
|
-
|
|
676
|
-
```ts
|
|
677
|
-
import { multipleProxies, intlayerProxy } from "next-intlayer/proxy";
|
|
678
|
-
import { customProxy } from "@utils/customProxy";
|
|
679
|
-
|
|
680
|
-
export const proxy = multipleProxies([intlayerProxy, customProxy]);
|
|
681
|
-
```
|
|
682
|
-
|
|
683
|
-
</Step>
|
|
684
|
-
|
|
685
|
-
<Step number={8} title="Alterar o idioma do seu conteúdo" isOptional={true}>
|
|
686
|
-
|
|
687
|
-
Para alterar o idioma do seu conteúdo no Next.js, a forma recomendada é usar o componente `Link` para redirecionar os utilizadores para a página localizada apropriada. O componente `Link` permite o prefetch da página, o que ajuda a evitar um recarregamento completo.
|
|
688
|
-
|
|
689
|
-
```tsx fileName="src/components/localeSwitcher/LocaleSwitcher.tsx" codeFormat={["typescript", "esm"]}
|
|
690
|
-
"use client";
|
|
691
|
-
|
|
692
|
-
import type { FC } from "react";
|
|
693
|
-
import { Locales, getHTMLTextDir, getLocaleName } from "intlayer";
|
|
694
|
-
import { useLocale } from "next-intlayer";
|
|
695
|
-
|
|
696
|
-
export const LocaleSwitcher: FC = () => {
|
|
697
|
-
const { locale, availableLocales, setLocale } = useLocale();
|
|
698
|
-
|
|
699
|
-
return (
|
|
700
|
-
<div>
|
|
701
|
-
<button popoverTarget="localePopover">{getLocaleName(locale)}</button>
|
|
702
|
-
<div id="localePopover" popover="auto">
|
|
703
|
-
{availableLocales.map((localeItem) => (
|
|
704
|
-
<button
|
|
705
|
-
key={localeItem}
|
|
706
|
-
aria-current={locale === localeItem ? "page" : undefined}
|
|
707
|
-
onClick={() => setLocale(localeItem)}
|
|
708
|
-
>
|
|
709
|
-
<span>
|
|
710
|
-
{/* Locale, ex.: FR */}
|
|
711
|
-
{localeItem}
|
|
712
|
-
</span>
|
|
713
|
-
<span>
|
|
714
|
-
{/* Idioma em seu próprio locale, ex.: Français */}
|
|
715
|
-
{getLocaleName(localeItem, locale)}
|
|
716
|
-
</span>
|
|
717
|
-
<span dir={getHTMLTextDir(localeItem)} lang={localeItem}>
|
|
718
|
-
{/* Idioma no locale atual, ex.: Francés com o locale atual definido para Locales.SPANISH */}
|
|
719
|
-
{getLocaleName(localeItem)}
|
|
720
|
-
</span>
|
|
721
|
-
<span dir="ltr" lang={Locales.ENGLISH}>
|
|
722
|
-
{/* Idioma em inglês - ex.: Francês */}
|
|
723
|
-
{getLocaleName(localeItem, Locales.ENGLISH)}
|
|
724
|
-
</span>
|
|
725
|
-
</button>
|
|
726
|
-
))}
|
|
727
|
-
</div>
|
|
728
|
-
</div>
|
|
729
|
-
);
|
|
730
|
-
};
|
|
731
|
-
```
|
|
732
|
-
|
|
733
|
-
> Uma forma alternativa é usar a função `setLocale` fornecida pelo hook `useLocale`. Essa função não permitirá o prefetch da página. Consulte a [documentação do hook `useLocale`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/packages/next-intlayer/useLocale.md) para mais detalhes.
|
|
734
|
-
|
|
735
|
-
> Referências da documentação:
|
|
736
|
-
>
|
|
737
|
-
> - [`useLocale` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/packages/next-intlayer/useLocale.md)
|
|
738
|
-
> - [`getLocaleName` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/packages/next-intlayer/getLocaleName.md)
|
|
739
|
-
> - [`getLocalizedUrl` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/packages/next-intlayer/getLocalizedUrl.md)
|
|
740
|
-
> - [`getHTMLTextDir` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/packages/intlayer/getHTMLTextDir.md)
|
|
741
|
-
> - [`hrefLang` atributo](https://developers.google.com/search/docs/specialty/international/localized-versions?hl=fr)
|
|
742
|
-
> - [`lang` atributo](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang)
|
|
743
|
-
> - [`dir` atributo](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dir)
|
|
744
|
-
> - [`aria-current` atributo](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)
|
|
745
|
-
|
|
746
|
-
</Step>
|
|
747
|
-
|
|
748
|
-
<Step number={9} title="Obter a locale atual em Server Actions" isOptional={true}>
|
|
749
|
-
|
|
750
|
-
Se precisar da locale ativa dentro de uma Server Action (por exemplo, para localizar e-mails ou executar lógica dependente da locale), chame `getLocale` de `next-intlayer/server`:
|
|
751
|
-
|
|
752
|
-
```tsx fileName="src/app/actions/getLocale.ts" codeFormat="typescript"
|
|
753
|
-
"use server";
|
|
754
|
-
|
|
755
|
-
import { getLocale } from "next-intlayer/server";
|
|
756
|
-
|
|
757
|
-
export const myServerAction = async () => {
|
|
758
|
-
const locale = await getLocale();
|
|
759
|
-
|
|
760
|
-
// Faça algo com o locale
|
|
761
|
-
};
|
|
762
|
-
```
|
|
763
|
-
|
|
764
|
-
> A função `getLocale` segue uma estratégia em cascata para determinar a locale do utilizador:
|
|
765
|
-
>
|
|
766
|
-
> 1. Primeiro, verifica os cabeçalhos da requisição à procura de um valor de locale que pode ter sido definido pelo proxy
|
|
767
|
-
> 2. Se nenhum locale for encontrado nos cabeçalhos, procura um locale armazenado em cookies
|
|
768
|
-
> 3. Se nenhum cookie for encontrado, tenta detetar a língua preferida do utilizador a partir das definições do navegador
|
|
769
|
-
> 4. Como último recurso, recorre ao locale predefinido configurado na aplicação
|
|
770
|
-
>
|
|
771
|
-
> Isso garante que o idioma mais apropriado seja selecionado com base no contexto disponível.
|
|
772
|
-
|
|
773
|
-
</Step>
|
|
774
|
-
|
|
775
|
-
<Step number={10} title="Otimize o tamanho do bundle" isOptional={true}>
|
|
776
|
-
|
|
777
|
-
Quando usar o `next-intlayer`, os dicionários são incluídos no bundle de cada página por padrão. Para otimizar o tamanho do bundle, o Intlayer fornece um plugin SWC opcional que substitui inteligentemente chamadas a `useIntlayer` usando macros. Isso garante que os dicionários sejam incluídos apenas nos bundles das páginas que realmente os utilizam.
|
|
778
|
-
|
|
779
|
-
Para habilitar essa otimização, instale o pacote `@intlayer/swc`. Uma vez instalado, o `next-intlayer` detectará e usará automaticamente o plugin:
|
|
780
|
-
|
|
781
|
-
```bash packageManager="npm"
|
|
782
|
-
npm install @intlayer/swc --save-dev
|
|
783
|
-
```
|
|
784
|
-
|
|
785
|
-
```bash packageManager="pnpm"
|
|
786
|
-
pnpm add @intlayer/swc --save-dev
|
|
787
|
-
```
|
|
788
|
-
|
|
789
|
-
```bash packageManager="yarn"
|
|
790
|
-
yarn add @intlayer/swc --save-dev
|
|
791
|
-
```
|
|
792
|
-
|
|
793
|
-
```bash packageManager="bun"
|
|
794
|
-
bun add @intlayer/swc --dev
|
|
795
|
-
```
|
|
796
|
-
|
|
797
|
-
> Observação: Esta otimização está disponível apenas para Next.js 13 e versões superiores.
|
|
798
|
-
|
|
799
|
-
> Observação: Este pacote não é instalado por padrão porque plugins SWC ainda são experimentais no Next.js. Isso pode mudar no futuro.
|
|
800
|
-
|
|
801
|
-
> Observação: Se você definir a opção como `importMode: 'dynamic'` ou `importMode: 'fetch'` (in the `dictionary` configuration), ela dependerá de `Suspense`, portanto você terá que envolver suas chamadas `useIntlayer` em um limite `Suspense`. Isso significa que você não poderá usar `useIntlayer` diretamente no nível superior do seu componente Page/Layout.
|
|
802
|
-
|
|
803
|
-
</Step>
|
|
804
|
-
|
|
805
|
-
</Steps>
|
|
806
|
-
|
|
807
|
-
### Monitorar mudanças nos dicionários com Turbopack
|
|
808
|
-
|
|
809
|
-
Quando estiver a usar o Turbopack como servidor de desenvolvimento com o comando `next dev`, as alterações nos dicionários não serão detetadas automaticamente por padrão.
|
|
810
|
-
|
|
811
|
-
Esta limitação ocorre porque o Turbopack não consegue executar plugins do webpack em paralelo para monitorizar alterações nos seus ficheiros de conteúdo. Para contornar isto, terá de usar o comando `intlayer watch` para executar simultaneamente o servidor de desenvolvimento e o watcher de build do Intlayer.
|
|
812
|
-
|
|
813
|
-
```json5 fileName="package.json"
|
|
814
|
-
{
|
|
815
|
-
// ... As suas configurações existentes do package.json
|
|
816
|
-
"scripts": {
|
|
817
|
-
// ... As suas configurações de scripts existentes
|
|
818
|
-
"dev": "intlayer watch --with 'next dev'",
|
|
819
|
-
},
|
|
820
|
-
}
|
|
821
|
-
```
|
|
822
|
-
|
|
823
|
-
> Se você estiver usando next-intlayer@<=6.x.x, é necessário manter a flag `--turbopack` para que a aplicação Next.js 16 funcione corretamente com o Turbopack. Recomendamos usar next-intlayer@>=7.x.x para evitar essa limitação.
|
|
824
|
-
|
|
825
|
-
### Configurar TypeScript
|
|
826
|
-
|
|
827
|
-
O Intlayer usa module augmentation para tirar proveito do TypeScript e tornar sua codebase mais robusta.
|
|
828
|
-
|
|
829
|
-

|
|
830
|
-
|
|
831
|
-

|
|
832
|
-
|
|
833
|
-
Certifique-se de que sua configuração do TypeScript inclua os tipos autogerados.
|
|
834
|
-
|
|
835
|
-
```json5 fileName="tsconfig.json"
|
|
836
|
-
{
|
|
837
|
-
// ... Suas configurações existentes do TypeScript
|
|
838
|
-
"include": [
|
|
839
|
-
// ... Suas configurações existentes do TypeScript
|
|
840
|
-
".intlayer/**/*.ts", // Incluir os tipos gerados automaticamente
|
|
841
|
-
],
|
|
842
|
-
}
|
|
843
|
-
```
|
|
844
|
-
|
|
845
|
-
### Configuração do Git
|
|
846
|
-
|
|
847
|
-
Recomenda-se ignorar os ficheiros gerados pelo Intlayer. Isto permite evitar comitar estes ficheiros no seu repositório Git.
|
|
848
|
-
|
|
849
|
-
Para isso, pode adicionar as seguintes instruções ao ficheiro `.gitignore`:
|
|
850
|
-
|
|
851
|
-
```plaintext fileName=".gitignore"
|
|
852
|
-
# Ignorar os ficheiros gerados pelo Intlayer
|
|
853
|
-
.intlayer
|
|
854
|
-
```
|
|
855
|
-
|
|
856
|
-
### Extensão do VS Code
|
|
857
|
-
|
|
858
|
-
Para melhorar a sua experiência de desenvolvimento com o Intlayer, pode instalar a extensão oficial **Intlayer VS Code Extension**.
|
|
859
|
-
|
|
860
|
-
[Install from the VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=intlayer.intlayer-vs-code-extension)
|
|
861
|
-
|
|
862
|
-
Esta extensão fornece:
|
|
863
|
-
|
|
864
|
-
- **Autocompletion** para chaves de tradução.
|
|
865
|
-
- **Detecção de erros em tempo real** para traduções em falta.
|
|
866
|
-
- **Visualizações inline** do conteúdo traduzido.
|
|
867
|
-
- **Ações rápidas** para criar e atualizar traduções facilmente.
|
|
868
|
-
|
|
869
|
-
Para mais detalhes sobre como usar a extensão, consulte a [documentação da Extensão Intlayer para VS Code](https://intlayer.org/doc/vs-code-extension).
|
|
870
|
-
|
|
871
|
-
### Ir mais longe
|
|
872
|
-
|
|
873
|
-
Para ir mais longe, você pode implementar o [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_visual_editor.md) ou externalizar seu conteúdo usando o [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_CMS.md).
|
|
874
|
-
|
|
875
|
-
## Perguntas Frequentes
|
|
876
|
-
|
|
877
|
-
<FAQ>
|
|
878
|
-
|
|
879
|
-
<Question title="Quais são as diferentes soluções disponíveis para internacionalizar um app Next.js?">
|
|
880
|
-
|
|
881
|
-
O campo `i18n` do `next.config.js` não se aplica ao App Router, portanto a camada de localização é sempre uma escolha de biblioteca:
|
|
882
|
-
|
|
883
|
-
- **`next-intl`**, **`next-i18next` / `i18next`** e **`react-intl`**: catálogos JSON ou ICU carregados por namespace.
|
|
884
|
-
- **`Lingui`**: orientado à extração, com mensagens ICU compiladas em tempo de build.
|
|
885
|
-
- **`Intlayer`**: a solução mais avançada. O conteúdo pode ser declarado em qualquer lugar da sua base de código ([ao lado de cada componente ou centralizado](https://intlayer.org/blog/per-component-vs-centralized-i18n)), compilado por componente, totalmente tipado, com tradução por IA, editor visual e CMS.
|
|
886
|
-
|
|
887
|
-
Este guia cobre a configuração sem locale no caminho da URL. Consulte [por que Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/interest_of_intlayer.md) e o [benchmark de i18n do Next.js](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/benchmark/nextjs.md).
|
|
888
|
-
|
|
889
|
-
</Question>
|
|
890
|
-
|
|
891
|
-
<Question title="Quanto a i18n adiciona ao tamanho do bundle do Next.js?">
|
|
892
|
-
|
|
893
|
-
Muito menos do que uma configuração baseada em namespaces, porque uma página nunca baixa um catálogo que não renderiza. Os Server Components resolvem seu conteúdo no servidor, e o compilador de build substitui as chamadas `useIntlayer` pelas entradas exatas do dicionário usadas pelo componente, descartando chaves e idiomas não utilizados, enquanto os [dicionários dinâmicos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dynamic_dictionaries/index.md) dividem o restante por locale. Comparado às alternativas habituais, o Intlayer reduz o tamanho do bundle e da página em até 50%. Consulte [otimização de bundle](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/bundle_optimization.md) e o [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/benchmark/nextjs.md).
|
|
894
|
-
|
|
895
|
-
</Question>
|
|
896
|
-
|
|
897
|
-
<Question title="Posso migrar do next-intl, next-i18next ou i18next sem reescrever meus componentes?">
|
|
898
|
-
|
|
899
|
-
Sim, e existem dois caminhos. Você pode migrar o conteúdo progressivamente com o [guia de migração do next-intl](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/migration_from_next-intl_to_intlayer.md) ou o [guia de migração do i18next](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/migration_from_i18next_to_intlayer.md). Ou pode manter sua API atual inteiramente: os [adaptadores de compatibilidade (compat adapters)](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/compat/index.md) expõem exatamente a mesma API que `next-intl`, `react-i18next` e `react-intl`, mas servidos por dicionários Intlayer, de modo que apenas as importações mudam e o código dos componentes permanece idêntico.
|
|
900
|
-
|
|
901
|
-
</Question>
|
|
902
|
-
|
|
903
|
-
<Question title="Posso manter meus arquivos de tradução JSON existentes?">
|
|
904
|
-
|
|
905
|
-
Sim. O [plugin sync JSON](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/plugins/sync-json.md) mantém seus arquivos `/messages/{locale}/{namespace}.json` como fonte de verdade e gera dicionários Intlayer a partir deles, em ambas as direções. O [plugin sync PO](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/plugins/sync-po.md) faz o mesmo para catálogos gettext, e os [arquivos por locale](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/per_locale_file.md) permitem dividir o conteúdo por idioma em vez de agrupar todos os locales em um único arquivo.
|
|
906
|
-
|
|
907
|
-
</Question>
|
|
908
|
-
|
|
909
|
-
<Question title="Preciso mover meu conteúdo chave por chave?">
|
|
910
|
-
|
|
911
|
-
Não. Execute `npx intlayer extract` e o Intlayer lê seus componentes, extrai as strings voltadas para o usuário e escreve um arquivo `.content` ao lado de cada um, para que você revise um diff em vez de copiar strings para um catálogo uma a uma.
|
|
912
|
-
|
|
913
|
-
Para um fluxo de trabalho totalmente automatizado, o [Intlayer Compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/compiler.md) faz o mesmo em tempo de build: ele analisa seu código JSX, TSX, Vue e Svelte a cada alteração, gera os dicionários e os mantém sincronizados via hot module replacement, dispensando completamente a manutenção manual de chaves.
|
|
914
|
-
|
|
915
|
-
Dois limites são importantes considerar: o compilador opera por análise estática, de modo que strings criadas apenas em tempo de execução (como códigos de erro de API ou campos dinâmicos de CMS) ficam fora de alcance. Além disso, ele precisa distinguir texto visível de lógicas de aplicação como `className="active"` ou status codes, exigindo algumas anotações em bases de código extensas. O [comando extract](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/cli/extract.md) evita ambos mantendo você no controle.
|
|
916
|
-
|
|
917
|
-
</Question>
|
|
918
|
-
|
|
919
|
-
<Question title="Quais ferramentas de editor e agentes de IA estão disponíveis?">
|
|
920
|
-
|
|
921
|
-
Cinco ferramentas, todas opcionais:
|
|
922
|
-
|
|
923
|
-
- **[Extensão VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/vs_code_extension.md)**: navegue de uma chave `useIntlayer` diretamente para o arquivo de conteúdo que a declara, extraia conteúdo de um componente e execute build, fill, test, push e pull pela paleta de comandos ou pela aba dedicada do Intlayer.
|
|
924
|
-
- **[Servidor LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/lsp.md)**: a mesma inteligência em qualquer editor compatível com LSP, com ir para definição, localizar referências, pré-visualizações de valores traduzidos ao passar o mouse, autocompletar e alertas para chaves não declaradas. Também resolve chamadas de `i18next`, `react-i18next`, `next-intl` e `use-intl`, facilitando a migração.
|
|
925
|
-
- **[Servidor MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/mcp_server.md)**: expõe a documentação e a CLI do Intlayer para Cursor, VS Code, Claude Desktop, Claude Code e ChatGPT, permitindo que os assistentes respondam com base na documentação atualizada e executem comandos como `intlayer fill`.
|
|
926
|
-
- **[Agent Skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/agent_skills.md)**: habilidades focadas como `intlayer-config`, `intlayer-cli` e `intlayer-content`, além de uma por framework, ensinando ao agente suas regras de roteamento e tipos de nós.
|
|
927
|
-
- **[Plugin ESLint](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/eslint.md)**: a regra `no-raw-text` identifica strings hardcoded, com regras adicionais para chaves estáticas e conteúdo não utilizado.
|
|
928
|
-
|
|
929
|
-
</Question>
|
|
930
|
-
|
|
931
|
-
<Question title="Por que eu disponibilizaria meu aplicativo sem locale na URL?">
|
|
932
|
-
|
|
933
|
-
Porque o locale nem sempre faz parte da identidade da página. Um painel autenticado, uma ferramenta interna ou um aplicativo protegido por login não tem motivo para exibir `/pt/` em cada URL: o idioma é uma preferência do usuário, não um documento diferente. Remover o prefixo também mantém suas rotas, links e análises em um conjunto unificado de caminhos.
|
|
934
|
-
|
|
935
|
-
</Question>
|
|
936
|
-
|
|
937
|
-
<Question title="Quais são as consequências para o SEO de não ter um locale na URL?">
|
|
938
|
-
|
|
939
|
-
Elas são reais, então decida conscientemente. Sem uma URL distinta por idioma, os mecanismos de busca não têm páginas separadas para indexar cada locale, as tags `hreflang` não têm para onde apontar e os rastreadores enxergam apenas o idioma servido pela sua detecção padrão. Isso funciona perfeitamente para áreas autenticadas (que não são indexadas de qualquer forma), mas não é recomendado para sites institucionais, blogs ou documentações públicas. Se o tráfego orgânico por idioma for essencial, utilize a configuração com prefixo descrita no [guia do Next.js 16](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_with_nextjs_16.md).
|
|
940
|
-
|
|
941
|
-
</Question>
|
|
942
|
-
|
|
943
|
-
<Question title="Qual é a diferença entre os modos no-prefix e search-params?">
|
|
944
|
-
|
|
945
|
-
O modo `"no-prefix"` remove o locale completamente da URL e o resolve a partir de cookies, cabeçalhos HTTP ou domínios, de modo que todos os idiomas compartilhem o mesmo endereço. O modo `"search-params"` adiciona o locale na query string como `/dashboard?locale=pt`, o que ainda fornece a cada idioma uma URL distinta, compartilhável e marcável como favorito sem alterar a árvore de rotas. Prefira `"search-params"` se você quiser links compartilháveis por idioma.
|
|
946
|
-
|
|
947
|
-
</Question>
|
|
948
|
-
|
|
949
|
-
<Question title="Como o locale é detectado então?">
|
|
950
|
-
|
|
951
|
-
A partir das fontes listadas em `routing.storage`: por padrão, primeiro em um cookie e depois no cabeçalho `Accept-Language`, com fallback para o locale padrão. O passo 7 adiciona o proxy que aplica essa resolução. A escolha explícita feita pelo usuário é salva, persistindo nas próximas visitas. Consulte a [referência de configuração](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/configuration.md).
|
|
952
|
-
|
|
953
|
-
</Question>
|
|
954
|
-
|
|
955
|
-
<Question title="Posso mapear cada idioma para seu próprio domínio?">
|
|
956
|
-
|
|
957
|
-
Sim, e é a opção ideal se você removeu o prefixo por estética mas ainda deseja otimização completa para SEO. O `routing.domains` mapeia cada locale a um hostname, de forma que o próprio domínio identifica o idioma, nenhum prefixo é adicionado ao caminho e cada idioma recebe uma URL indexável para onde o `hreflang` pode apontar.
|
|
958
|
-
|
|
959
|
-
</Question>
|
|
960
|
-
|
|
961
|
-
<Question title="Como traduzo o app automaticamente com IA?">
|
|
962
|
-
|
|
963
|
-
Execute `npx intlayer fill`. O comando preenche traduções ausentes com o LLM de sua preferência, usando seu próprio provedor e chave de API, e o parâmetro `--git-diff` restringe a execução ao conteúdo alterado na branch. Consulte o [comando fill](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/cli/fill.md) e a [integração CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/CI_CD.md).
|
|
964
|
-
|
|
965
|
-
</Question>
|
|
966
|
-
|
|
967
|
-
<Question title="O Intlayer suporta plurais, gênero e rich text?">
|
|
968
|
-
|
|
969
|
-
Sim: [formas plurais](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dictionary/plurial.md), [conteúdo baseado em gênero](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dictionary/gender.md), condições, [inserções](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dictionary/insertion.md), [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dictionary/markdown.md) e [formatadores](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/formatters.md) para números, datas e moedas.
|
|
970
|
-
|
|
971
|
-
</Question>
|
|
972
|
-
|
|
973
|
-
<Question title="Como tradutores podem editar o conteúdo sem tocar no código?">
|
|
974
|
-
|
|
975
|
-
Por meio do [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_visual_editor.md), que roda em sua própria infraestrutura e permite editar textos diretamente no app em execução, ou pelo [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_CMS.md), que externaliza o conteúdo para que ele possa ser alterado sem a necessidade de novos deploys.
|
|
976
|
-
|
|
977
|
-
</Question>
|
|
978
|
-
|
|
979
|
-
<Question title="O Intlayer é gratuito e de código aberto?">
|
|
980
|
-
|
|
981
|
-
Sim, sob a licença Apache 2.0, uso comercial incluído. O CMS hospedado é um serviço pago opcional que também pode ser [auto hospedado](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/self_hosting.md).
|
|
982
|
-
|
|
983
|
-
</Question>
|
|
984
|
-
|
|
985
|
-
</FAQ>
|