@intlayer/docs 9.4.1 → 9.4.3
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 +1 -1
- package/blog/ar/date_time_number_formatting_locales.md +216 -0
- package/blog/ar/detecting_missing_translations.md +202 -0
- package/blog/ar/hreflang_guide_multilingual_seo.md +317 -0
- package/blog/ar/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/ar/i18n_meaning.md +0 -2
- package/blog/ar/i18n_testing_strategies.md +179 -0
- package/blog/ar/intlayer_with_i18next.md +3 -5
- package/blog/ar/intlayer_with_next-i18next.md +3 -7
- package/blog/ar/intlayer_with_next-intl.md +3 -3
- package/blog/ar/intlayer_with_react-i18next.md +3 -3
- package/blog/ar/intlayer_with_react-intl.md +3 -3
- package/blog/ar/intlayer_with_vue-i18n.md +3 -7
- package/blog/ar/is_i18next_outdated.md +315 -0
- package/blog/ar/is_next-intl_outdated.md +363 -0
- package/blog/ar/is_vue-i18n_outdated.md +338 -0
- package/blog/ar/list_i18n_technologies/build-tools/vite.md +177 -0
- package/blog/ar/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/ar/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/ar/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/ar/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/ar/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/ar/what_is_internationalization.md +0 -2
- package/blog/de/date_time_number_formatting_locales.md +216 -0
- package/blog/de/detecting_missing_translations.md +202 -0
- package/blog/de/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/de/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/de/i18n_meaning.md +0 -2
- package/blog/de/i18n_testing_strategies.md +179 -0
- package/blog/de/intlayer_with_i18next.md +3 -3
- package/blog/de/intlayer_with_next-i18next.md +3 -3
- package/blog/de/intlayer_with_next-intl.md +3 -3
- package/blog/de/intlayer_with_react-i18next.md +3 -3
- package/blog/de/intlayer_with_react-intl.md +3 -3
- package/blog/de/intlayer_with_vue-i18n.md +3 -7
- package/blog/de/is_i18next_outdated.md +315 -0
- package/blog/de/is_next-intl_outdated.md +363 -0
- package/blog/de/is_vue-i18n_outdated.md +338 -0
- package/blog/de/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/de/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/de/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/de/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/de/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/de/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/de/what_is_internationalization.md +0 -2
- package/blog/en/date_time_number_formatting_locales.md +216 -0
- package/blog/en/detecting_missing_translations.md +202 -0
- package/blog/en/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/en/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/en/i18n_meaning.md +0 -2
- package/blog/en/i18n_testing_strategies.md +179 -0
- package/blog/en/icu_message_format.md +288 -0
- package/blog/en/intlayer_with_i18next.md +3 -5
- package/blog/en/intlayer_with_next-i18next.md +3 -5
- package/blog/en/intlayer_with_next-intl.md +3 -5
- package/blog/en/intlayer_with_react-i18next.md +3 -3
- package/blog/en/intlayer_with_react-intl.md +3 -5
- package/blog/en/intlayer_with_vue-i18n.md +3 -5
- package/blog/en/is_i18next_outdated.md +315 -0
- package/blog/en/is_next-intl_outdated.md +363 -0
- package/blog/en/is_vue-i18n_outdated.md +338 -0
- package/blog/en/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/en/list_i18n_technologies/frameworks/angular.md +184 -108
- package/blog/en/list_i18n_technologies/frameworks/astro.md +268 -0
- package/blog/en/list_i18n_technologies/frameworks/nextjs.md +196 -0
- package/blog/en/list_i18n_technologies/frameworks/nuxt.md +255 -0
- package/blog/en/list_i18n_technologies/frameworks/react-native.md +133 -154
- package/blog/en/list_i18n_technologies/frameworks/react-router.md +331 -0
- package/blog/en/list_i18n_technologies/frameworks/react.md +176 -96
- package/blog/en/list_i18n_technologies/frameworks/solid.md +268 -0
- package/blog/en/list_i18n_technologies/frameworks/svelte.md +156 -88
- package/blog/en/list_i18n_technologies/frameworks/sveltekit.md +235 -0
- package/blog/en/list_i18n_technologies/frameworks/tanstack-start.md +280 -0
- package/blog/en/list_i18n_technologies/frameworks/vue.md +167 -95
- package/blog/en/what_is_internationalization.md +0 -2
- package/blog/en-GB/date_time_number_formatting_locales.md +216 -0
- package/blog/en-GB/detecting_missing_translations.md +202 -0
- package/blog/en-GB/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/en-GB/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/en-GB/i18n_meaning.md +0 -2
- package/blog/en-GB/i18n_testing_strategies.md +179 -0
- package/blog/en-GB/intlayer_with_i18next.md +3 -3
- package/blog/en-GB/intlayer_with_next-i18next.md +3 -3
- package/blog/en-GB/intlayer_with_next-intl.md +3 -3
- package/blog/en-GB/intlayer_with_react-i18next.md +3 -3
- package/blog/en-GB/intlayer_with_react-intl.md +3 -3
- package/blog/en-GB/intlayer_with_vue-i18n.md +3 -3
- package/blog/en-GB/is_i18next_outdated.md +315 -0
- package/blog/en-GB/is_next-intl_outdated.md +363 -0
- package/blog/en-GB/is_vue-i18n_outdated.md +338 -0
- package/blog/en-GB/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/en-GB/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/en-GB/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/en-GB/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/en-GB/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/en-GB/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/en-GB/what_is_internationalization.md +0 -2
- package/blog/es/date_time_number_formatting_locales.md +216 -0
- package/blog/es/detecting_missing_translations.md +202 -0
- package/blog/es/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/es/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/es/i18n_meaning.md +0 -2
- package/blog/es/i18n_testing_strategies.md +179 -0
- package/blog/es/intlayer_with_i18next.md +3 -3
- package/blog/es/intlayer_with_next-i18next.md +3 -3
- package/blog/es/intlayer_with_next-intl.md +3 -3
- package/blog/es/intlayer_with_react-i18next.md +3 -3
- package/blog/es/intlayer_with_react-intl.md +3 -3
- package/blog/es/intlayer_with_vue-i18n.md +3 -3
- package/blog/es/is_i18next_outdated.md +315 -0
- package/blog/es/is_next-intl_outdated.md +363 -0
- package/blog/es/is_vue-i18n_outdated.md +338 -0
- package/blog/es/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/es/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/es/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/es/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/es/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/es/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/es/what_is_internationalization.md +0 -2
- package/blog/fr/date_time_number_formatting_locales.md +216 -0
- package/blog/fr/detecting_missing_translations.md +202 -0
- package/blog/fr/hreflang_guide_multilingual_seo.md +315 -0
- package/blog/fr/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/fr/i18n_meaning.md +0 -2
- package/blog/fr/i18n_testing_strategies.md +179 -0
- package/blog/fr/intlayer_with_i18next.md +3 -3
- package/blog/fr/intlayer_with_next-i18next.md +3 -3
- package/blog/fr/intlayer_with_next-intl.md +3 -3
- package/blog/fr/intlayer_with_react-i18next.md +3 -3
- package/blog/fr/intlayer_with_react-intl.md +3 -3
- package/blog/fr/intlayer_with_vue-i18n.md +3 -3
- package/blog/fr/is_i18next_outdated.md +315 -0
- package/blog/fr/is_next-intl_outdated.md +363 -0
- package/blog/fr/is_vue-i18n_outdated.md +338 -0
- package/blog/fr/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/fr/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/fr/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/fr/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/fr/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/fr/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/fr/what_is_internationalization.md +0 -2
- package/blog/hi/date_time_number_formatting_locales.md +216 -0
- package/blog/hi/detecting_missing_translations.md +202 -0
- package/blog/hi/hreflang_guide_multilingual_seo.md +323 -0
- package/blog/hi/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/hi/i18n_meaning.md +0 -2
- package/blog/hi/i18n_testing_strategies.md +179 -0
- package/blog/hi/intlayer_with_i18next.md +3 -5
- package/blog/hi/intlayer_with_next-i18next.md +3 -7
- package/blog/hi/intlayer_with_next-intl.md +3 -3
- package/blog/hi/intlayer_with_react-i18next.md +3 -3
- package/blog/hi/intlayer_with_react-intl.md +3 -3
- package/blog/hi/intlayer_with_vue-i18n.md +3 -7
- package/blog/hi/is_i18next_outdated.md +317 -0
- package/blog/hi/is_next-intl_outdated.md +363 -0
- package/blog/hi/is_vue-i18n_outdated.md +338 -0
- package/blog/hi/list_i18n_technologies/build-tools/vite.md +177 -0
- package/blog/hi/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/hi/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/hi/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/hi/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/hi/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/hi/what_is_internationalization.md +0 -2
- package/blog/id/date_time_number_formatting_locales.md +216 -0
- package/blog/id/detecting_missing_translations.md +202 -0
- package/blog/id/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/id/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/id/i18n_meaning.md +0 -2
- package/blog/id/i18n_testing_strategies.md +179 -0
- package/blog/id/intlayer_with_i18next.md +3 -5
- package/blog/id/intlayer_with_next-i18next.md +3 -7
- package/blog/id/intlayer_with_next-intl.md +3 -3
- package/blog/id/intlayer_with_react-i18next.md +3 -3
- package/blog/id/intlayer_with_react-intl.md +3 -3
- package/blog/id/intlayer_with_vue-i18n.md +3 -7
- package/blog/id/is_i18next_outdated.md +317 -0
- package/blog/id/is_next-intl_outdated.md +363 -0
- package/blog/id/is_vue-i18n_outdated.md +338 -0
- package/blog/id/list_i18n_technologies/build-tools/vite.md +177 -0
- package/blog/id/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/id/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/id/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/id/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/id/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/id/what_is_internationalization.md +0 -2
- package/blog/it/date_time_number_formatting_locales.md +216 -0
- package/blog/it/detecting_missing_translations.md +202 -0
- package/blog/it/hreflang_guide_multilingual_seo.md +315 -0
- package/blog/it/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/it/i18n_meaning.md +0 -2
- package/blog/it/i18n_testing_strategies.md +179 -0
- package/blog/it/intlayer_with_i18next.md +3 -5
- package/blog/it/intlayer_with_next-i18next.md +3 -7
- package/blog/it/intlayer_with_next-intl.md +3 -3
- package/blog/it/intlayer_with_react-i18next.md +3 -3
- package/blog/it/intlayer_with_react-intl.md +3 -3
- package/blog/it/intlayer_with_vue-i18n.md +3 -7
- package/blog/it/is_i18next_outdated.md +315 -0
- package/blog/it/is_next-intl_outdated.md +363 -0
- package/blog/it/is_vue-i18n_outdated.md +338 -0
- package/blog/it/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/it/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/it/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/it/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/it/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/it/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/it/what_is_internationalization.md +0 -2
- package/blog/ja/date_time_number_formatting_locales.md +216 -0
- package/blog/ja/detecting_missing_translations.md +202 -0
- package/blog/ja/hreflang_guide_multilingual_seo.md +320 -0
- package/blog/ja/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/ja/i18n_meaning.md +0 -2
- package/blog/ja/i18n_testing_strategies.md +179 -0
- package/blog/ja/intlayer_with_i18next.md +3 -3
- package/blog/ja/intlayer_with_next-i18next.md +3 -3
- package/blog/ja/intlayer_with_next-intl.md +3 -3
- package/blog/ja/intlayer_with_react-i18next.md +3 -3
- package/blog/ja/intlayer_with_react-intl.md +3 -3
- package/blog/ja/intlayer_with_vue-i18n.md +3 -3
- package/blog/ja/is_i18next_outdated.md +315 -0
- package/blog/ja/is_next-intl_outdated.md +363 -0
- package/blog/ja/is_vue-i18n_outdated.md +338 -0
- package/blog/ja/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/ja/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/ja/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/ja/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/ja/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/ja/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/ja/what_is_internationalization.md +0 -2
- package/blog/ko/date_time_number_formatting_locales.md +216 -0
- package/blog/ko/detecting_missing_translations.md +202 -0
- package/blog/ko/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/ko/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/ko/i18n_meaning.md +0 -2
- package/blog/ko/i18n_testing_strategies.md +179 -0
- package/blog/ko/intlayer_with_i18next.md +3 -5
- package/blog/ko/intlayer_with_next-i18next.md +3 -7
- package/blog/ko/intlayer_with_next-intl.md +3 -3
- package/blog/ko/intlayer_with_react-i18next.md +3 -3
- package/blog/ko/intlayer_with_react-intl.md +3 -3
- package/blog/ko/intlayer_with_vue-i18n.md +3 -7
- package/blog/ko/is_i18next_outdated.md +317 -0
- package/blog/ko/is_next-intl_outdated.md +363 -0
- package/blog/ko/is_vue-i18n_outdated.md +338 -0
- package/blog/ko/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/ko/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/ko/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/ko/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/ko/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/ko/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/ko/what_is_internationalization.md +0 -2
- package/blog/pl/date_time_number_formatting_locales.md +216 -0
- package/blog/pl/detecting_missing_translations.md +202 -0
- package/blog/pl/hreflang_guide_multilingual_seo.md +316 -0
- package/blog/pl/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/pl/i18n_meaning.md +0 -2
- package/blog/pl/i18n_testing_strategies.md +179 -0
- package/blog/pl/intlayer_with_i18next.md +3 -3
- package/blog/pl/intlayer_with_next-i18next.md +3 -3
- package/blog/pl/intlayer_with_next-intl.md +3 -3
- package/blog/pl/intlayer_with_react-i18next.md +3 -3
- package/blog/pl/intlayer_with_react-intl.md +3 -3
- package/blog/pl/intlayer_with_vue-i18n.md +3 -3
- package/blog/pl/is_i18next_outdated.md +315 -0
- package/blog/pl/is_next-intl_outdated.md +363 -0
- package/blog/pl/is_vue-i18n_outdated.md +338 -0
- package/blog/pl/list_i18n_technologies/build-tools/vite.md +177 -0
- package/blog/pl/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/pl/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/pl/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/pl/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/pl/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/pl/what_is_internationalization.md +0 -2
- package/blog/pt/date_time_number_formatting_locales.md +216 -0
- package/blog/pt/detecting_missing_translations.md +202 -0
- package/blog/pt/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/pt/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/pt/i18n_meaning.md +0 -2
- package/blog/pt/i18n_testing_strategies.md +179 -0
- package/blog/pt/intlayer_with_i18next.md +3 -5
- package/blog/pt/intlayer_with_next-i18next.md +3 -7
- package/blog/pt/intlayer_with_next-intl.md +3 -3
- package/blog/pt/intlayer_with_react-i18next.md +3 -3
- package/blog/pt/intlayer_with_react-intl.md +3 -3
- package/blog/pt/intlayer_with_vue-i18n.md +3 -7
- package/blog/pt/is_i18next_outdated.md +315 -0
- package/blog/pt/is_next-intl_outdated.md +363 -0
- package/blog/pt/is_vue-i18n_outdated.md +338 -0
- package/blog/pt/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/pt/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/pt/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/pt/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/pt/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/pt/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/pt/what_is_internationalization.md +0 -2
- package/blog/ru/date_time_number_formatting_locales.md +216 -0
- package/blog/ru/detecting_missing_translations.md +202 -0
- package/blog/ru/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/ru/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/ru/i18n_meaning.md +0 -2
- package/blog/ru/i18n_testing_strategies.md +179 -0
- package/blog/ru/intlayer_with_i18next.md +3 -3
- package/blog/ru/intlayer_with_next-i18next.md +3 -3
- package/blog/ru/intlayer_with_next-intl.md +3 -3
- package/blog/ru/intlayer_with_react-i18next.md +3 -3
- package/blog/ru/intlayer_with_react-intl.md +3 -3
- package/blog/ru/intlayer_with_vue-i18n.md +3 -3
- package/blog/ru/is_i18next_outdated.md +315 -0
- package/blog/ru/is_next-intl_outdated.md +363 -0
- package/blog/ru/is_vue-i18n_outdated.md +338 -0
- package/blog/ru/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/ru/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/ru/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/ru/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/ru/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/ru/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/ru/what_is_internationalization.md +0 -2
- package/blog/tr/date_time_number_formatting_locales.md +216 -0
- package/blog/tr/detecting_missing_translations.md +202 -0
- package/blog/tr/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/tr/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/tr/i18n_meaning.md +0 -2
- package/blog/tr/i18n_testing_strategies.md +179 -0
- package/blog/tr/intlayer_with_i18next.md +3 -5
- package/blog/tr/intlayer_with_next-i18next.md +3 -7
- package/blog/tr/intlayer_with_next-intl.md +3 -3
- package/blog/tr/intlayer_with_react-i18next.md +3 -3
- package/blog/tr/intlayer_with_react-intl.md +3 -3
- package/blog/tr/intlayer_with_vue-i18n.md +3 -7
- package/blog/tr/is_i18next_outdated.md +315 -0
- package/blog/tr/is_next-intl_outdated.md +363 -0
- package/blog/tr/is_vue-i18n_outdated.md +338 -0
- package/blog/tr/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/tr/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/tr/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/tr/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/tr/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/tr/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/tr/what_is_internationalization.md +0 -2
- package/blog/uk/date_time_number_formatting_locales.md +216 -0
- package/blog/uk/detecting_missing_translations.md +202 -0
- package/blog/uk/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/uk/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/uk/i18n_meaning.md +0 -2
- package/blog/uk/i18n_testing_strategies.md +179 -0
- package/blog/uk/intlayer_with_i18next.md +3 -5
- package/blog/uk/intlayer_with_next-i18next.md +3 -5
- package/blog/uk/intlayer_with_next-intl.md +3 -5
- package/blog/uk/intlayer_with_react-i18next.md +3 -3
- package/blog/uk/intlayer_with_react-intl.md +3 -5
- package/blog/uk/intlayer_with_vue-i18n.md +3 -5
- package/blog/uk/is_i18next_outdated.md +315 -0
- package/blog/uk/is_next-intl_outdated.md +363 -0
- package/blog/uk/is_vue-i18n_outdated.md +338 -0
- package/blog/uk/list_i18n_technologies/build-tools/vite.md +177 -0
- package/blog/uk/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/uk/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/uk/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/uk/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/uk/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/uk/what_is_internationalization.md +0 -2
- package/blog/vi/date_time_number_formatting_locales.md +216 -0
- package/blog/vi/detecting_missing_translations.md +202 -0
- package/blog/vi/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/vi/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/vi/i18n_meaning.md +0 -2
- package/blog/vi/i18n_testing_strategies.md +179 -0
- package/blog/vi/intlayer_with_i18next.md +3 -5
- package/blog/vi/intlayer_with_next-i18next.md +3 -7
- package/blog/vi/intlayer_with_next-intl.md +3 -3
- package/blog/vi/intlayer_with_react-i18next.md +3 -3
- package/blog/vi/intlayer_with_react-intl.md +3 -3
- package/blog/vi/intlayer_with_vue-i18n.md +3 -7
- package/blog/vi/is_i18next_outdated.md +317 -0
- package/blog/vi/is_next-intl_outdated.md +363 -0
- package/blog/vi/is_vue-i18n_outdated.md +338 -0
- package/blog/vi/list_i18n_technologies/build-tools/vite.md +177 -0
- package/blog/vi/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/vi/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/vi/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/vi/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/vi/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/vi/what_is_internationalization.md +0 -2
- package/blog/zh/date_time_number_formatting_locales.md +216 -0
- package/blog/zh/detecting_missing_translations.md +202 -0
- package/blog/zh/hreflang_guide_multilingual_seo.md +314 -0
- package/blog/zh/i18n_in_ci_cd_pipelines.md +247 -0
- package/blog/zh/i18n_meaning.md +0 -2
- package/blog/zh/i18n_testing_strategies.md +179 -0
- package/blog/zh/intlayer_with_i18next.md +3 -5
- package/blog/zh/intlayer_with_next-i18next.md +3 -5
- package/blog/zh/intlayer_with_next-intl.md +3 -5
- package/blog/zh/intlayer_with_react-i18next.md +3 -3
- package/blog/zh/intlayer_with_react-intl.md +3 -5
- package/blog/zh/intlayer_with_vue-i18n.md +3 -5
- package/blog/zh/is_i18next_outdated.md +317 -0
- package/blog/zh/is_next-intl_outdated.md +363 -0
- package/blog/zh/is_vue-i18n_outdated.md +338 -0
- package/blog/zh/list_i18n_technologies/build-tools/vite.md +179 -0
- package/blog/zh/list_i18n_technologies/frameworks/angular.md +0 -2
- package/blog/zh/list_i18n_technologies/frameworks/react-native.md +0 -2
- package/blog/zh/list_i18n_technologies/frameworks/react.md +0 -2
- package/blog/zh/list_i18n_technologies/frameworks/svelte.md +0 -2
- package/blog/zh/list_i18n_technologies/frameworks/vue.md +0 -2
- package/blog/zh/what_is_internationalization.md +0 -2
- package/dist/cjs/common.cjs +29 -6
- package/dist/cjs/common.cjs.map +1 -1
- package/dist/cjs/generated/blog.entry.cjs +340 -0
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +20 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/common.mjs +29 -6
- package/dist/esm/common.mjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +340 -0
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +20 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/generated/blog.entry.d.ts +17 -0
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +1 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/analytics.md +458 -12
- package/docs/ar/bundle_optimization.md +186 -186
- package/docs/ar/configuration.md +98 -0
- package/docs/ar/dictionary/content_file.md +4 -4
- package/docs/ar/dictionary/html.md +117 -1
- package/docs/ar/dictionary/markdown.md +18 -1
- package/docs/ar/dictionary/plurial.md +5 -2
- package/docs/ar/how_works_intlayer.md +92 -0
- package/docs/ar/interest_of_intlayer.md +106 -9
- package/docs/ar/intlayer_CMS.md +92 -0
- package/docs/ar/intlayer_visual_editor.md +87 -1
- package/docs/ar/intlayer_with_adonisjs.md +124 -3
- package/docs/ar/intlayer_with_analog.md +119 -11
- package/docs/ar/intlayer_with_angular_19.md +118 -11
- package/docs/ar/intlayer_with_angular_21.md +112 -11
- package/docs/ar/intlayer_with_astro.md +120 -23
- package/docs/ar/intlayer_with_astro_lit.md +121 -13
- package/docs/ar/intlayer_with_astro_preact.md +121 -13
- package/docs/ar/intlayer_with_astro_react.md +121 -13
- package/docs/ar/intlayer_with_astro_solid.md +121 -13
- package/docs/ar/intlayer_with_astro_svelte.md +121 -13
- package/docs/ar/intlayer_with_astro_vanilla.md +115 -13
- package/docs/ar/intlayer_with_astro_vue.md +121 -13
- package/docs/ar/intlayer_with_create_react_app.md +108 -3
- package/docs/ar/intlayer_with_elysia.md +125 -4
- package/docs/ar/intlayer_with_express.md +117 -3
- package/docs/ar/intlayer_with_fastify.md +119 -4
- package/docs/ar/intlayer_with_hono.md +117 -3
- package/docs/ar/intlayer_with_htmx.md +771 -0
- package/docs/ar/intlayer_with_lynx+react.md +10 -17
- package/docs/ar/intlayer_with_nestjs.md +118 -3
- package/docs/ar/intlayer_with_next-i18next.md +3 -3
- package/docs/ar/intlayer_with_nextjs_14.md +147 -123
- package/docs/ar/intlayer_with_nextjs_15.md +129 -54
- package/docs/ar/intlayer_with_nextjs_16.md +130 -52
- package/docs/ar/intlayer_with_nextjs_compiler.md +125 -16
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +124 -12
- package/docs/ar/intlayer_with_nextjs_page_router.md +142 -110
- package/docs/ar/intlayer_with_nuxt.md +113 -11
- package/docs/ar/intlayer_with_react_native+expo.md +105 -10
- package/docs/ar/intlayer_with_react_router_v7.md +122 -13
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +125 -25
- package/docs/ar/intlayer_with_solid_start.md +118 -4
- package/docs/ar/intlayer_with_storybook.md +7 -20
- package/docs/ar/intlayer_with_svelte_kit.md +110 -20
- package/docs/ar/intlayer_with_tanstack+solid.md +127 -25
- package/docs/ar/intlayer_with_tanstack.md +137 -46
- package/docs/ar/intlayer_with_vanilla.md +117 -9
- package/docs/ar/intlayer_with_vite+lit.md +121 -11
- package/docs/ar/intlayer_with_vite+preact.md +151 -43
- package/docs/ar/intlayer_with_vite+react.md +111 -23
- package/docs/ar/intlayer_with_vite+react_compiler.md +109 -4
- package/docs/ar/intlayer_with_vite+solid.md +117 -8
- package/docs/ar/intlayer_with_vite+svelte.md +122 -20
- package/docs/ar/intlayer_with_vite+vanilla.md +128 -11
- package/docs/ar/intlayer_with_vite+vue.md +108 -12
- package/docs/ar/introduction.md +104 -1
- package/docs/ar/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/ar/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/ar/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/ar/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/ar/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/ar/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/bn/bundle_optimization.md +186 -186
- package/docs/bn/intlayer_with_angular_21.md +3 -3
- package/docs/bn/intlayer_with_fastify.md +4 -4
- package/docs/bn/intlayer_with_hono.md +3 -3
- package/docs/bn/intlayer_with_vite+lit.md +3 -3
- package/docs/bn/intlayer_with_vite+vanilla.md +3 -3
- package/docs/bn/introduction.md +0 -1
- package/docs/cs/bundle_optimization.md +186 -186
- package/docs/cs/interest_of_intlayer.md +0 -1
- package/docs/cs/intlayer_with_angular_21.md +3 -3
- package/docs/cs/intlayer_with_fastify.md +4 -4
- package/docs/cs/intlayer_with_hono.md +3 -3
- package/docs/cs/intlayer_with_storybook.md +0 -12
- package/docs/cs/intlayer_with_vanilla.md +2 -1
- package/docs/cs/intlayer_with_vite+lit.md +3 -3
- package/docs/cs/intlayer_with_vite+vanilla.md +3 -3
- package/docs/cs/introduction.md +0 -1
- package/docs/de/analytics.md +458 -12
- package/docs/de/bundle_optimization.md +186 -186
- package/docs/de/configuration.md +99 -1
- package/docs/de/dictionary/content_file.md +4 -4
- package/docs/de/dictionary/markdown.md +3 -0
- package/docs/de/dictionary/plurial.md +6 -3
- package/docs/de/how_works_intlayer.md +93 -1
- package/docs/de/interest_of_intlayer.md +97 -2
- package/docs/de/intlayer_CMS.md +93 -1
- package/docs/de/intlayer_visual_editor.md +88 -2
- package/docs/de/intlayer_with_adonisjs.md +124 -4
- package/docs/de/intlayer_with_analog.md +114 -5
- package/docs/de/intlayer_with_angular_19.md +112 -5
- package/docs/de/intlayer_with_angular_21.md +106 -5
- package/docs/de/intlayer_with_astro.md +114 -17
- package/docs/de/intlayer_with_astro_lit.md +115 -7
- package/docs/de/intlayer_with_astro_preact.md +115 -7
- package/docs/de/intlayer_with_astro_react.md +115 -7
- package/docs/de/intlayer_with_astro_solid.md +115 -7
- package/docs/de/intlayer_with_astro_svelte.md +115 -7
- package/docs/de/intlayer_with_astro_vanilla.md +109 -7
- package/docs/de/intlayer_with_astro_vue.md +115 -7
- package/docs/de/intlayer_with_create_react_app.md +110 -5
- package/docs/de/intlayer_with_elysia.md +125 -5
- package/docs/de/intlayer_with_express.md +118 -4
- package/docs/de/intlayer_with_fastify.md +119 -5
- package/docs/de/intlayer_with_hono.md +118 -4
- package/docs/de/intlayer_with_htmx.md +770 -0
- package/docs/de/intlayer_with_lynx+react.md +3 -10
- package/docs/de/intlayer_with_nestjs.md +118 -4
- package/docs/de/intlayer_with_next-i18next.md +3 -3
- package/docs/de/intlayer_with_nextjs_14.md +141 -113
- package/docs/de/intlayer_with_nextjs_15.md +123 -48
- package/docs/de/intlayer_with_nextjs_16.md +150 -54
- package/docs/de/intlayer_with_nextjs_compiler.md +116 -6
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +118 -6
- package/docs/de/intlayer_with_nextjs_page_router.md +124 -98
- package/docs/de/intlayer_with_nuxt.md +107 -5
- package/docs/de/intlayer_with_react_native+expo.md +106 -11
- package/docs/de/intlayer_with_react_router_v7.md +116 -7
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +111 -4
- package/docs/de/intlayer_with_solid_start.md +120 -5
- package/docs/de/intlayer_with_storybook.md +0 -13
- package/docs/de/intlayer_with_svelte_kit.md +102 -5
- package/docs/de/intlayer_with_tanstack+solid.md +122 -19
- package/docs/de/intlayer_with_tanstack.md +234 -155
- package/docs/de/intlayer_with_vanilla.md +111 -3
- package/docs/de/intlayer_with_vite+lit.md +116 -5
- package/docs/de/intlayer_with_vite+preact.md +173 -36
- package/docs/de/intlayer_with_vite+react.md +105 -9
- package/docs/de/intlayer_with_vite+react_compiler.md +110 -5
- package/docs/de/intlayer_with_vite+solid.md +116 -5
- package/docs/de/intlayer_with_vite+svelte.md +117 -14
- package/docs/de/intlayer_with_vite+vanilla.md +122 -5
- package/docs/de/intlayer_with_vite+vue.md +101 -5
- package/docs/de/introduction.md +105 -2
- package/docs/de/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/de/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/de/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/de/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/de/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/de/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/en/bundle_optimization.md +186 -186
- package/docs/en/configuration.md +99 -1
- package/docs/en/dictionary/content_file.md +4 -4
- package/docs/en/how_works_intlayer.md +93 -1
- package/docs/en/interest_of_intlayer.md +97 -2
- package/docs/en/intlayer_CMS.md +93 -1
- package/docs/en/intlayer_visual_editor.md +88 -2
- package/docs/en/intlayer_with_adonisjs.md +124 -4
- package/docs/en/intlayer_with_analog.md +114 -5
- package/docs/en/intlayer_with_angular_19.md +112 -5
- package/docs/en/intlayer_with_angular_21.md +106 -5
- package/docs/en/intlayer_with_astro.md +110 -7
- package/docs/en/intlayer_with_astro_lit.md +115 -7
- package/docs/en/intlayer_with_astro_preact.md +115 -7
- package/docs/en/intlayer_with_astro_react.md +115 -7
- package/docs/en/intlayer_with_astro_solid.md +115 -7
- package/docs/en/intlayer_with_astro_svelte.md +115 -7
- package/docs/en/intlayer_with_astro_vanilla.md +109 -7
- package/docs/en/intlayer_with_astro_vue.md +115 -7
- package/docs/en/intlayer_with_create_react_app.md +108 -5
- package/docs/en/intlayer_with_elysia.md +125 -5
- package/docs/en/intlayer_with_express.md +118 -4
- package/docs/en/intlayer_with_fastify.md +119 -5
- package/docs/en/intlayer_with_hono.md +118 -4
- package/docs/en/intlayer_with_htmx.md +754 -0
- package/docs/en/intlayer_with_lynx+react.md +3 -10
- package/docs/en/intlayer_with_nestjs.md +118 -4
- package/docs/en/intlayer_with_next-i18next.md +3 -3
- package/docs/en/intlayer_with_nextjs_14.md +123 -46
- package/docs/en/intlayer_with_nextjs_15.md +123 -47
- package/docs/en/intlayer_with_nextjs_16.md +124 -46
- package/docs/en/intlayer_with_nextjs_compiler.md +114 -5
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +118 -6
- package/docs/en/intlayer_with_nextjs_page_router.md +113 -98
- package/docs/en/intlayer_with_nuxt.md +107 -5
- package/docs/en/intlayer_with_react_native+expo.md +106 -11
- package/docs/en/intlayer_with_react_router_v7.md +116 -7
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +112 -5
- package/docs/en/intlayer_with_solid_start.md +120 -5
- package/docs/en/intlayer_with_storybook.md +0 -13
- package/docs/en/intlayer_with_svelte_kit.md +102 -5
- package/docs/en/intlayer_with_tanstack+solid.md +123 -19
- package/docs/en/intlayer_with_tanstack.md +117 -19
- package/docs/en/intlayer_with_vanilla.md +111 -3
- package/docs/en/intlayer_with_vite+lit.md +116 -5
- package/docs/en/intlayer_with_vite+preact.md +146 -37
- package/docs/en/intlayer_with_vite+react.md +104 -7
- package/docs/en/intlayer_with_vite+react_compiler.md +110 -5
- package/docs/en/intlayer_with_vite+solid.md +116 -5
- package/docs/en/intlayer_with_vite+svelte.md +117 -14
- package/docs/en/intlayer_with_vite+vanilla.md +122 -5
- package/docs/en/intlayer_with_vite+vue.md +101 -5
- package/docs/en/introduction.md +105 -2
- package/docs/en/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/en/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/en/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/en/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/en/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/en/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/en-GB/analytics.md +527 -58
- package/docs/en-GB/bundle_optimization.md +186 -186
- package/docs/en-GB/configuration.md +99 -1
- package/docs/en-GB/dictionary/content_file.md +4 -4
- package/docs/en-GB/dictionary/html.md +117 -1
- package/docs/en-GB/dictionary/markdown.md +18 -1
- package/docs/en-GB/dictionary/plurial.md +5 -2
- package/docs/en-GB/dictionary/translation.md +1 -1
- package/docs/en-GB/how_works_intlayer.md +93 -1
- package/docs/en-GB/interest_of_intlayer.md +97 -2
- package/docs/en-GB/intlayer_CMS.md +93 -1
- package/docs/en-GB/intlayer_visual_editor.md +88 -2
- package/docs/en-GB/intlayer_with_adonisjs.md +124 -4
- package/docs/en-GB/intlayer_with_analog.md +114 -5
- package/docs/en-GB/intlayer_with_angular_19.md +112 -5
- package/docs/en-GB/intlayer_with_angular_21.md +106 -5
- package/docs/en-GB/intlayer_with_astro.md +114 -17
- package/docs/en-GB/intlayer_with_astro_lit.md +115 -7
- package/docs/en-GB/intlayer_with_astro_preact.md +115 -7
- package/docs/en-GB/intlayer_with_astro_react.md +115 -7
- package/docs/en-GB/intlayer_with_astro_solid.md +115 -7
- package/docs/en-GB/intlayer_with_astro_svelte.md +115 -7
- package/docs/en-GB/intlayer_with_astro_vanilla.md +109 -7
- package/docs/en-GB/intlayer_with_astro_vue.md +115 -7
- package/docs/en-GB/intlayer_with_create_react_app.md +108 -5
- package/docs/en-GB/intlayer_with_elysia.md +125 -5
- package/docs/en-GB/intlayer_with_express.md +118 -4
- package/docs/en-GB/intlayer_with_fastify.md +119 -5
- package/docs/en-GB/intlayer_with_hono.md +118 -4
- package/docs/en-GB/intlayer_with_htmx.md +757 -0
- package/docs/en-GB/intlayer_with_lynx+react.md +3 -10
- package/docs/en-GB/intlayer_with_nestjs.md +118 -4
- package/docs/en-GB/intlayer_with_next-i18next.md +3 -3
- package/docs/en-GB/intlayer_with_nextjs_14.md +123 -47
- package/docs/en-GB/intlayer_with_nextjs_15.md +126 -48
- package/docs/en-GB/intlayer_with_nextjs_16.md +124 -47
- package/docs/en-GB/intlayer_with_nextjs_compiler.md +124 -15
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +118 -6
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +125 -140
- package/docs/en-GB/intlayer_with_nuxt.md +107 -5
- package/docs/en-GB/intlayer_with_react_native+expo.md +106 -11
- package/docs/en-GB/intlayer_with_react_router_v7.md +116 -7
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +114 -7
- package/docs/en-GB/intlayer_with_solid_start.md +120 -5
- package/docs/en-GB/intlayer_with_storybook.md +0 -13
- package/docs/en-GB/intlayer_with_svelte_kit.md +102 -5
- package/docs/en-GB/intlayer_with_tanstack+solid.md +123 -19
- package/docs/en-GB/intlayer_with_tanstack.md +258 -170
- package/docs/en-GB/intlayer_with_vanilla.md +111 -3
- package/docs/en-GB/intlayer_with_vite+lit.md +116 -5
- package/docs/en-GB/intlayer_with_vite+preact.md +182 -35
- package/docs/en-GB/intlayer_with_vite+react.md +104 -16
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +110 -5
- package/docs/en-GB/intlayer_with_vite+solid.md +121 -5
- package/docs/en-GB/intlayer_with_vite+svelte.md +117 -23
- package/docs/en-GB/intlayer_with_vite+vanilla.md +122 -5
- package/docs/en-GB/intlayer_with_vite+vue.md +105 -11
- package/docs/en-GB/introduction.md +105 -2
- package/docs/en-GB/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/en-GB/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/en-GB/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/en-GB/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/en-GB/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/en-GB/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/en-GB/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/es/analytics.md +458 -12
- package/docs/es/bundle_optimization.md +186 -186
- package/docs/es/configuration.md +99 -1
- package/docs/es/dictionary/content_file.md +4 -4
- package/docs/es/dictionary/markdown.md +18 -1
- package/docs/es/dictionary/plurial.md +5 -2
- package/docs/es/how_works_intlayer.md +93 -1
- package/docs/es/interest_of_intlayer.md +97 -2
- package/docs/es/intlayer_CMS.md +93 -1
- package/docs/es/intlayer_visual_editor.md +88 -2
- package/docs/es/intlayer_with_adonisjs.md +124 -4
- package/docs/es/intlayer_with_analog.md +114 -5
- package/docs/es/intlayer_with_angular_19.md +112 -5
- package/docs/es/intlayer_with_angular_21.md +106 -5
- package/docs/es/intlayer_with_astro.md +114 -17
- package/docs/es/intlayer_with_astro_lit.md +115 -7
- package/docs/es/intlayer_with_astro_preact.md +115 -7
- package/docs/es/intlayer_with_astro_react.md +115 -7
- package/docs/es/intlayer_with_astro_solid.md +115 -7
- package/docs/es/intlayer_with_astro_svelte.md +115 -7
- package/docs/es/intlayer_with_astro_vanilla.md +109 -7
- package/docs/es/intlayer_with_astro_vue.md +115 -7
- package/docs/es/intlayer_with_create_react_app.md +110 -5
- package/docs/es/intlayer_with_elysia.md +125 -5
- package/docs/es/intlayer_with_express.md +118 -4
- package/docs/es/intlayer_with_fastify.md +119 -5
- package/docs/es/intlayer_with_hono.md +118 -4
- package/docs/es/intlayer_with_htmx.md +763 -0
- package/docs/es/intlayer_with_lynx+react.md +3 -10
- package/docs/es/intlayer_with_nestjs.md +118 -4
- package/docs/es/intlayer_with_next-i18next.md +3 -3
- package/docs/es/intlayer_with_nextjs_14.md +123 -47
- package/docs/es/intlayer_with_nextjs_15.md +126 -48
- package/docs/es/intlayer_with_nextjs_16.md +145 -55
- package/docs/es/intlayer_with_nextjs_compiler.md +125 -15
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +118 -6
- package/docs/es/intlayer_with_nextjs_page_router.md +113 -98
- package/docs/es/intlayer_with_nuxt.md +107 -5
- package/docs/es/intlayer_with_react_native+expo.md +106 -11
- package/docs/es/intlayer_with_react_router_v7.md +116 -7
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +111 -4
- package/docs/es/intlayer_with_solid_start.md +120 -5
- package/docs/es/intlayer_with_storybook.md +0 -13
- package/docs/es/intlayer_with_svelte_kit.md +102 -5
- package/docs/es/intlayer_with_tanstack+solid.md +122 -19
- package/docs/es/intlayer_with_tanstack.md +255 -150
- package/docs/es/intlayer_with_vanilla.md +111 -3
- package/docs/es/intlayer_with_vite+lit.md +116 -5
- package/docs/es/intlayer_with_vite+preact.md +146 -37
- package/docs/es/intlayer_with_vite+react.md +104 -7
- package/docs/es/intlayer_with_vite+react_compiler.md +110 -5
- package/docs/es/intlayer_with_vite+solid.md +117 -5
- package/docs/es/intlayer_with_vite+svelte.md +117 -14
- package/docs/es/intlayer_with_vite+vanilla.md +122 -5
- package/docs/es/intlayer_with_vite+vue.md +102 -6
- package/docs/es/introduction.md +105 -2
- package/docs/es/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/es/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/es/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/es/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/es/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/es/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/fr/analytics.md +437 -13
- package/docs/fr/bundle_optimization.md +186 -186
- package/docs/fr/configuration.md +99 -1
- package/docs/fr/dictionary/content_file.md +4 -4
- package/docs/fr/dictionary/markdown.md +18 -1
- package/docs/fr/dictionary/plurial.md +5 -2
- package/docs/fr/how_works_intlayer.md +93 -1
- package/docs/fr/interest_of_intlayer.md +97 -2
- package/docs/fr/intlayer_CMS.md +93 -1
- package/docs/fr/intlayer_visual_editor.md +88 -2
- package/docs/fr/intlayer_with_adonisjs.md +124 -4
- package/docs/fr/intlayer_with_analog.md +114 -5
- package/docs/fr/intlayer_with_angular_19.md +112 -5
- package/docs/fr/intlayer_with_angular_21.md +106 -5
- package/docs/fr/intlayer_with_astro.md +114 -17
- package/docs/fr/intlayer_with_astro_lit.md +115 -7
- package/docs/fr/intlayer_with_astro_preact.md +115 -7
- package/docs/fr/intlayer_with_astro_react.md +115 -7
- package/docs/fr/intlayer_with_astro_solid.md +115 -7
- package/docs/fr/intlayer_with_astro_svelte.md +115 -7
- package/docs/fr/intlayer_with_astro_vanilla.md +109 -7
- package/docs/fr/intlayer_with_astro_vue.md +115 -7
- package/docs/fr/intlayer_with_create_react_app.md +110 -5
- package/docs/fr/intlayer_with_elysia.md +125 -5
- package/docs/fr/intlayer_with_express.md +118 -4
- package/docs/fr/intlayer_with_fastify.md +119 -5
- package/docs/fr/intlayer_with_hono.md +118 -4
- package/docs/fr/intlayer_with_htmx.md +756 -0
- package/docs/fr/intlayer_with_lynx+react.md +3 -10
- package/docs/fr/intlayer_with_nestjs.md +118 -4
- package/docs/fr/intlayer_with_next-i18next.md +3 -3
- package/docs/fr/intlayer_with_nextjs_14.md +141 -113
- package/docs/fr/intlayer_with_nextjs_15.md +127 -49
- package/docs/fr/intlayer_with_nextjs_16.md +124 -46
- package/docs/fr/intlayer_with_nextjs_compiler.md +125 -15
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +118 -6
- package/docs/fr/intlayer_with_nextjs_page_router.md +113 -98
- package/docs/fr/intlayer_with_nuxt.md +107 -5
- package/docs/fr/intlayer_with_react_native+expo.md +106 -11
- package/docs/fr/intlayer_with_react_router_v7.md +120 -13
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +111 -4
- package/docs/fr/intlayer_with_solid_start.md +120 -5
- package/docs/fr/intlayer_with_storybook.md +0 -13
- package/docs/fr/intlayer_with_svelte_kit.md +102 -5
- package/docs/fr/intlayer_with_tanstack+solid.md +122 -19
- package/docs/fr/intlayer_with_tanstack.md +238 -131
- package/docs/fr/intlayer_with_vanilla.md +111 -3
- package/docs/fr/intlayer_with_vite+lit.md +116 -5
- package/docs/fr/intlayer_with_vite+preact.md +146 -37
- package/docs/fr/intlayer_with_vite+react.md +104 -7
- package/docs/fr/intlayer_with_vite+react_compiler.md +110 -5
- package/docs/fr/intlayer_with_vite+solid.md +117 -5
- package/docs/fr/intlayer_with_vite+svelte.md +117 -14
- package/docs/fr/intlayer_with_vite+vanilla.md +122 -5
- package/docs/fr/intlayer_with_vite+vue.md +102 -6
- package/docs/fr/introduction.md +105 -2
- package/docs/fr/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/fr/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/fr/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/fr/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/fr/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/fr/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/hi/analytics.md +488 -21
- package/docs/hi/bundle_optimization.md +186 -186
- package/docs/hi/configuration.md +98 -0
- package/docs/hi/dictionary/content_file.md +4 -4
- package/docs/hi/dictionary/html.md +100 -3
- package/docs/hi/dictionary/markdown.md +3 -0
- package/docs/hi/dictionary/plurial.md +6 -3
- package/docs/hi/how_works_intlayer.md +92 -0
- package/docs/hi/interest_of_intlayer.md +106 -9
- package/docs/hi/intlayer_CMS.md +92 -0
- package/docs/hi/intlayer_visual_editor.md +87 -1
- package/docs/hi/intlayer_with_adonisjs.md +124 -3
- package/docs/hi/intlayer_with_analog.md +119 -11
- package/docs/hi/intlayer_with_angular_19.md +118 -11
- package/docs/hi/intlayer_with_angular_21.md +112 -11
- package/docs/hi/intlayer_with_astro.md +120 -23
- package/docs/hi/intlayer_with_astro_lit.md +121 -13
- package/docs/hi/intlayer_with_astro_preact.md +121 -13
- package/docs/hi/intlayer_with_astro_react.md +121 -13
- package/docs/hi/intlayer_with_astro_solid.md +121 -13
- package/docs/hi/intlayer_with_astro_svelte.md +121 -13
- package/docs/hi/intlayer_with_astro_vanilla.md +115 -13
- package/docs/hi/intlayer_with_astro_vue.md +121 -13
- package/docs/hi/intlayer_with_create_react_app.md +109 -4
- package/docs/hi/intlayer_with_elysia.md +125 -4
- package/docs/hi/intlayer_with_express.md +117 -3
- package/docs/hi/intlayer_with_fastify.md +119 -4
- package/docs/hi/intlayer_with_hono.md +117 -3
- package/docs/hi/intlayer_with_htmx.md +771 -0
- package/docs/hi/intlayer_with_lynx+react.md +10 -17
- package/docs/hi/intlayer_with_nestjs.md +118 -3
- package/docs/hi/intlayer_with_next-i18next.md +3 -3
- package/docs/hi/intlayer_with_nextjs_14.md +147 -123
- package/docs/hi/intlayer_with_nextjs_15.md +132 -54
- package/docs/hi/intlayer_with_nextjs_16.md +132 -53
- package/docs/hi/intlayer_with_nextjs_compiler.md +124 -15
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +124 -12
- package/docs/hi/intlayer_with_nextjs_page_router.md +126 -99
- package/docs/hi/intlayer_with_nuxt.md +113 -11
- package/docs/hi/intlayer_with_react_native+expo.md +105 -10
- package/docs/hi/intlayer_with_react_router_v7.md +122 -13
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +125 -25
- package/docs/hi/intlayer_with_solid_start.md +118 -4
- package/docs/hi/intlayer_with_storybook.md +7 -20
- package/docs/hi/intlayer_with_svelte_kit.md +108 -11
- package/docs/hi/intlayer_with_tanstack+solid.md +127 -25
- package/docs/hi/intlayer_with_tanstack.md +272 -158
- package/docs/hi/intlayer_with_vanilla.md +117 -9
- package/docs/hi/intlayer_with_vite+lit.md +121 -11
- package/docs/hi/intlayer_with_vite+preact.md +173 -44
- package/docs/hi/intlayer_with_vite+react.md +111 -23
- package/docs/hi/intlayer_with_vite+react_compiler.md +109 -4
- package/docs/hi/intlayer_with_vite+solid.md +121 -11
- package/docs/hi/intlayer_with_vite+svelte.md +124 -21
- package/docs/hi/intlayer_with_vite+vanilla.md +128 -11
- package/docs/hi/intlayer_with_vite+vue.md +107 -11
- package/docs/hi/introduction.md +104 -1
- package/docs/hi/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/hi/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/hi/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/hi/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/hi/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/hi/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/hi/packages/intlayer/index.md +3 -3
- package/docs/hi/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/id/analytics.md +488 -21
- package/docs/id/bundle_optimization.md +186 -186
- package/docs/id/configuration.md +98 -0
- package/docs/id/dictionary/content_file.md +4 -4
- package/docs/id/dictionary/markdown.md +3 -0
- package/docs/id/dictionary/plurial.md +5 -2
- package/docs/id/how_works_intlayer.md +92 -0
- package/docs/id/interest_of_intlayer.md +96 -1
- package/docs/id/intlayer_CMS.md +92 -0
- package/docs/id/intlayer_visual_editor.md +87 -1
- package/docs/id/intlayer_with_adonisjs.md +124 -3
- package/docs/id/intlayer_with_analog.md +112 -4
- package/docs/id/intlayer_with_angular_19.md +111 -4
- package/docs/id/intlayer_with_angular_21.md +105 -4
- package/docs/id/intlayer_with_astro.md +113 -16
- package/docs/id/intlayer_with_astro_lit.md +114 -6
- package/docs/id/intlayer_with_astro_preact.md +114 -6
- package/docs/id/intlayer_with_astro_react.md +114 -6
- package/docs/id/intlayer_with_astro_solid.md +114 -6
- package/docs/id/intlayer_with_astro_svelte.md +114 -6
- package/docs/id/intlayer_with_astro_vanilla.md +108 -6
- package/docs/id/intlayer_with_astro_vue.md +114 -6
- package/docs/id/intlayer_with_create_react_app.md +109 -4
- package/docs/id/intlayer_with_elysia.md +125 -4
- package/docs/id/intlayer_with_express.md +117 -3
- package/docs/id/intlayer_with_fastify.md +119 -4
- package/docs/id/intlayer_with_hono.md +117 -3
- package/docs/id/intlayer_with_htmx.md +761 -0
- package/docs/id/intlayer_with_lynx+react.md +3 -10
- package/docs/id/intlayer_with_nestjs.md +118 -3
- package/docs/id/intlayer_with_next-i18next.md +3 -3
- package/docs/id/intlayer_with_nextjs_14.md +135 -69
- package/docs/id/intlayer_with_nextjs_15.md +122 -46
- package/docs/id/intlayer_with_nextjs_16.md +125 -45
- package/docs/id/intlayer_with_nextjs_compiler.md +125 -17
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +117 -5
- package/docs/id/intlayer_with_nextjs_page_router.md +114 -97
- package/docs/id/intlayer_with_nuxt.md +106 -4
- package/docs/id/intlayer_with_react_native+expo.md +105 -10
- package/docs/id/intlayer_with_react_router_v7.md +115 -6
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +116 -16
- package/docs/id/intlayer_with_solid_start.md +118 -4
- package/docs/id/intlayer_with_storybook.md +0 -13
- package/docs/id/intlayer_with_svelte_kit.md +101 -4
- package/docs/id/intlayer_with_tanstack+solid.md +120 -18
- package/docs/id/intlayer_with_tanstack.md +232 -132
- package/docs/id/intlayer_with_vanilla.md +110 -2
- package/docs/id/intlayer_with_vite+lit.md +114 -4
- package/docs/id/intlayer_with_vite+preact.md +144 -36
- package/docs/id/intlayer_with_vite+react.md +104 -16
- package/docs/id/intlayer_with_vite+react_compiler.md +109 -4
- package/docs/id/intlayer_with_vite+solid.md +115 -4
- package/docs/id/intlayer_with_vite+svelte.md +115 -13
- package/docs/id/intlayer_with_vite+vanilla.md +121 -4
- package/docs/id/intlayer_with_vite+vue.md +100 -4
- package/docs/id/introduction.md +104 -1
- package/docs/id/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/id/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/id/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/id/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/id/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/id/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/id/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/it/analytics.md +488 -21
- package/docs/it/bundle_optimization.md +186 -186
- package/docs/it/configuration.md +99 -1
- package/docs/it/dictionary/content_file.md +4 -4
- package/docs/it/dictionary/markdown.md +18 -1
- package/docs/it/dictionary/plurial.md +5 -2
- package/docs/it/how_works_intlayer.md +93 -1
- package/docs/it/interest_of_intlayer.md +97 -2
- package/docs/it/intlayer_CMS.md +93 -1
- package/docs/it/intlayer_visual_editor.md +88 -2
- package/docs/it/intlayer_with_adonisjs.md +124 -4
- package/docs/it/intlayer_with_analog.md +114 -5
- package/docs/it/intlayer_with_angular_19.md +112 -5
- package/docs/it/intlayer_with_angular_21.md +106 -5
- package/docs/it/intlayer_with_astro.md +114 -17
- package/docs/it/intlayer_with_astro_lit.md +115 -7
- package/docs/it/intlayer_with_astro_preact.md +115 -7
- package/docs/it/intlayer_with_astro_react.md +115 -7
- package/docs/it/intlayer_with_astro_solid.md +115 -7
- package/docs/it/intlayer_with_astro_svelte.md +115 -7
- package/docs/it/intlayer_with_astro_vanilla.md +109 -7
- package/docs/it/intlayer_with_astro_vue.md +115 -7
- package/docs/it/intlayer_with_create_react_app.md +110 -5
- package/docs/it/intlayer_with_elysia.md +125 -5
- package/docs/it/intlayer_with_express.md +118 -4
- package/docs/it/intlayer_with_fastify.md +119 -5
- package/docs/it/intlayer_with_hono.md +118 -4
- package/docs/it/intlayer_with_htmx.md +761 -0
- package/docs/it/intlayer_with_lynx+react.md +3 -10
- package/docs/it/intlayer_with_nestjs.md +118 -4
- package/docs/it/intlayer_with_next-i18next.md +3 -3
- package/docs/it/intlayer_with_nextjs_14.md +141 -118
- package/docs/it/intlayer_with_nextjs_15.md +127 -50
- package/docs/it/intlayer_with_nextjs_16.md +126 -47
- package/docs/it/intlayer_with_nextjs_compiler.md +126 -17
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +118 -6
- package/docs/it/intlayer_with_nextjs_page_router.md +122 -98
- package/docs/it/intlayer_with_nuxt.md +107 -5
- package/docs/it/intlayer_with_react_native+expo.md +106 -11
- package/docs/it/intlayer_with_react_router_v7.md +116 -7
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +111 -4
- package/docs/it/intlayer_with_solid_start.md +120 -5
- package/docs/it/intlayer_with_storybook.md +0 -13
- package/docs/it/intlayer_with_svelte_kit.md +102 -5
- package/docs/it/intlayer_with_tanstack+solid.md +122 -19
- package/docs/it/intlayer_with_tanstack.md +235 -134
- package/docs/it/intlayer_with_vanilla.md +111 -3
- package/docs/it/intlayer_with_vite+lit.md +116 -5
- package/docs/it/intlayer_with_vite+preact.md +146 -37
- package/docs/it/intlayer_with_vite+react.md +105 -17
- package/docs/it/intlayer_with_vite+react_compiler.md +110 -5
- package/docs/it/intlayer_with_vite+solid.md +117 -5
- package/docs/it/intlayer_with_vite+svelte.md +117 -14
- package/docs/it/intlayer_with_vite+vanilla.md +122 -5
- package/docs/it/intlayer_with_vite+vue.md +102 -6
- package/docs/it/introduction.md +105 -2
- package/docs/it/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/it/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/it/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/it/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/it/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/it/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ja/analytics.md +458 -12
- package/docs/ja/bundle_optimization.md +186 -186
- package/docs/ja/configuration.md +99 -1
- package/docs/ja/dictionary/content_file.md +4 -4
- package/docs/ja/dictionary/plurial.md +5 -2
- package/docs/ja/how_works_intlayer.md +93 -1
- package/docs/ja/interest_of_intlayer.md +107 -10
- package/docs/ja/intlayer_CMS.md +93 -1
- package/docs/ja/intlayer_visual_editor.md +88 -2
- package/docs/ja/intlayer_with_adonisjs.md +124 -4
- package/docs/ja/intlayer_with_analog.md +122 -13
- package/docs/ja/intlayer_with_angular_19.md +120 -13
- package/docs/ja/intlayer_with_angular_21.md +114 -13
- package/docs/ja/intlayer_with_astro.md +122 -25
- package/docs/ja/intlayer_with_astro_lit.md +123 -15
- package/docs/ja/intlayer_with_astro_preact.md +123 -15
- package/docs/ja/intlayer_with_astro_react.md +123 -15
- package/docs/ja/intlayer_with_astro_solid.md +123 -15
- package/docs/ja/intlayer_with_astro_svelte.md +123 -15
- package/docs/ja/intlayer_with_astro_vanilla.md +117 -15
- package/docs/ja/intlayer_with_astro_vue.md +123 -15
- package/docs/ja/intlayer_with_create_react_app.md +110 -5
- package/docs/ja/intlayer_with_elysia.md +125 -5
- package/docs/ja/intlayer_with_express.md +124 -4
- package/docs/ja/intlayer_with_fastify.md +119 -5
- package/docs/ja/intlayer_with_hono.md +118 -4
- package/docs/ja/intlayer_with_htmx.md +769 -0
- package/docs/ja/intlayer_with_lynx+react.md +11 -18
- package/docs/ja/intlayer_with_nestjs.md +118 -4
- package/docs/ja/intlayer_with_next-i18next.md +3 -3
- package/docs/ja/intlayer_with_nextjs_14.md +131 -54
- package/docs/ja/intlayer_with_nextjs_15.md +139 -62
- package/docs/ja/intlayer_with_nextjs_16.md +134 -55
- package/docs/ja/intlayer_with_nextjs_compiler.md +126 -18
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +126 -14
- package/docs/ja/intlayer_with_nextjs_page_router.md +218 -113
- package/docs/ja/intlayer_with_nuxt.md +115 -13
- package/docs/ja/intlayer_with_react_native+expo.md +106 -11
- package/docs/ja/intlayer_with_react_router_v7.md +124 -14
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +123 -23
- package/docs/ja/intlayer_with_solid_start.md +120 -5
- package/docs/ja/intlayer_with_storybook.md +8 -21
- package/docs/ja/intlayer_with_svelte_kit.md +110 -13
- package/docs/ja/intlayer_with_tanstack+solid.md +131 -27
- package/docs/ja/intlayer_with_tanstack.md +257 -206
- package/docs/ja/intlayer_with_vanilla.md +119 -11
- package/docs/ja/intlayer_with_vite+lit.md +124 -13
- package/docs/ja/intlayer_with_vite+preact.md +154 -26
- package/docs/ja/intlayer_with_vite+react.md +112 -15
- package/docs/ja/intlayer_with_vite+react_compiler.md +110 -5
- package/docs/ja/intlayer_with_vite+solid.md +124 -13
- package/docs/ja/intlayer_with_vite+svelte.md +125 -22
- package/docs/ja/intlayer_with_vite+vanilla.md +130 -13
- package/docs/ja/intlayer_with_vite+vue.md +110 -14
- package/docs/ja/introduction.md +105 -2
- package/docs/ja/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/ja/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/ja/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/ja/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/ja/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/ja/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ko/analytics.md +457 -11
- package/docs/ko/bundle_optimization.md +186 -186
- package/docs/ko/configuration.md +99 -1
- package/docs/ko/dictionary/content_file.md +4 -4
- package/docs/ko/dictionary/markdown.md +18 -1
- package/docs/ko/dictionary/plurial.md +6 -3
- package/docs/ko/how_works_intlayer.md +93 -1
- package/docs/ko/interest_of_intlayer.md +98 -3
- package/docs/ko/intlayer_CMS.md +93 -1
- package/docs/ko/intlayer_visual_editor.md +88 -2
- package/docs/ko/intlayer_with_adonisjs.md +124 -4
- package/docs/ko/intlayer_with_analog.md +114 -5
- package/docs/ko/intlayer_with_angular_19.md +113 -6
- package/docs/ko/intlayer_with_angular_21.md +107 -6
- package/docs/ko/intlayer_with_astro.md +122 -22
- package/docs/ko/intlayer_with_astro_lit.md +115 -7
- package/docs/ko/intlayer_with_astro_preact.md +115 -7
- package/docs/ko/intlayer_with_astro_react.md +115 -7
- package/docs/ko/intlayer_with_astro_solid.md +115 -7
- package/docs/ko/intlayer_with_astro_svelte.md +115 -7
- package/docs/ko/intlayer_with_astro_vanilla.md +109 -7
- package/docs/ko/intlayer_with_astro_vue.md +115 -7
- package/docs/ko/intlayer_with_create_react_app.md +110 -8
- package/docs/ko/intlayer_with_elysia.md +125 -5
- package/docs/ko/intlayer_with_express.md +118 -4
- package/docs/ko/intlayer_with_fastify.md +119 -6
- package/docs/ko/intlayer_with_hono.md +118 -4
- package/docs/ko/intlayer_with_htmx.md +763 -0
- package/docs/ko/intlayer_with_lynx+react.md +3 -10
- package/docs/ko/intlayer_with_nestjs.md +118 -4
- package/docs/ko/intlayer_with_next-i18next.md +3 -3
- package/docs/ko/intlayer_with_nextjs_14.md +121 -45
- package/docs/ko/intlayer_with_nextjs_15.md +121 -46
- package/docs/ko/intlayer_with_nextjs_16.md +124 -46
- package/docs/ko/intlayer_with_nextjs_compiler.md +113 -4
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +120 -10
- package/docs/ko/intlayer_with_nextjs_page_router.md +113 -97
- package/docs/ko/intlayer_with_nuxt.md +107 -5
- package/docs/ko/intlayer_with_react_native+expo.md +106 -11
- package/docs/ko/intlayer_with_react_router_v7.md +119 -13
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +116 -14
- package/docs/ko/intlayer_with_solid_start.md +125 -10
- package/docs/ko/intlayer_with_storybook.md +0 -14
- package/docs/ko/intlayer_with_svelte_kit.md +102 -5
- package/docs/ko/intlayer_with_tanstack+solid.md +124 -20
- package/docs/ko/intlayer_with_tanstack.md +263 -194
- package/docs/ko/intlayer_with_vanilla.md +111 -2
- package/docs/ko/intlayer_with_vite+lit.md +117 -6
- package/docs/ko/intlayer_with_vite+preact.md +146 -37
- package/docs/ko/intlayer_with_vite+react.md +104 -8
- package/docs/ko/intlayer_with_vite+react_compiler.md +110 -13
- package/docs/ko/intlayer_with_vite+solid.md +118 -5
- package/docs/ko/intlayer_with_vite+svelte.md +118 -18
- package/docs/ko/intlayer_with_vite+vanilla.md +124 -14
- package/docs/ko/intlayer_with_vite+vue.md +102 -6
- package/docs/ko/introduction.md +105 -2
- package/docs/ko/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/ko/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/ko/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/ko/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/ko/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/ko/packages/express-intlayer/t.md +9 -6
- package/docs/ko/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/nl/bundle_optimization.md +186 -186
- package/docs/nl/interest_of_intlayer.md +0 -1
- package/docs/nl/intlayer_with_angular_21.md +3 -3
- package/docs/nl/intlayer_with_fastify.md +4 -4
- package/docs/nl/intlayer_with_hono.md +3 -3
- package/docs/nl/intlayer_with_storybook.md +0 -12
- package/docs/nl/intlayer_with_vanilla.md +2 -1
- package/docs/nl/intlayer_with_vite+lit.md +3 -3
- package/docs/nl/intlayer_with_vite+vanilla.md +3 -3
- package/docs/nl/introduction.md +0 -1
- package/docs/pl/analytics.md +488 -21
- package/docs/pl/bundle_optimization.md +186 -186
- package/docs/pl/configuration.md +98 -0
- package/docs/pl/dictionary/content_file.md +4 -4
- package/docs/pl/dictionary/markdown.md +3 -0
- package/docs/pl/dictionary/plurial.md +5 -2
- package/docs/pl/how_works_intlayer.md +92 -0
- package/docs/pl/interest_of_intlayer.md +96 -1
- package/docs/pl/intlayer_CMS.md +92 -0
- package/docs/pl/intlayer_visual_editor.md +87 -1
- package/docs/pl/intlayer_with_adonisjs.md +123 -3
- package/docs/pl/intlayer_with_analog.md +119 -11
- package/docs/pl/intlayer_with_angular_19.md +118 -11
- package/docs/pl/intlayer_with_angular_21.md +112 -11
- package/docs/pl/intlayer_with_astro.md +120 -23
- package/docs/pl/intlayer_with_astro_lit.md +121 -13
- package/docs/pl/intlayer_with_astro_preact.md +121 -13
- package/docs/pl/intlayer_with_astro_react.md +121 -13
- package/docs/pl/intlayer_with_astro_solid.md +121 -13
- package/docs/pl/intlayer_with_astro_svelte.md +121 -13
- package/docs/pl/intlayer_with_astro_vanilla.md +115 -13
- package/docs/pl/intlayer_with_astro_vue.md +121 -13
- package/docs/pl/intlayer_with_create_react_app.md +109 -4
- package/docs/pl/intlayer_with_elysia.md +124 -4
- package/docs/pl/intlayer_with_express.md +117 -3
- package/docs/pl/intlayer_with_fastify.md +118 -4
- package/docs/pl/intlayer_with_hono.md +117 -3
- package/docs/pl/intlayer_with_htmx.md +767 -0
- package/docs/pl/intlayer_with_lynx+react.md +10 -17
- package/docs/pl/intlayer_with_nestjs.md +117 -3
- package/docs/pl/intlayer_with_next-i18next.md +3 -3
- package/docs/pl/intlayer_with_nextjs_14.md +130 -53
- package/docs/pl/intlayer_with_nextjs_15.md +144 -65
- package/docs/pl/intlayer_with_nextjs_16.md +131 -54
- package/docs/pl/intlayer_with_nextjs_compiler.md +125 -16
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +125 -13
- package/docs/pl/intlayer_with_nextjs_page_router.md +118 -100
- package/docs/pl/intlayer_with_nuxt.md +113 -11
- package/docs/pl/intlayer_with_react_native+expo.md +105 -10
- package/docs/pl/intlayer_with_react_router_v7.md +134 -25
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +121 -20
- package/docs/pl/intlayer_with_solid_start.md +118 -4
- package/docs/pl/intlayer_with_storybook.md +7 -20
- package/docs/pl/intlayer_with_svelte_kit.md +108 -11
- package/docs/pl/intlayer_with_tanstack+solid.md +127 -25
- package/docs/pl/intlayer_with_tanstack.md +241 -163
- package/docs/pl/intlayer_with_vanilla.md +117 -9
- package/docs/pl/intlayer_with_vite+lit.md +121 -11
- package/docs/pl/intlayer_with_vite+preact.md +151 -43
- package/docs/pl/intlayer_with_vite+react.md +111 -23
- package/docs/pl/intlayer_with_vite+react_compiler.md +111 -6
- package/docs/pl/intlayer_with_vite+solid.md +115 -8
- package/docs/pl/intlayer_with_vite+svelte.md +122 -20
- package/docs/pl/intlayer_with_vite+vanilla.md +128 -11
- package/docs/pl/intlayer_with_vite+vue.md +107 -11
- package/docs/pl/introduction.md +104 -1
- package/docs/pl/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/pl/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/pl/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/pl/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/pl/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/pl/packages/next-intlayer/useIntlayer.md +3 -0
- package/docs/pl/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/pt/analytics.md +488 -21
- package/docs/pt/bundle_optimization.md +186 -186
- package/docs/pt/configuration.md +99 -1
- package/docs/pt/dictionary/content_file.md +4 -4
- package/docs/pt/dictionary/html.md +18 -1
- package/docs/pt/dictionary/markdown.md +3 -0
- package/docs/pt/dictionary/plurial.md +5 -2
- package/docs/pt/how_works_intlayer.md +93 -1
- package/docs/pt/interest_of_intlayer.md +98 -3
- package/docs/pt/intlayer_CMS.md +93 -1
- package/docs/pt/intlayer_visual_editor.md +88 -2
- package/docs/pt/intlayer_with_adonisjs.md +124 -4
- package/docs/pt/intlayer_with_analog.md +115 -6
- package/docs/pt/intlayer_with_angular_19.md +112 -5
- package/docs/pt/intlayer_with_angular_21.md +106 -5
- package/docs/pt/intlayer_with_astro.md +114 -17
- package/docs/pt/intlayer_with_astro_lit.md +115 -7
- package/docs/pt/intlayer_with_astro_preact.md +115 -7
- package/docs/pt/intlayer_with_astro_react.md +115 -7
- package/docs/pt/intlayer_with_astro_solid.md +115 -7
- package/docs/pt/intlayer_with_astro_svelte.md +115 -7
- package/docs/pt/intlayer_with_astro_vanilla.md +109 -7
- package/docs/pt/intlayer_with_astro_vue.md +114 -6
- package/docs/pt/intlayer_with_create_react_app.md +110 -5
- package/docs/pt/intlayer_with_elysia.md +125 -5
- package/docs/pt/intlayer_with_express.md +118 -4
- package/docs/pt/intlayer_with_fastify.md +119 -6
- package/docs/pt/intlayer_with_hono.md +118 -4
- package/docs/pt/intlayer_with_htmx.md +771 -0
- package/docs/pt/intlayer_with_lynx+react.md +3 -10
- package/docs/pt/intlayer_with_nestjs.md +118 -4
- package/docs/pt/intlayer_with_next-i18next.md +3 -3
- package/docs/pt/intlayer_with_nextjs_14.md +141 -120
- package/docs/pt/intlayer_with_nextjs_15.md +123 -48
- package/docs/pt/intlayer_with_nextjs_16.md +125 -48
- package/docs/pt/intlayer_with_nextjs_compiler.md +125 -15
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +118 -6
- package/docs/pt/intlayer_with_nextjs_page_router.md +124 -98
- package/docs/pt/intlayer_with_nuxt.md +107 -5
- package/docs/pt/intlayer_with_react_native+expo.md +106 -11
- package/docs/pt/intlayer_with_react_router_v7.md +143 -36
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +115 -8
- package/docs/pt/intlayer_with_solid_start.md +124 -9
- package/docs/pt/intlayer_with_storybook.md +0 -13
- package/docs/pt/intlayer_with_svelte_kit.md +102 -5
- package/docs/pt/intlayer_with_tanstack+solid.md +123 -19
- package/docs/pt/intlayer_with_tanstack.md +255 -147
- package/docs/pt/intlayer_with_vanilla.md +111 -3
- package/docs/pt/intlayer_with_vite+lit.md +116 -5
- package/docs/pt/intlayer_with_vite+preact.md +146 -37
- package/docs/pt/intlayer_with_vite+react.md +104 -7
- package/docs/pt/intlayer_with_vite+react_compiler.md +110 -5
- package/docs/pt/intlayer_with_vite+solid.md +117 -5
- package/docs/pt/intlayer_with_vite+svelte.md +117 -14
- package/docs/pt/intlayer_with_vite+vanilla.md +122 -5
- package/docs/pt/intlayer_with_vite+vue.md +101 -5
- package/docs/pt/introduction.md +105 -2
- package/docs/pt/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/pt/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/pt/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/pt/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/pt/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/pt/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ru/analytics.md +458 -12
- package/docs/ru/bundle_optimization.md +186 -186
- package/docs/ru/cli/doc-review.md +0 -2
- package/docs/ru/configuration.md +99 -1
- package/docs/ru/dictionary/content_file.md +4 -4
- package/docs/ru/dictionary/markdown.md +0 -2
- package/docs/ru/dictionary/plurial.md +6 -3
- package/docs/ru/dictionary/translation.md +1 -1
- package/docs/ru/how_works_intlayer.md +93 -1
- package/docs/ru/interest_of_intlayer.md +97 -2
- package/docs/ru/intlayer_CMS.md +93 -1
- package/docs/ru/intlayer_visual_editor.md +88 -2
- package/docs/ru/intlayer_with_adonisjs.md +124 -4
- package/docs/ru/intlayer_with_analog.md +114 -5
- package/docs/ru/intlayer_with_angular_19.md +112 -5
- package/docs/ru/intlayer_with_angular_21.md +106 -5
- package/docs/ru/intlayer_with_astro.md +114 -17
- package/docs/ru/intlayer_with_astro_lit.md +115 -7
- package/docs/ru/intlayer_with_astro_preact.md +115 -7
- package/docs/ru/intlayer_with_astro_react.md +115 -7
- package/docs/ru/intlayer_with_astro_solid.md +115 -7
- package/docs/ru/intlayer_with_astro_svelte.md +115 -7
- package/docs/ru/intlayer_with_astro_vanilla.md +109 -7
- package/docs/ru/intlayer_with_astro_vue.md +115 -7
- package/docs/ru/intlayer_with_create_react_app.md +110 -5
- package/docs/ru/intlayer_with_elysia.md +125 -5
- package/docs/ru/intlayer_with_express.md +118 -4
- package/docs/ru/intlayer_with_fastify.md +119 -5
- package/docs/ru/intlayer_with_hono.md +118 -4
- package/docs/ru/intlayer_with_htmx.md +767 -0
- package/docs/ru/intlayer_with_lynx+react.md +3 -10
- package/docs/ru/intlayer_with_nestjs.md +118 -4
- package/docs/ru/intlayer_with_next-i18next.md +3 -3
- package/docs/ru/intlayer_with_nextjs_14.md +141 -117
- package/docs/ru/intlayer_with_nextjs_15.md +126 -65
- package/docs/ru/intlayer_with_nextjs_16.md +125 -48
- package/docs/ru/intlayer_with_nextjs_compiler.md +126 -17
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +118 -6
- package/docs/ru/intlayer_with_nextjs_page_router.md +113 -98
- package/docs/ru/intlayer_with_nuxt.md +107 -5
- package/docs/ru/intlayer_with_react_native+expo.md +106 -11
- package/docs/ru/intlayer_with_react_router_v7.md +116 -7
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +111 -4
- package/docs/ru/intlayer_with_solid_start.md +120 -5
- package/docs/ru/intlayer_with_storybook.md +0 -13
- package/docs/ru/intlayer_with_svelte_kit.md +102 -5
- package/docs/ru/intlayer_with_tanstack+solid.md +122 -19
- package/docs/ru/intlayer_with_tanstack.md +233 -154
- package/docs/ru/intlayer_with_vanilla.md +111 -3
- package/docs/ru/intlayer_with_vite+lit.md +116 -5
- package/docs/ru/intlayer_with_vite+preact.md +146 -37
- package/docs/ru/intlayer_with_vite+react.md +105 -17
- package/docs/ru/intlayer_with_vite+react_compiler.md +110 -5
- package/docs/ru/intlayer_with_vite+solid.md +117 -5
- package/docs/ru/intlayer_with_vite+svelte.md +119 -24
- package/docs/ru/intlayer_with_vite+vanilla.md +122 -5
- package/docs/ru/intlayer_with_vite+vue.md +102 -6
- package/docs/ru/introduction.md +105 -2
- package/docs/ru/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/ru/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/ru/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/ru/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/ru/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/ru/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/tr/analytics.md +488 -21
- package/docs/tr/bundle_optimization.md +186 -186
- package/docs/tr/cli/doc-review.md +0 -2
- package/docs/tr/configuration.md +98 -0
- package/docs/tr/dictionary/content_file.md +4 -4
- package/docs/tr/dictionary/markdown.md +3 -0
- package/docs/tr/dictionary/plurial.md +6 -3
- package/docs/tr/how_works_intlayer.md +92 -0
- package/docs/tr/interest_of_intlayer.md +96 -1
- package/docs/tr/intlayer_CMS.md +92 -0
- package/docs/tr/intlayer_visual_editor.md +87 -1
- package/docs/tr/intlayer_with_adonisjs.md +124 -3
- package/docs/tr/intlayer_with_analog.md +112 -4
- package/docs/tr/intlayer_with_angular_19.md +111 -4
- package/docs/tr/intlayer_with_angular_21.md +105 -4
- package/docs/tr/intlayer_with_astro.md +120 -30
- package/docs/tr/intlayer_with_astro_lit.md +114 -6
- package/docs/tr/intlayer_with_astro_preact.md +114 -6
- package/docs/tr/intlayer_with_astro_react.md +114 -6
- package/docs/tr/intlayer_with_astro_solid.md +114 -6
- package/docs/tr/intlayer_with_astro_svelte.md +114 -6
- package/docs/tr/intlayer_with_astro_vanilla.md +108 -6
- package/docs/tr/intlayer_with_astro_vue.md +114 -6
- package/docs/tr/intlayer_with_create_react_app.md +109 -4
- package/docs/tr/intlayer_with_elysia.md +125 -4
- package/docs/tr/intlayer_with_express.md +117 -3
- package/docs/tr/intlayer_with_fastify.md +119 -4
- package/docs/tr/intlayer_with_hono.md +117 -3
- package/docs/tr/intlayer_with_htmx.md +761 -0
- package/docs/tr/intlayer_with_lynx+react.md +3 -10
- package/docs/tr/intlayer_with_nestjs.md +118 -3
- package/docs/tr/intlayer_with_next-i18next.md +3 -3
- package/docs/tr/intlayer_with_nextjs_14.md +128 -54
- package/docs/tr/intlayer_with_nextjs_15.md +122 -47
- package/docs/tr/intlayer_with_nextjs_16.md +123 -46
- package/docs/tr/intlayer_with_nextjs_compiler.md +124 -16
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +117 -5
- package/docs/tr/intlayer_with_nextjs_page_router.md +127 -123
- package/docs/tr/intlayer_with_nuxt.md +106 -4
- package/docs/tr/intlayer_with_react_native+expo.md +105 -10
- package/docs/tr/intlayer_with_react_router_v7.md +115 -6
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +110 -3
- package/docs/tr/intlayer_with_solid_start.md +118 -4
- package/docs/tr/intlayer_with_storybook.md +0 -13
- package/docs/tr/intlayer_with_svelte_kit.md +101 -4
- package/docs/tr/intlayer_with_tanstack+solid.md +120 -18
- package/docs/tr/intlayer_with_tanstack.md +262 -131
- package/docs/tr/intlayer_with_vanilla.md +110 -2
- package/docs/tr/intlayer_with_vite+lit.md +114 -4
- package/docs/tr/intlayer_with_vite+preact.md +144 -36
- package/docs/tr/intlayer_with_vite+react.md +103 -6
- package/docs/tr/intlayer_with_vite+react_compiler.md +109 -4
- package/docs/tr/intlayer_with_vite+solid.md +115 -4
- package/docs/tr/intlayer_with_vite+svelte.md +115 -13
- package/docs/tr/intlayer_with_vite+vanilla.md +121 -4
- package/docs/tr/intlayer_with_vite+vue.md +102 -7
- package/docs/tr/introduction.md +104 -1
- package/docs/tr/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/tr/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/tr/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/tr/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/tr/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/tr/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/uk/analytics.md +488 -21
- package/docs/uk/bundle_optimization.md +186 -186
- package/docs/uk/configuration.md +98 -0
- package/docs/uk/dictionary/content_file.md +4 -4
- package/docs/uk/dictionary/markdown.md +3 -0
- package/docs/uk/dictionary/plurial.md +6 -3
- package/docs/uk/how_works_intlayer.md +92 -0
- package/docs/uk/interest_of_intlayer.md +96 -1
- package/docs/uk/intlayer_CMS.md +92 -0
- package/docs/uk/intlayer_visual_editor.md +87 -1
- package/docs/uk/intlayer_with_adonisjs.md +124 -3
- package/docs/uk/intlayer_with_analog.md +112 -4
- package/docs/uk/intlayer_with_angular_19.md +111 -4
- package/docs/uk/intlayer_with_angular_21.md +105 -4
- package/docs/uk/intlayer_with_astro.md +113 -16
- package/docs/uk/intlayer_with_astro_lit.md +114 -6
- package/docs/uk/intlayer_with_astro_preact.md +114 -6
- package/docs/uk/intlayer_with_astro_react.md +114 -6
- package/docs/uk/intlayer_with_astro_solid.md +114 -6
- package/docs/uk/intlayer_with_astro_svelte.md +114 -6
- package/docs/uk/intlayer_with_astro_vanilla.md +108 -6
- package/docs/uk/intlayer_with_astro_vue.md +114 -6
- package/docs/uk/intlayer_with_create_react_app.md +109 -4
- package/docs/uk/intlayer_with_elysia.md +125 -4
- package/docs/uk/intlayer_with_express.md +117 -3
- package/docs/uk/intlayer_with_fastify.md +119 -4
- package/docs/uk/intlayer_with_hono.md +117 -3
- package/docs/uk/intlayer_with_htmx.md +760 -0
- package/docs/uk/intlayer_with_lynx+react.md +3 -10
- package/docs/uk/intlayer_with_nestjs.md +118 -3
- package/docs/uk/intlayer_with_next-i18next.md +3 -3
- package/docs/uk/intlayer_with_nextjs_14.md +122 -47
- package/docs/uk/intlayer_with_nextjs_15.md +136 -59
- package/docs/uk/intlayer_with_nextjs_16.md +124 -47
- package/docs/uk/intlayer_with_nextjs_compiler.md +125 -17
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +117 -5
- package/docs/uk/intlayer_with_nextjs_page_router.md +114 -99
- package/docs/uk/intlayer_with_nuxt.md +106 -4
- package/docs/uk/intlayer_with_react_native+expo.md +105 -10
- package/docs/uk/intlayer_with_react_router_v7.md +115 -6
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +110 -3
- package/docs/uk/intlayer_with_solid_start.md +118 -4
- package/docs/uk/intlayer_with_storybook.md +0 -13
- package/docs/uk/intlayer_with_svelte_kit.md +101 -4
- package/docs/uk/intlayer_with_tanstack+solid.md +120 -18
- package/docs/uk/intlayer_with_tanstack.md +238 -135
- package/docs/uk/intlayer_with_vanilla.md +110 -2
- package/docs/uk/intlayer_with_vite+lit.md +114 -4
- package/docs/uk/intlayer_with_vite+preact.md +170 -34
- package/docs/uk/intlayer_with_vite+react.md +104 -16
- package/docs/uk/intlayer_with_vite+react_compiler.md +109 -4
- package/docs/uk/intlayer_with_vite+solid.md +115 -4
- package/docs/uk/intlayer_with_vite+svelte.md +115 -13
- package/docs/uk/intlayer_with_vite+vanilla.md +121 -4
- package/docs/uk/intlayer_with_vite+vue.md +100 -4
- package/docs/uk/introduction.md +104 -1
- package/docs/uk/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/uk/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/uk/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/uk/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/uk/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/uk/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/ur/bundle_optimization.md +186 -186
- package/docs/ur/intlayer_with_angular_21.md +3 -3
- package/docs/ur/intlayer_with_fastify.md +4 -4
- package/docs/ur/intlayer_with_hono.md +3 -3
- package/docs/ur/intlayer_with_storybook.md +0 -12
- package/docs/ur/intlayer_with_vanilla.md +2 -1
- package/docs/ur/intlayer_with_vite+lit.md +3 -3
- package/docs/ur/intlayer_with_vite+vanilla.md +3 -3
- package/docs/ur/introduction.md +0 -1
- package/docs/vi/analytics.md +488 -21
- package/docs/vi/bundle_optimization.md +186 -186
- package/docs/vi/configuration.md +98 -0
- package/docs/vi/dictionary/content_file.md +4 -4
- package/docs/vi/dictionary/markdown.md +3 -0
- package/docs/vi/dictionary/plurial.md +5 -2
- package/docs/vi/how_works_intlayer.md +92 -0
- package/docs/vi/interest_of_intlayer.md +96 -1
- package/docs/vi/intlayer_CMS.md +92 -0
- package/docs/vi/intlayer_visual_editor.md +87 -1
- package/docs/vi/intlayer_with_adonisjs.md +124 -3
- package/docs/vi/intlayer_with_analog.md +112 -4
- package/docs/vi/intlayer_with_angular_19.md +111 -4
- package/docs/vi/intlayer_with_angular_21.md +105 -4
- package/docs/vi/intlayer_with_astro.md +113 -16
- package/docs/vi/intlayer_with_astro_lit.md +114 -6
- package/docs/vi/intlayer_with_astro_preact.md +114 -6
- package/docs/vi/intlayer_with_astro_react.md +114 -6
- package/docs/vi/intlayer_with_astro_solid.md +114 -6
- package/docs/vi/intlayer_with_astro_svelte.md +114 -6
- package/docs/vi/intlayer_with_astro_vanilla.md +108 -6
- package/docs/vi/intlayer_with_astro_vue.md +114 -6
- package/docs/vi/intlayer_with_create_react_app.md +109 -4
- package/docs/vi/intlayer_with_elysia.md +125 -4
- package/docs/vi/intlayer_with_express.md +117 -3
- package/docs/vi/intlayer_with_fastify.md +119 -4
- package/docs/vi/intlayer_with_hono.md +117 -3
- package/docs/vi/intlayer_with_htmx.md +760 -0
- package/docs/vi/intlayer_with_lynx+react.md +3 -10
- package/docs/vi/intlayer_with_nestjs.md +118 -3
- package/docs/vi/intlayer_with_next-i18next.md +3 -3
- package/docs/vi/intlayer_with_nextjs_14.md +136 -56
- package/docs/vi/intlayer_with_nextjs_15.md +136 -59
- package/docs/vi/intlayer_with_nextjs_16.md +124 -47
- package/docs/vi/intlayer_with_nextjs_compiler.md +125 -17
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +117 -5
- package/docs/vi/intlayer_with_nextjs_page_router.md +114 -95
- package/docs/vi/intlayer_with_nuxt.md +106 -4
- package/docs/vi/intlayer_with_react_native+expo.md +105 -10
- package/docs/vi/intlayer_with_react_router_v7.md +115 -6
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +116 -16
- package/docs/vi/intlayer_with_solid_start.md +118 -4
- package/docs/vi/intlayer_with_storybook.md +0 -13
- package/docs/vi/intlayer_with_svelte_kit.md +101 -4
- package/docs/vi/intlayer_with_tanstack+solid.md +120 -18
- package/docs/vi/intlayer_with_tanstack.md +252 -172
- package/docs/vi/intlayer_with_vanilla.md +110 -2
- package/docs/vi/intlayer_with_vite+lit.md +114 -4
- package/docs/vi/intlayer_with_vite+preact.md +150 -17
- package/docs/vi/intlayer_with_vite+react.md +104 -16
- package/docs/vi/intlayer_with_vite+react_compiler.md +109 -4
- package/docs/vi/intlayer_with_vite+solid.md +115 -4
- package/docs/vi/intlayer_with_vite+svelte.md +115 -13
- package/docs/vi/intlayer_with_vite+vanilla.md +121 -4
- package/docs/vi/intlayer_with_vite+vue.md +100 -4
- package/docs/vi/introduction.md +104 -1
- package/docs/vi/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/vi/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/vi/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/vi/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/vi/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/vi/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/vi/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/zh/analytics.md +458 -12
- package/docs/zh/bundle_optimization.md +186 -186
- package/docs/zh/configuration.md +99 -1
- package/docs/zh/dictionary/content_file.md +4 -4
- package/docs/zh/dictionary/markdown.md +18 -1
- package/docs/zh/dictionary/plurial.md +6 -3
- package/docs/zh/how_works_intlayer.md +93 -1
- package/docs/zh/interest_of_intlayer.md +108 -13
- package/docs/zh/intlayer_CMS.md +93 -1
- package/docs/zh/intlayer_visual_editor.md +88 -2
- package/docs/zh/intlayer_with_adonisjs.md +124 -4
- package/docs/zh/intlayer_with_analog.md +121 -12
- package/docs/zh/intlayer_with_angular_19.md +120 -13
- package/docs/zh/intlayer_with_angular_21.md +113 -12
- package/docs/zh/intlayer_with_astro.md +111 -7
- package/docs/zh/intlayer_with_astro_lit.md +117 -10
- package/docs/zh/intlayer_with_astro_preact.md +117 -10
- package/docs/zh/intlayer_with_astro_react.md +117 -10
- package/docs/zh/intlayer_with_astro_solid.md +117 -10
- package/docs/zh/intlayer_with_astro_svelte.md +117 -10
- package/docs/zh/intlayer_with_astro_vanilla.md +111 -10
- package/docs/zh/intlayer_with_astro_vue.md +117 -10
- package/docs/zh/intlayer_with_create_react_app.md +113 -9
- package/docs/zh/intlayer_with_elysia.md +125 -5
- package/docs/zh/intlayer_with_express.md +118 -4
- package/docs/zh/intlayer_with_fastify.md +119 -5
- package/docs/zh/intlayer_with_hono.md +118 -4
- package/docs/zh/intlayer_with_htmx.md +769 -0
- package/docs/zh/intlayer_with_lynx+react.md +11 -16
- package/docs/zh/intlayer_with_nestjs.md +118 -4
- package/docs/zh/intlayer_with_next-i18next.md +3 -3
- package/docs/zh/intlayer_with_nextjs_14.md +123 -48
- package/docs/zh/intlayer_with_nextjs_15.md +124 -47
- package/docs/zh/intlayer_with_nextjs_16.md +124 -45
- package/docs/zh/intlayer_with_nextjs_compiler.md +124 -17
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +125 -13
- package/docs/zh/intlayer_with_nextjs_page_router.md +113 -97
- package/docs/zh/intlayer_with_nuxt.md +114 -12
- package/docs/zh/intlayer_with_react_native+expo.md +106 -11
- package/docs/zh/intlayer_with_react_router_v7.md +134 -31
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +134 -30
- package/docs/zh/intlayer_with_solid_start.md +125 -10
- package/docs/zh/intlayer_with_storybook.md +7 -20
- package/docs/zh/intlayer_with_svelte_kit.md +109 -12
- package/docs/zh/intlayer_with_tanstack+solid.md +132 -32
- package/docs/zh/intlayer_with_tanstack.md +254 -194
- package/docs/zh/intlayer_with_vanilla.md +118 -10
- package/docs/zh/intlayer_with_vite+lit.md +124 -11
- package/docs/zh/intlayer_with_vite+preact.md +153 -44
- package/docs/zh/intlayer_with_vite+react.md +107 -15
- package/docs/zh/intlayer_with_vite+react_compiler.md +110 -5
- package/docs/zh/intlayer_with_vite+solid.md +116 -5
- package/docs/zh/intlayer_with_vite+svelte.md +131 -26
- package/docs/zh/intlayer_with_vite+vanilla.md +129 -12
- package/docs/zh/intlayer_with_vite+vue.md +102 -6
- package/docs/zh/introduction.md +105 -2
- package/docs/zh/migration_from_i18next_to_intlayer.md +3 -5
- package/docs/zh/migration_from_next-i18next_to_intlayer.md +3 -5
- package/docs/zh/migration_from_next-intl_to_intlayer.md +3 -5
- package/docs/zh/migration_from_nuxtjs_i18n_to_intlayer.md +3 -5
- package/docs/zh/migration_from_react-i18next_to_intlayer.md +3 -5
- package/docs/zh/migration_from_vue-i18n_to_intlayer.md +3 -5
- package/docs/zh/packages/vite-intlayer/intlayerMinify.md +1 -1
- package/docs/zh/releases/v6.md +1 -1
- package/docs/zh-TW/bundle_optimization.md +186 -186
- package/docs/zh-TW/intlayer_with_angular_21.md +3 -3
- package/docs/zh-TW/introduction.md +0 -1
- package/package.json +7 -7
- package/src/common.ts +45 -18
- package/src/generated/blog.entry.ts +349 -0
- package/src/generated/docs.entry.ts +20 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-09-04
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-08-30
|
|
4
4
|
title: "React Router v7 i18n - Guía completa para traducir tu aplicación"
|
|
5
5
|
description: "Sin más i18next. La guía 2026 para crear una aplicación React Router v7 multilingüe (i18n). Traduce con agentes de IA y optimiza el tamaño del bundle, SEO y rendimiento."
|
|
6
6
|
keywords:
|
|
@@ -54,7 +54,6 @@ Esta guía se enfoca en el enrutamiento frontend. Para el enrutamiento de fs-rou
|
|
|
54
54
|
En comparación con soluciones principales como `react-i18next` o `i18next`, Intlayer es una solución que viene con optimizaciones integradas como:
|
|
55
55
|
|
|
56
56
|
<AccordionGroup>
|
|
57
|
-
|
|
58
57
|
<Accordion header="Cobertura completa del enrutador React">
|
|
59
58
|
|
|
60
59
|
Intlayer está optimizado para funcionar perfectamente con React Router al ofrecer **enrutamiento con reconocimiento local**, **middleware para detección local** y todas las funciones necesarias para escalar la internacionalización (i18n).
|
|
@@ -113,15 +112,15 @@ npx intlayer init --interactive
|
|
|
113
112
|
```
|
|
114
113
|
|
|
115
114
|
```bash packageManager="pnpm"
|
|
116
|
-
pnpm dlx intlayer
|
|
115
|
+
pnpm dlx intlayer init --interactive
|
|
117
116
|
```
|
|
118
117
|
|
|
119
118
|
```bash packageManager="yarn"
|
|
120
|
-
yarn dlx intlayer
|
|
119
|
+
yarn dlx intlayer init --interactive
|
|
121
120
|
```
|
|
122
121
|
|
|
123
122
|
```bash packageManager="bun"
|
|
124
|
-
bunx intlayer
|
|
123
|
+
bunx intlayer init --interactive
|
|
125
124
|
```
|
|
126
125
|
|
|
127
126
|
> la bandera `--interactive` es opcional. Usa `intlayer-cli init` si eres un agente de IA.
|
|
@@ -700,8 +699,6 @@ bun run build # Or bun run dev
|
|
|
700
699
|
</Tab>
|
|
701
700
|
</Tabs>
|
|
702
701
|
|
|
703
|
-
---
|
|
704
|
-
|
|
705
702
|
</Step>
|
|
706
703
|
|
|
707
704
|
</Steps>
|
|
@@ -770,3 +767,115 @@ Para profundizar, puedes implementar el [editor visual](https://github.com/aymer
|
|
|
770
767
|
- [Configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md)
|
|
771
768
|
|
|
772
769
|
Esta guía completa proporciona todo lo que necesitas para integrar Intlayer con React Router v7 para una aplicación completamente internacionalizada con enrutamiento consciente del idioma y soporte para TypeScript.
|
|
770
|
+
|
|
771
|
+
## Preguntas frecuentes
|
|
772
|
+
|
|
773
|
+
<FAQ>
|
|
774
|
+
|
|
775
|
+
<Question title="¿Qué soluciones existen para internacionalizar una aplicación de React Router v7?">
|
|
776
|
+
|
|
777
|
+
React Router v7 no incluye ninguna capa de mensajes, así que lo emparejas con una biblioteca de i18n:
|
|
778
|
+
|
|
779
|
+
- **`react-i18next` / `i18next`**: espacios de nombres JSON cargados en tiempo de ejecución, con un detector de idioma independiente que conectar al router.
|
|
780
|
+
- **`react-intl`** y **`Lingui`**: mensajes ICU con un paso de extracción.
|
|
781
|
+
- **`Intlayer`**: contenido declarado junto a cada componente, compilado en tiempo de compilación, tipado de extremo a extremo, con utilidades de enrutamiento por idioma, traducción con IA, un editor visual y un CMS.
|
|
782
|
+
|
|
783
|
+
Consulta [por qué Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/interest_of_intlayer.md) y el [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/benchmark/index.md).
|
|
784
|
+
|
|
785
|
+
</Question>
|
|
786
|
+
|
|
787
|
+
<Question title="¿Cuánto añade la i18n al tamaño del bundle de mi aplicación React Router?">
|
|
788
|
+
|
|
789
|
+
Mucho menos que una configuración basada en espacios de nombres, porque una página nunca descarga un catálogo que no renderiza. El marcado renderizado en el servidor resuelve su contenido en el servidor, y el compilador de tiempo de compilación reemplaza las llamadas a `useIntlayer` por las entradas de diccionario exactas que usa un componente, de modo que se descartan las claves sin usar y los idiomas sin usar, y los [diccionarios dinámicos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dynamic_dictionaries/index.md) reparten el resto por idioma. Frente a las alternativas habituales, Intlayer reduce el tamaño del bundle y de la página hasta en un 50%. Consulta la [optimización del bundle](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/bundle_optimization.md) y el [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/benchmark/index.md).
|
|
790
|
+
|
|
791
|
+
</Question>
|
|
792
|
+
|
|
793
|
+
<Question title="¿Puedo migrar desde `react-i18next` o `react-intl` sin reescribir mis componentes?">
|
|
794
|
+
|
|
795
|
+
Sí, y hay dos caminos. Puedes migrar el contenido de forma progresiva con la [guía de migración de react-i18next](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/migration_from_react-i18next_to_intlayer.md) o la [guía de migración de i18next](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/migration_from_i18next_to_intlayer.md). O puedes mantener tu API actual por completo: los [adaptadores de compatibilidad](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/compat/index.md) exponen exactamente la misma API que `react-i18next`, `react-intl` y `i18next`, pero servida por diccionarios de Intlayer, así que cambian los imports y el código de los componentes no.
|
|
796
|
+
|
|
797
|
+
</Question>
|
|
798
|
+
|
|
799
|
+
<Question title="¿Puedo conservar mis archivos de traducción JSON existentes?">
|
|
800
|
+
|
|
801
|
+
Sí. El [plugin de sincronización JSON](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/plugins/sync-json.md) mantiene tus archivos `/messages/{locale}/{namespace}.json` como fuente de verdad y genera diccionarios de Intlayer a partir de ellos, en ambas direcciones. Un [plugin de sincronización PO](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/plugins/sync-po.md) hace lo mismo para los catálogos gettext, y los [archivos por idioma](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/per_locale_file.md) te permiten dividir el contenido por idioma en lugar de agrupar los idiomas en un solo archivo.
|
|
802
|
+
|
|
803
|
+
</Question>
|
|
804
|
+
|
|
805
|
+
<Question title="¿Tengo que trasladar mi contenido clave por clave?">
|
|
806
|
+
|
|
807
|
+
No. Ejecuta `npx intlayer extract` e Intlayer lee tus componentes, extrae las cadenas visibles para el usuario y escribe un archivo `.content` junto a cada uno, así que revisas un diff en lugar de copiar cadenas a un catálogo una por una. El paso 12 de esta guía lo explica paso a paso.
|
|
808
|
+
|
|
809
|
+
Para una canalización totalmente automatizada, el [compilador de Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/compiler.md) hace lo mismo en tiempo de compilación: escanea tu código JSX, TSX, Vue y Svelte en cada cambio, genera los diccionarios y los mantiene sincronizados mediante el reemplazo de módulos en caliente, así que no hay ninguna clave que mantener a mano.
|
|
810
|
+
|
|
811
|
+
Conviene conocer dos límites antes de activar el compilador. Funciona por análisis estático, así que las cadenas que solo existen en tiempo de ejecución, como los códigos de error de la API o los campos del CMS, quedan fuera de su alcance. Y tiene que distinguir el texto visible para el usuario de la lógica de la aplicación, como `className="active"` o un código de estado, lo que requiere unas pocas anotaciones en una base de código grande. El [comando extract](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/extract.md) evita ambos manteniéndote en el proceso.
|
|
812
|
+
|
|
813
|
+
</Question>
|
|
814
|
+
|
|
815
|
+
<Question title="¿Qué herramientas para editores y agentes de IA están disponibles?">
|
|
816
|
+
|
|
817
|
+
Cinco piezas, todas opcionales:
|
|
818
|
+
|
|
819
|
+
- **[Extensión de VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/vs_code_extension.md)**: salta de una clave `useIntlayer` al archivo de contenido que la declara, extrae contenido de un componente y ejecuta build, fill, test, push y pull desde la paleta de comandos o desde una pestaña de Intlayer dedicada.
|
|
820
|
+
- **[Servidor LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/lsp.md)**: el mismo conocimiento en cualquier editor que hable LSP, con ir a la definición, buscar todas las referencias, vistas previas al pasar el cursor de un valor traducido, autocompletado de claves y campos, y un aviso cuando una clave no está declarada en ninguna parte. También resuelve las llamadas a `i18next`, `react-i18next`, `next-intl` y `use-intl`, lo que ayuda durante la migración.
|
|
821
|
+
- **[Servidor MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/mcp_server.md)**: expone la documentación y la CLI de Intlayer a Cursor, VS Code, Claude Desktop, Claude Code y ChatGPT, para que un asistente responda a partir de la documentación actual en lugar de adivinar, y pueda ejecutar comandos como `intlayer fill` por sí mismo.
|
|
822
|
+
- **[Habilidades para agentes](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/agent_skills.md)**: habilidades específicas como `intlayer-config`, `intlayer-cli` e `intlayer-content`, además de una por framework, que enseñan a un agente tu configuración de enrutamiento y los tipos de nodo de contenido.
|
|
823
|
+
- **[Plugin de ESLint](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/eslint.md)**: `no-raw-text` marca las cadenas codificadas de forma fija, con reglas adicionales para claves de diccionario estáticas y contenido sin usar.
|
|
824
|
+
|
|
825
|
+
</Question>
|
|
826
|
+
|
|
827
|
+
<Question title="¿Cómo añado un segmento de idioma a mis rutas?">
|
|
828
|
+
|
|
829
|
+
Declara un segmento `:locale` en tu árbol de rutas y deja que Intlayer lo resuelva. `validatePrefix` te indica si el segmento es un idioma declarado, así que un prefijo desconocido devuelve un 404 en lugar de renderizar una página duplicada, y `getLocalizedUrl` reescribe cualquier ruta al idioma de destino. Si usas rutas del sistema de archivos, sigue la [variante de rutas del sistema de archivos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_with_react_router_v7_fs_routes.md) de esta guía.
|
|
830
|
+
|
|
831
|
+
</Question>
|
|
832
|
+
|
|
833
|
+
<Question title="¿Tengo que poner el idioma en la URL?">
|
|
834
|
+
|
|
835
|
+
No. `routing.mode` acepta `"prefix-no-default"` (el valor por defecto), `"prefix-all"`, `"no-prefix"` y `"search-params"`, y `routing.domains` asigna un idioma a su propio dominio. El idioma se conserva en una cookie en cualquier caso. Consulta la [referencia de configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md).
|
|
836
|
+
|
|
837
|
+
</Question>
|
|
838
|
+
|
|
839
|
+
<Question title="¿Funciona con React Router en modo framework, con SSR y loaders?">
|
|
840
|
+
|
|
841
|
+
Sí. El contenido se resuelve durante el renderizado en el servidor, y el idioma activo está disponible en los loaders y las actions, así que los datos del servidor se pueden localizar en la misma pasada que la página. La navegación del cliente mantiene el idioma sin una recarga completa.
|
|
842
|
+
|
|
843
|
+
</Question>
|
|
844
|
+
|
|
845
|
+
<Question title="¿Cómo añado etiquetas hreflang para SEO?">
|
|
846
|
+
|
|
847
|
+
Construye el mapa de alternativas con `getMultilingualUrls` y emítelo desde el `meta` o `links` de tu ruta, incluyendo una entrada `x-default`. La misma utilidad alimenta un `sitemap.xml` localizado.
|
|
848
|
+
|
|
849
|
+
</Question>
|
|
850
|
+
|
|
851
|
+
<Question title="¿Cómo creo un selector de idioma que permanezca en la página actual?">
|
|
852
|
+
|
|
853
|
+
Usa `useLocale` para los idiomas activo y disponibles, y `getLocalizedUrl` para traducir la ruta actual al idioma de destino. El usuario permanece en la misma ruta en lugar de ser devuelto a la página de inicio, lo que además evita perder la posición del scroll y los parámetros de consulta.
|
|
854
|
+
|
|
855
|
+
</Question>
|
|
856
|
+
|
|
857
|
+
<Question title="¿Cómo traduzco la aplicación automáticamente con IA?">
|
|
858
|
+
|
|
859
|
+
Ejecuta `npx intlayer fill`, que rellena las traducciones que faltan con el LLM de tu elección usando tu propio proveedor y tu clave de API. Consulta el [comando fill](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/fill.md) y la [integración de CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/CI_CD.md).
|
|
860
|
+
|
|
861
|
+
</Question>
|
|
862
|
+
|
|
863
|
+
<Question title="¿Intlayer admite plurales, género y texto enriquecido?">
|
|
864
|
+
|
|
865
|
+
Sí: [formas plurales](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/plurial.md), [contenido según el género](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/gender.md), condiciones, [inserciones](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/insertion.md), [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/markdown.md), y [formateadores](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/formatters.md) para números, fechas y monedas.
|
|
866
|
+
|
|
867
|
+
</Question>
|
|
868
|
+
|
|
869
|
+
<Question title="¿Cómo pueden los traductores editar el contenido sin tocar el código?">
|
|
870
|
+
|
|
871
|
+
A través del [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_visual_editor.md) autoalojado o del [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_CMS.md), que externaliza el contenido para que pueda cambiar sin un despliegue.
|
|
872
|
+
|
|
873
|
+
</Question>
|
|
874
|
+
|
|
875
|
+
<Question title="¿Es Intlayer gratuito y de código abierto?">
|
|
876
|
+
|
|
877
|
+
Sí, bajo la licencia Apache 2.0, uso comercial incluido. El CMS alojado es un servicio de pago opcional que también puede [autoalojarse](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/self_hosting.md).
|
|
878
|
+
|
|
879
|
+
</Question>
|
|
880
|
+
|
|
881
|
+
</FAQ>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-12-07
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-08-30
|
|
4
4
|
title: "React Router v7 i18n - Guía completa para traducir tu aplicación"
|
|
5
5
|
description: "Sin más i18next. La guía 2026 para crear una aplicación React Router v7 multilingüe (i18n). Traduce con agentes de IA y optimiza el tamaño del bundle, SEO y rendimiento."
|
|
6
6
|
keywords:
|
|
@@ -50,7 +50,6 @@ Para el enrutamiento del lado del cliente, consulte la guía [Intlayer con React
|
|
|
50
50
|
En comparación con soluciones principales como `react-i18next` o `i18next`, Intlayer es una solución que viene con optimizaciones integradas como:
|
|
51
51
|
|
|
52
52
|
<AccordionGroup>
|
|
53
|
-
|
|
54
53
|
<Accordion header="Cobertura completa del enrutador React">
|
|
55
54
|
|
|
56
55
|
Intlayer está optimizado para funcionar perfectamente con React Router al ofrecer **enrutamiento con reconocimiento local**, **middleware para detección local** y todas las funciones necesarias para escalar la internacionalización (i18n).
|
|
@@ -745,8 +744,6 @@ bun run build # Or bun run dev
|
|
|
745
744
|
</Tab>
|
|
746
745
|
</Tabs>
|
|
747
746
|
|
|
748
|
-
---
|
|
749
|
-
|
|
750
747
|
</Step>
|
|
751
748
|
|
|
752
749
|
</Steps>
|
|
@@ -816,3 +813,113 @@ Para profundizar, puedes implementar el [editor visual](https://github.com/aymer
|
|
|
816
813
|
- [Configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md)
|
|
817
814
|
|
|
818
815
|
Esta guía completa proporciona todo lo que necesitas para integrar Intlayer con React Router v7 usando enrutamiento basado en el sistema de archivos para una aplicación completamente internacionalizada con enrutamiento consciente del idioma y soporte para TypeScript.
|
|
816
|
+
|
|
817
|
+
## Preguntas frecuentes
|
|
818
|
+
|
|
819
|
+
<FAQ>
|
|
820
|
+
|
|
821
|
+
<Question title="¿Qué soluciones existen para internacionalizar una aplicación de React Router v7?">
|
|
822
|
+
|
|
823
|
+
- **`react-i18next` / `i18next`**: espacios de nombres JSON cargados en tiempo de ejecución, con un detector de idioma independiente conectado al router a mano.
|
|
824
|
+
- **`react-intl`** y **`Lingui`**: mensajes ICU con un paso de extracción.
|
|
825
|
+
- **`Intlayer`**: contenido declarado junto a cada componente y compilado en tiempo de compilación, tipado de extremo a extremo, con utilidades de enrutamiento por idioma, traducción con IA, un editor visual y un CMS.
|
|
826
|
+
|
|
827
|
+
Consulta [por qué Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/interest_of_intlayer.md) y el [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/benchmark/index.md).
|
|
828
|
+
|
|
829
|
+
</Question>
|
|
830
|
+
|
|
831
|
+
<Question title="¿Cuánto añade la i18n al tamaño del bundle de mi aplicación React Router?">
|
|
832
|
+
|
|
833
|
+
Mucho menos que una configuración basada en espacios de nombres, porque una página nunca descarga un catálogo que no renderiza. El marcado renderizado en el servidor resuelve su contenido en el servidor, y el compilador de tiempo de compilación reemplaza las llamadas a `useIntlayer` por las entradas de diccionario exactas que usa un componente, de modo que se descartan las claves sin usar y los idiomas sin usar, y los [diccionarios dinámicos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dynamic_dictionaries/index.md) reparten el resto por idioma. Frente a las alternativas habituales, Intlayer reduce el tamaño del bundle y de la página hasta en un 50%. Consulta la [optimización del bundle](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/bundle_optimization.md) y el [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/benchmark/index.md).
|
|
834
|
+
|
|
835
|
+
</Question>
|
|
836
|
+
|
|
837
|
+
<Question title="¿Puedo migrar desde `react-i18next` o `react-intl` sin reescribir mis componentes?">
|
|
838
|
+
|
|
839
|
+
Sí, y hay dos caminos. Puedes migrar el contenido de forma progresiva con la [guía de migración de react-i18next](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/migration_from_react-i18next_to_intlayer.md) o la [guía de migración de i18next](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/migration_from_i18next_to_intlayer.md). O puedes mantener tu API actual por completo: los [adaptadores de compatibilidad](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/compat/index.md) exponen exactamente la misma API que `react-i18next`, `react-intl` y `i18next`, pero servida por diccionarios de Intlayer, así que cambian los imports y el código de los componentes no.
|
|
840
|
+
|
|
841
|
+
</Question>
|
|
842
|
+
|
|
843
|
+
<Question title="¿Puedo conservar mis archivos de traducción JSON existentes?">
|
|
844
|
+
|
|
845
|
+
Sí. El [plugin de sincronización JSON](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/plugins/sync-json.md) mantiene tus archivos `/messages/{locale}/{namespace}.json` como fuente de verdad y genera diccionarios de Intlayer a partir de ellos, en ambas direcciones. Un [plugin de sincronización PO](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/plugins/sync-po.md) hace lo mismo para los catálogos gettext, y los [archivos por idioma](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/per_locale_file.md) te permiten dividir el contenido por idioma en lugar de agrupar los idiomas en un solo archivo.
|
|
846
|
+
|
|
847
|
+
</Question>
|
|
848
|
+
|
|
849
|
+
<Question title="¿Tengo que trasladar mi contenido clave por clave?">
|
|
850
|
+
|
|
851
|
+
No. Ejecuta `npx intlayer extract` e Intlayer lee tus componentes, extrae las cadenas visibles para el usuario y escribe un archivo `.content` junto a cada uno, así que revisas un diff en lugar de copiar cadenas a un catálogo una por una. El paso 11 de esta guía lo explica paso a paso.
|
|
852
|
+
|
|
853
|
+
Para una canalización totalmente automatizada, el [compilador de Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/compiler.md) hace lo mismo en tiempo de compilación: escanea tu código JSX, TSX, Vue y Svelte en cada cambio, genera los diccionarios y los mantiene sincronizados mediante el reemplazo de módulos en caliente, así que no hay ninguna clave que mantener a mano.
|
|
854
|
+
|
|
855
|
+
Conviene conocer dos límites antes de activar el compilador. Funciona por análisis estático, así que las cadenas que solo existen en tiempo de ejecución, como los códigos de error de la API o los campos del CMS, quedan fuera de su alcance. Y tiene que distinguir el texto visible para el usuario de la lógica de la aplicación, como `className="active"` o un código de estado, lo que requiere unas pocas anotaciones en una base de código grande. El [comando extract](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/extract.md) evita ambos manteniéndote en el proceso.
|
|
856
|
+
|
|
857
|
+
</Question>
|
|
858
|
+
|
|
859
|
+
<Question title="¿Qué herramientas para editores y agentes de IA están disponibles?">
|
|
860
|
+
|
|
861
|
+
Cinco piezas, todas opcionales:
|
|
862
|
+
|
|
863
|
+
- **[Extensión de VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/vs_code_extension.md)**: salta de una clave `useIntlayer` al archivo de contenido que la declara, extrae contenido de un componente y ejecuta build, fill, test, push y pull desde la paleta de comandos o desde una pestaña de Intlayer dedicada.
|
|
864
|
+
- **[Servidor LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/lsp.md)**: el mismo conocimiento en cualquier editor que hable LSP, con ir a la definición, buscar todas las referencias, vistas previas al pasar el cursor de un valor traducido, autocompletado de claves y campos, y un aviso cuando una clave no está declarada en ninguna parte. También resuelve las llamadas a `i18next`, `react-i18next`, `next-intl` y `use-intl`, lo que ayuda durante la migración.
|
|
865
|
+
- **[Servidor MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/mcp_server.md)**: expone la documentación y la CLI de Intlayer a Cursor, VS Code, Claude Desktop, Claude Code y ChatGPT, para que un asistente responda a partir de la documentación actual en lugar de adivinar, y pueda ejecutar comandos como `intlayer fill` por sí mismo.
|
|
866
|
+
- **[Habilidades para agentes](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/agent_skills.md)**: habilidades específicas como `intlayer-config`, `intlayer-cli` e `intlayer-content`, además de una por framework, que enseñan a un agente tu configuración de enrutamiento y los tipos de nodo de contenido.
|
|
867
|
+
- **[Plugin de ESLint](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/eslint.md)**: `no-raw-text` marca las cadenas codificadas de forma fija, con reglas adicionales para claves de diccionario estáticas y contenido sin usar.
|
|
868
|
+
|
|
869
|
+
</Question>
|
|
870
|
+
|
|
871
|
+
<Question title="¿Cuál es la diferencia entre esta guía y la guía de React Router basada en configuración?">
|
|
872
|
+
|
|
873
|
+
Solo cómo se declaran las rutas. Esta guía usa las convenciones de rutas del sistema de archivos, donde el segmento de idioma procede de los nombres de archivo, mientras que la [guía basada en configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_with_react_router_v7.md) declara el mismo árbol en `routes.ts`. Las declaraciones de contenido, los hooks y la configuración son idénticos en ambas, así que puedes cambiar de convención sin tocar tu i18n.
|
|
874
|
+
|
|
875
|
+
</Question>
|
|
876
|
+
|
|
877
|
+
<Question title="¿Cómo añado un segmento de idioma con las rutas del sistema de archivos?">
|
|
878
|
+
|
|
879
|
+
Lo cubren los pasos 4 y 5: el idioma se convierte en un segmento dinámico en los nombres de archivo de las rutas, así que cada página bajo él recibe el idioma activo. `validatePrefix` te indica si ese segmento es un idioma declarado, así que `/xx/about` devuelve un 404 real en lugar de renderizar una página duplicada, y `getLocalizedUrl` reescribe cualquier ruta al idioma de destino.
|
|
880
|
+
|
|
881
|
+
</Question>
|
|
882
|
+
|
|
883
|
+
<Question title="¿Tengo que poner el idioma en la URL?">
|
|
884
|
+
|
|
885
|
+
No. `routing.mode` acepta `"prefix-no-default"` (el valor por defecto), `"prefix-all"`, `"no-prefix"` y `"search-params"`, y `routing.domains` asigna cada idioma a su propio dominio. Consulta la [referencia de configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md).
|
|
886
|
+
|
|
887
|
+
</Question>
|
|
888
|
+
|
|
889
|
+
<Question title="¿Cómo añado etiquetas hreflang para SEO?">
|
|
890
|
+
|
|
891
|
+
Construye el mapa de alternativas con `getMultilingualUrls` y emítelo desde el `meta` o `links` de tu ruta, incluyendo una entrada `x-default`. La misma utilidad alimenta un `sitemap.xml` localizado.
|
|
892
|
+
|
|
893
|
+
</Question>
|
|
894
|
+
|
|
895
|
+
<Question title="¿Cómo creo un selector de idioma que permanezca en la página actual?">
|
|
896
|
+
|
|
897
|
+
El paso 8 muestra el componente. `useLocale` expone el idioma activo, los idiomas declarados y un setter que conserva la elección, mientras que `getLocalizedUrl` reescribe la ruta actual al idioma de destino, de modo que el lector permanece en la misma ruta en lugar de ser enviado a la página de inicio.
|
|
898
|
+
|
|
899
|
+
</Question>
|
|
900
|
+
|
|
901
|
+
<Question title="¿Cómo traduzco la aplicación automáticamente con IA?">
|
|
902
|
+
|
|
903
|
+
Ejecuta `npx intlayer fill`. Rellena las traducciones que faltan con el LLM de tu elección, usando tu propio proveedor y tu clave de API, y `--git-diff` limita la ejecución al contenido modificado en la rama. Consulta el [comando fill](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/fill.md) y la [integración de CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/CI_CD.md).
|
|
904
|
+
|
|
905
|
+
</Question>
|
|
906
|
+
|
|
907
|
+
<Question title="¿Intlayer admite plurales, género y texto enriquecido?">
|
|
908
|
+
|
|
909
|
+
Sí: [formas plurales](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/plurial.md), [contenido según el género](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/gender.md), condiciones, [inserciones](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/insertion.md), [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/markdown.md) y [formateadores](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/formatters.md) para números, fechas y monedas.
|
|
910
|
+
|
|
911
|
+
</Question>
|
|
912
|
+
|
|
913
|
+
<Question title="¿Cómo pueden los traductores editar el contenido sin tocar el código?">
|
|
914
|
+
|
|
915
|
+
A través del [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_visual_editor.md), que se ejecuta en tu propia infraestructura y permite que cualquiera edite texto en su sitio en la aplicación en ejecución, o del [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_CMS.md), que externaliza el contenido para que pueda cambiar sin un despliegue.
|
|
916
|
+
|
|
917
|
+
</Question>
|
|
918
|
+
|
|
919
|
+
<Question title="¿Es Intlayer gratuito y de código abierto?">
|
|
920
|
+
|
|
921
|
+
Sí, bajo la licencia Apache 2.0, uso comercial incluido. El CMS alojado es un servicio de pago opcional que también puede [autoalojarse](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/self_hosting.md).
|
|
922
|
+
|
|
923
|
+
</Question>
|
|
924
|
+
|
|
925
|
+
</FAQ>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-08-06
|
|
3
|
-
updatedAt: 2026-08-
|
|
3
|
+
updatedAt: 2026-08-30
|
|
4
4
|
title: "Solid Start i18n - Guía completa para traducir tu aplicación"
|
|
5
5
|
description: "Sin más i18next. La guía 2026 para crear una aplicación SolidStart multilingüe (i18n). Enrutamiento de locale renderizado en servidor, hreflang, sitemap y traducción asistida por IA."
|
|
6
6
|
keywords:
|
|
@@ -69,7 +69,6 @@ Esta guía cubre una aplicación SolidStart **renderizada en el servidor**: la d
|
|
|
69
69
|
En comparación con las soluciones principales como `@solid-primitives/i18n` o `i18next`, Intlayer es una solución que viene con optimizaciones integradas como:
|
|
70
70
|
|
|
71
71
|
<AccordionGroup>
|
|
72
|
-
|
|
73
72
|
<Accordion header="Cobertura completa de Solid">
|
|
74
73
|
|
|
75
74
|
Intlayer está optimizado para funcionar perfectamente con Solid ofreciendo **alcance de contenido a nivel de componente**, **traducciones reactivas**, y todas las funciones necesarias para escalar la internacionalización (i18n).
|
|
@@ -128,15 +127,15 @@ npx intlayer init --interactive
|
|
|
128
127
|
```
|
|
129
128
|
|
|
130
129
|
```bash packageManager="pnpm"
|
|
131
|
-
pnpm dlx intlayer
|
|
130
|
+
pnpm dlx intlayer init --interactive
|
|
132
131
|
```
|
|
133
132
|
|
|
134
133
|
```bash packageManager="yarn"
|
|
135
|
-
yarn dlx intlayer
|
|
134
|
+
yarn dlx intlayer init --interactive
|
|
136
135
|
```
|
|
137
136
|
|
|
138
137
|
```bash packageManager="bun"
|
|
139
|
-
bunx intlayer
|
|
138
|
+
bunx intlayer init --interactive
|
|
140
139
|
```
|
|
141
140
|
|
|
142
141
|
> la marca `--interactive` es opcional. Usa `intlayer-cli init` si eres un agente de IA.
|
|
@@ -1088,3 +1087,119 @@ Para ir más lejos, puedes implementar el [editor visual](https://github.com/aym
|
|
|
1088
1087
|
- [Hook useLocale](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/packages/solid-intlayer/useLocale.md)
|
|
1089
1088
|
- [Declaración de contenido](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/content_file.md)
|
|
1090
1089
|
- [Configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md)
|
|
1090
|
+
|
|
1091
|
+
## Preguntas frecuentes
|
|
1092
|
+
|
|
1093
|
+
<FAQ>
|
|
1094
|
+
|
|
1095
|
+
<Question title="¿Qué soluciones existen para internacionalizar una aplicación de Solid Start?">
|
|
1096
|
+
|
|
1097
|
+
- **`@solid-primitives/i18n`**: la primitiva de la comunidad, un diccionario plano que montas, cargas y tipas tú mismo.
|
|
1098
|
+
- **`i18next`** con un envoltorio para Solid: catálogos maduros, pero nada para el enrutamiento por idioma ni el renderizado en el servidor en Solid Start.
|
|
1099
|
+
- **`Intlayer`**: contenido declarado junto a cada componente y compilado en tiempo de compilación, con rutas localizadas, resolución del idioma en el servidor, enlaces canónicos y hreflang, un sitemap multilingüe, traducción con IA, un editor visual y un CMS.
|
|
1100
|
+
|
|
1101
|
+
En Solid Start la diferencia se nota en las piezas del servidor, que esta guía cubre como pasos dedicados en lugar de dejártelas a ti. Consulta [por qué Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/interest_of_intlayer.md) y el [benchmark de i18n de Solid](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/benchmark/solid.md).
|
|
1102
|
+
|
|
1103
|
+
</Question>
|
|
1104
|
+
|
|
1105
|
+
<Question title="¿Cuánto añade la i18n al tamaño del bundle de mi aplicación Solid Start?">
|
|
1106
|
+
|
|
1107
|
+
Mucho menos que una configuración basada en espacios de nombres, porque una página nunca descarga un catálogo que no renderiza. El marcado renderizado en el servidor resuelve su contenido en el servidor, y el compilador de tiempo de compilación reemplaza las llamadas a `useIntlayer` por las entradas de diccionario exactas que usa un componente, de modo que se descartan las claves sin usar y los idiomas sin usar, y los [diccionarios dinámicos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dynamic_dictionaries/index.md) reparten el resto por idioma. Frente a las alternativas habituales, Intlayer reduce el tamaño del bundle y de la página hasta en un 50%. Consulta la [optimización del bundle](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/bundle_optimization.md) y el [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/benchmark/solid.md).
|
|
1108
|
+
|
|
1109
|
+
</Question>
|
|
1110
|
+
|
|
1111
|
+
<Question title="¿Puedo migrar desde `@solid-primitives/i18n` o `i18next` sin reescribir mis componentes?">
|
|
1112
|
+
|
|
1113
|
+
En gran medida. Sigue la [guía de migración de i18next](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/migration_from_i18next_to_intlayer.md) para trasladar el contenido. También puedes migrar de forma gradual: el [plugin de sincronización JSON](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/plugins/sync-json.md) mantiene tus catálogos JSON existentes como fuente de verdad y genera diccionarios de Intlayer a partir de ellos, de modo que ambas capas se mantienen sincronizadas mientras trasladas los componentes uno a uno.
|
|
1114
|
+
|
|
1115
|
+
</Question>
|
|
1116
|
+
|
|
1117
|
+
<Question title="¿Puedo conservar mis archivos de traducción JSON existentes?">
|
|
1118
|
+
|
|
1119
|
+
Sí. El [plugin de sincronización JSON](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/plugins/sync-json.md) mantiene tus archivos `/messages/{locale}/{namespace}.json` como fuente de verdad y genera diccionarios de Intlayer a partir de ellos, en ambas direcciones. Un [plugin de sincronización PO](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/plugins/sync-po.md) hace lo mismo para los catálogos gettext, y los [archivos por idioma](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/per_locale_file.md) te permiten dividir el contenido por idioma en lugar de agrupar los idiomas en un solo archivo.
|
|
1120
|
+
|
|
1121
|
+
</Question>
|
|
1122
|
+
|
|
1123
|
+
<Question title="¿Tengo que trasladar mi contenido clave por clave?">
|
|
1124
|
+
|
|
1125
|
+
No. Ejecuta `npx intlayer extract` e Intlayer lee tus componentes, extrae las cadenas visibles para el usuario y escribe un archivo `.content` junto a cada uno, así que revisas un diff en lugar de copiar cadenas a un catálogo una por una. El paso 15 de esta guía lo explica paso a paso.
|
|
1126
|
+
|
|
1127
|
+
Para una canalización totalmente automatizada, el [compilador de Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/compiler.md) hace lo mismo en tiempo de compilación: escanea tu código JSX, TSX, Vue y Svelte en cada cambio, genera los diccionarios y los mantiene sincronizados mediante el reemplazo de módulos en caliente, así que no hay ninguna clave que mantener a mano.
|
|
1128
|
+
|
|
1129
|
+
Conviene conocer dos límites antes de activar el compilador. Funciona por análisis estático, así que las cadenas que solo existen en tiempo de ejecución, como los códigos de error de la API o los campos del CMS, quedan fuera de su alcance. Y tiene que distinguir el texto visible para el usuario de la lógica de la aplicación, como `className="active"` o un código de estado, lo que requiere unas pocas anotaciones en una base de código grande. El [comando extract](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/extract.md) evita ambos manteniéndote en el proceso.
|
|
1130
|
+
|
|
1131
|
+
</Question>
|
|
1132
|
+
|
|
1133
|
+
<Question title="¿Qué herramientas para editores y agentes de IA están disponibles?">
|
|
1134
|
+
|
|
1135
|
+
Cinco piezas, todas opcionales:
|
|
1136
|
+
|
|
1137
|
+
- **[Extensión de VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/vs_code_extension.md)**: salta de una clave `useIntlayer` al archivo de contenido que la declara, extrae contenido de un componente y ejecuta build, fill, test, push y pull desde la paleta de comandos o desde una pestaña de Intlayer dedicada.
|
|
1138
|
+
- **[Servidor LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/lsp.md)**: el mismo conocimiento en cualquier editor que hable LSP, con ir a la definición, buscar todas las referencias, vistas previas al pasar el cursor de un valor traducido, autocompletado de claves y campos, y un aviso cuando una clave no está declarada en ninguna parte. También resuelve las llamadas a `i18next`, `react-i18next`, `next-intl` y `use-intl`, lo que ayuda durante la migración.
|
|
1139
|
+
- **[Servidor MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/mcp_server.md)**: expone la documentación y la CLI de Intlayer a Cursor, VS Code, Claude Desktop, Claude Code y ChatGPT, para que un asistente responda a partir de la documentación actual en lugar de adivinar, y pueda ejecutar comandos como `intlayer fill` por sí mismo.
|
|
1140
|
+
- **[Habilidades para agentes](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/agent_skills.md)**: habilidades específicas como `intlayer-config`, `intlayer-cli` e `intlayer-content`, además de una por framework, que enseñan a un agente tu configuración de enrutamiento y los tipos de nodo de contenido.
|
|
1141
|
+
- **[Plugin de ESLint](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/eslint.md)**: `no-raw-text` marca las cadenas codificadas de forma fija, con reglas adicionales para claves de diccionario estáticas y contenido sin usar.
|
|
1142
|
+
|
|
1143
|
+
</Question>
|
|
1144
|
+
|
|
1145
|
+
<Question title="¿Intlayer funciona con el renderizado en el servidor de Solid Start?">
|
|
1146
|
+
|
|
1147
|
+
Sí. El paso 6 proporciona el idioma a la aplicación en el servidor y el paso 7 establece allí los atributos `lang` y `dir`, así que la primera respuesta HTML ya lleva el idioma correcto, que es lo que leen los rastreadores y los bots de vista previa social.
|
|
1148
|
+
|
|
1149
|
+
</Question>
|
|
1150
|
+
|
|
1151
|
+
<Question title="¿Cambiar el idioma vuelve a renderizar toda mi aplicación?">
|
|
1152
|
+
|
|
1153
|
+
No. El contenido se respalda con señales de Solid, así que cambiar de idioma actualiza solo los nodos del DOM que leen los valores modificados, sin volver a ejecutar los componentes que los rodean.
|
|
1154
|
+
|
|
1155
|
+
</Question>
|
|
1156
|
+
|
|
1157
|
+
<Question title="¿Cómo añado enlaces canónicos y hreflang?">
|
|
1158
|
+
|
|
1159
|
+
Lo cubre el paso 11. `getMultilingualUrls` construye las alternativas para cada idioma declarado, incluida `x-default`, y el paso 13 introduce los mismos datos en un sitemap multilingüe para que cada versión de idioma de una página enlace con las demás.
|
|
1160
|
+
|
|
1161
|
+
</Question>
|
|
1162
|
+
|
|
1163
|
+
<Question title="¿Cómo gestiono las páginas 404 en rutas localizadas?">
|
|
1164
|
+
|
|
1165
|
+
Lo cubre el paso 12. `validatePrefix` te indica si el segmento de idioma de la URL es un idioma declarado, así que `/xx/about` devuelve un 404 real en lugar de tratarse como una ruta e indexarse como una página duplicada.
|
|
1166
|
+
|
|
1167
|
+
</Question>
|
|
1168
|
+
|
|
1169
|
+
<Question title="¿Tengo que poner el idioma en la URL?">
|
|
1170
|
+
|
|
1171
|
+
No. `routing.mode` acepta `"prefix-no-default"` (el valor por defecto), `"prefix-all"`, `"no-prefix"` y `"search-params"`, y `routing.domains` asigna cada idioma a su propio dominio. Consulta la [referencia de configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md).
|
|
1172
|
+
|
|
1173
|
+
</Question>
|
|
1174
|
+
|
|
1175
|
+
<Question title="¿Cómo obtengo el idioma en una función de servidor?">
|
|
1176
|
+
|
|
1177
|
+
Lo cubre el paso 14. El idioma resuelto para la solicitud está disponible dentro de las funciones de servidor, así que los datos obtenidos allí pueden localizarse en la misma pasada en lugar de traducirse de nuevo en el cliente.
|
|
1178
|
+
|
|
1179
|
+
</Question>
|
|
1180
|
+
|
|
1181
|
+
<Question title="¿Cómo traduzco la aplicación automáticamente con IA?">
|
|
1182
|
+
|
|
1183
|
+
Ejecuta `npx intlayer fill`. Rellena las traducciones que faltan con el LLM de tu elección, usando tu propio proveedor y tu clave de API, y `--git-diff` limita la ejecución al contenido modificado en la rama. Consulta el [comando fill](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/fill.md) y la [integración de CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/CI_CD.md).
|
|
1184
|
+
|
|
1185
|
+
</Question>
|
|
1186
|
+
|
|
1187
|
+
<Question title="¿Intlayer admite plurales, género y texto enriquecido?">
|
|
1188
|
+
|
|
1189
|
+
Sí: [formas plurales](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/plurial.md), [contenido según el género](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/gender.md), condiciones, [inserciones](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/insertion.md), [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/markdown.md) y [formateadores](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/formatters.md) para números, fechas y monedas.
|
|
1190
|
+
|
|
1191
|
+
</Question>
|
|
1192
|
+
|
|
1193
|
+
<Question title="¿Cómo pueden los traductores editar el contenido sin tocar el código?">
|
|
1194
|
+
|
|
1195
|
+
A través del [editor visual](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_visual_editor.md), que se ejecuta en tu propia infraestructura y permite que cualquiera edite texto en su sitio en la aplicación en ejecución, o del [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/intlayer_CMS.md), que externaliza el contenido para que pueda cambiar sin un despliegue.
|
|
1196
|
+
|
|
1197
|
+
</Question>
|
|
1198
|
+
|
|
1199
|
+
<Question title="¿Es Intlayer gratuito y de código abierto?">
|
|
1200
|
+
|
|
1201
|
+
Sí, bajo la licencia Apache 2.0, uso comercial incluido. El CMS alojado es un servicio de pago opcional que también puede [autoalojarse](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/self_hosting.md).
|
|
1202
|
+
|
|
1203
|
+
</Question>
|
|
1204
|
+
|
|
1205
|
+
</FAQ>
|
|
@@ -37,7 +37,6 @@ author: aymericzip
|
|
|
37
37
|
En comparación con soluciones principales como `storybook-react-i18next` o `i18next`, Intlayer es una solución que viene con optimizaciones integradas como:
|
|
38
38
|
|
|
39
39
|
<AccordionGroup>
|
|
40
|
-
|
|
41
40
|
<Accordion header="Cobertura completa del libro de cuentos">
|
|
42
41
|
|
|
43
42
|
Intlayer está optimizado para funcionar perfectamente con Storybook al ofrecer **decoradores de historias multilingües**, **cambio de configuración regional** y todas las funciones necesarias para escalar la internacionalización (i18n) en todo su sistema de diseño.
|
|
@@ -128,8 +127,6 @@ bun add vite-intlayer --dev
|
|
|
128
127
|
| `react-intlayer` | Enlaces para React - `IntlayerProvider`, hook `useIntlayer` |
|
|
129
128
|
| `vite-intlayer` | Complemento de Vite - vigila y compila archivos de contenido |
|
|
130
129
|
|
|
131
|
-
---
|
|
132
|
-
|
|
133
130
|
</Step>
|
|
134
131
|
|
|
135
132
|
<Step number={2} title="Crear una Configuración de Intlayer">
|
|
@@ -159,8 +156,6 @@ export default config;
|
|
|
159
156
|
|
|
160
157
|
> Para obtener la lista completa de opciones, consulta la [referencia de configuración](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/configuration.md).
|
|
161
158
|
|
|
162
|
-
---
|
|
163
|
-
|
|
164
159
|
</Step>
|
|
165
160
|
|
|
166
161
|
<Step number={3} title="Agregar el Complemento de Vite a Storybook">
|
|
@@ -208,8 +203,6 @@ export default config;
|
|
|
208
203
|
|
|
209
204
|
El complemento `intlayer()` vigila tus archivos `*.content.ts` y vuelve a generar los diccionarios automáticamente cada vez que cambian durante el desarrollo de Storybook.
|
|
210
205
|
|
|
211
|
-
---
|
|
212
|
-
|
|
213
206
|
</Step>
|
|
214
207
|
|
|
215
208
|
<Step number={4} title="Agregar el Decorador `IntlayerProvider` y una Barra de Herramientas de Idioma">
|
|
@@ -294,8 +287,6 @@ bun add intlayer react-intlayer
|
|
|
294
287
|
bun add @intlayer/webpack --dev
|
|
295
288
|
```
|
|
296
289
|
|
|
297
|
-
---
|
|
298
|
-
|
|
299
290
|
</Step>
|
|
300
291
|
|
|
301
292
|
<Step number={2} title="Crear una Configuración de Intlayer">
|
|
@@ -318,8 +309,6 @@ const config: IntlayerConfig = {
|
|
|
318
309
|
export default config;
|
|
319
310
|
```
|
|
320
311
|
|
|
321
|
-
---
|
|
322
|
-
|
|
323
312
|
</Step>
|
|
324
313
|
|
|
325
314
|
<Step number={3} title="Configurar el Webpack de Storybook">
|
|
@@ -347,8 +336,6 @@ const config: StorybookConfig = {
|
|
|
347
336
|
export default config;
|
|
348
337
|
```
|
|
349
338
|
|
|
350
|
-
---
|
|
351
|
-
|
|
352
339
|
</Step>
|
|
353
340
|
|
|
354
341
|
<Step number={4} title="Agregar el Decorador `IntlayerProvider` y una Barra de Herramientas de Idioma">
|