@intlayer/docs 9.5.3 → 9.5.4
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 +8 -8
- package/blog/ar/history_of_i18n.md +54 -54
- package/blog/ar/how_to_pick_react_i18n_library.md +548 -0
- package/blog/ar/how_to_pick_solid_i18n_library.md +438 -0
- package/blog/ar/how_to_pick_svelte_i18n_library.md +454 -0
- package/blog/ar/how_to_pick_vue_i18n_library.md +442 -0
- package/blog/ar/is_i18next_outdated.md +5 -1
- package/blog/ar/is_next-intl_outdated.md +5 -1
- package/blog/ar/is_vue-i18n_outdated.md +7 -1
- package/blog/ar/next-i18next_vs_next-intl_vs_intlayer.md +8 -4
- package/blog/ar/per-component_vs_centralized_i18n.md +9 -4
- package/blog/ar/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/de/history_of_i18n.md +54 -54
- package/blog/de/how_to_pick_react_i18n_library.md +548 -0
- package/blog/de/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/de/how_to_pick_svelte_i18n_library.md +454 -0
- package/blog/de/how_to_pick_vue_i18n_library.md +448 -0
- package/blog/de/is_i18next_outdated.md +5 -1
- package/blog/de/is_next-intl_outdated.md +5 -1
- package/blog/de/is_vue-i18n_outdated.md +7 -1
- package/blog/de/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/de/per-component_vs_centralized_i18n.md +9 -4
- package/blog/de/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/en/history_of_i18n.md +54 -54
- package/blog/en/how_to_pick_react_i18n_library.md +542 -0
- package/blog/en/how_to_pick_solid_i18n_library.md +438 -0
- package/blog/en/how_to_pick_svelte_i18n_library.md +448 -0
- package/blog/en/how_to_pick_vue_i18n_library.md +442 -0
- package/blog/en/is_i18next_outdated.md +5 -1
- package/blog/en/is_next-intl_outdated.md +5 -1
- package/blog/en/is_vue-i18n_outdated.md +7 -1
- package/blog/en/list_i18n_technologies/frameworks/react-router.md +2 -3
- package/blog/en/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/en/per-component_vs_centralized_i18n.md +9 -4
- package/blog/en/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/en-GB/history_of_i18n.md +54 -54
- package/blog/en-GB/how_to_pick_react_i18n_library.md +542 -0
- package/blog/en-GB/how_to_pick_solid_i18n_library.md +438 -0
- package/blog/en-GB/how_to_pick_svelte_i18n_library.md +448 -0
- package/blog/en-GB/how_to_pick_vue_i18n_library.md +448 -0
- package/blog/en-GB/is_i18next_outdated.md +5 -1
- package/blog/en-GB/is_next-intl_outdated.md +5 -1
- package/blog/en-GB/is_vue-i18n_outdated.md +7 -1
- package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/en-GB/per-component_vs_centralized_i18n.md +9 -4
- package/blog/en-GB/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/es/history_of_i18n.md +54 -54
- package/blog/es/how_to_pick_react_i18n_library.md +542 -0
- package/blog/es/how_to_pick_solid_i18n_library.md +446 -0
- package/blog/es/how_to_pick_svelte_i18n_library.md +448 -0
- package/blog/es/how_to_pick_vue_i18n_library.md +442 -0
- package/blog/es/is_i18next_outdated.md +5 -1
- package/blog/es/is_next-intl_outdated.md +5 -1
- package/blog/es/is_vue-i18n_outdated.md +7 -1
- package/blog/es/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/es/per-component_vs_centralized_i18n.md +9 -4
- package/blog/es/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/fr/history_of_i18n.md +54 -54
- package/blog/fr/how_to_pick_react_i18n_library.md +542 -0
- package/blog/fr/how_to_pick_solid_i18n_library.md +438 -0
- package/blog/fr/how_to_pick_svelte_i18n_library.md +448 -0
- package/blog/fr/how_to_pick_vue_i18n_library.md +442 -0
- package/blog/fr/is_i18next_outdated.md +5 -1
- package/blog/fr/is_next-intl_outdated.md +5 -1
- package/blog/fr/is_vue-i18n_outdated.md +7 -1
- package/blog/fr/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/fr/per-component_vs_centralized_i18n.md +9 -4
- package/blog/fr/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/hi/history_of_i18n.md +54 -54
- package/blog/hi/how_to_pick_react_i18n_library.md +548 -0
- package/blog/hi/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/hi/how_to_pick_svelte_i18n_library.md +448 -0
- package/blog/hi/how_to_pick_vue_i18n_library.md +442 -0
- package/blog/hi/is_i18next_outdated.md +5 -1
- package/blog/hi/is_next-intl_outdated.md +5 -1
- package/blog/hi/is_vue-i18n_outdated.md +7 -1
- package/blog/hi/next-i18next_vs_next-intl_vs_intlayer.md +8 -4
- package/blog/hi/per-component_vs_centralized_i18n.md +9 -4
- package/blog/hi/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/id/history_of_i18n.md +54 -54
- package/blog/id/how_to_pick_react_i18n_library.md +548 -0
- package/blog/id/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/id/how_to_pick_svelte_i18n_library.md +454 -0
- package/blog/id/how_to_pick_vue_i18n_library.md +442 -0
- package/blog/id/is_i18next_outdated.md +5 -1
- package/blog/id/is_next-intl_outdated.md +5 -1
- package/blog/id/is_vue-i18n_outdated.md +7 -1
- package/blog/id/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/id/per-component_vs_centralized_i18n.md +9 -4
- package/blog/id/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/it/history_of_i18n.md +54 -54
- package/blog/it/how_to_pick_react_i18n_library.md +549 -0
- package/blog/it/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/it/how_to_pick_svelte_i18n_library.md +455 -0
- package/blog/it/how_to_pick_vue_i18n_library.md +449 -0
- package/blog/it/is_i18next_outdated.md +5 -1
- package/blog/it/is_next-intl_outdated.md +5 -1
- package/blog/it/is_vue-i18n_outdated.md +7 -1
- package/blog/it/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/it/per-component_vs_centralized_i18n.md +9 -4
- package/blog/it/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/ja/history_of_i18n.md +54 -54
- package/blog/ja/how_to_pick_react_i18n_library.md +542 -0
- package/blog/ja/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/ja/how_to_pick_svelte_i18n_library.md +457 -0
- package/blog/ja/how_to_pick_vue_i18n_library.md +442 -0
- package/blog/ja/is_i18next_outdated.md +5 -1
- package/blog/ja/is_next-intl_outdated.md +5 -1
- package/blog/ja/is_vue-i18n_outdated.md +7 -1
- package/blog/ja/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/ja/per-component_vs_centralized_i18n.md +9 -4
- package/blog/ja/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/ko/history_of_i18n.md +54 -54
- package/blog/ko/how_to_pick_react_i18n_library.md +548 -0
- package/blog/ko/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/ko/how_to_pick_svelte_i18n_library.md +454 -0
- package/blog/ko/how_to_pick_vue_i18n_library.md +448 -0
- package/blog/ko/is_i18next_outdated.md +5 -1
- package/blog/ko/is_next-intl_outdated.md +5 -1
- package/blog/ko/is_vue-i18n_outdated.md +7 -1
- package/blog/ko/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/ko/per-component_vs_centralized_i18n.md +9 -4
- package/blog/ko/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/pl/history_of_i18n.md +54 -54
- package/blog/pl/how_to_pick_react_i18n_library.md +549 -0
- package/blog/pl/how_to_pick_solid_i18n_library.md +438 -0
- package/blog/pl/how_to_pick_svelte_i18n_library.md +460 -0
- package/blog/pl/how_to_pick_vue_i18n_library.md +442 -0
- package/blog/pl/is_i18next_outdated.md +5 -1
- package/blog/pl/is_next-intl_outdated.md +5 -1
- package/blog/pl/is_vue-i18n_outdated.md +7 -1
- package/blog/pl/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/pl/per-component_vs_centralized_i18n.md +9 -4
- package/blog/pl/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/pt/history_of_i18n.md +54 -54
- package/blog/pt/how_to_pick_react_i18n_library.md +549 -0
- package/blog/pt/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/pt/how_to_pick_svelte_i18n_library.md +454 -0
- package/blog/pt/how_to_pick_vue_i18n_library.md +448 -0
- package/blog/pt/is_i18next_outdated.md +5 -1
- package/blog/pt/is_next-intl_outdated.md +5 -1
- package/blog/pt/is_vue-i18n_outdated.md +7 -1
- package/blog/pt/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/pt/per-component_vs_centralized_i18n.md +9 -4
- package/blog/pt/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/ru/history_of_i18n.md +54 -54
- package/blog/ru/how_to_pick_react_i18n_library.md +553 -0
- package/blog/ru/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/ru/how_to_pick_svelte_i18n_library.md +459 -0
- package/blog/ru/how_to_pick_vue_i18n_library.md +453 -0
- package/blog/ru/is_i18next_outdated.md +5 -1
- package/blog/ru/is_next-intl_outdated.md +5 -1
- package/blog/ru/is_vue-i18n_outdated.md +7 -1
- package/blog/ru/next-i18next_vs_next-intl_vs_intlayer.md +8 -4
- package/blog/ru/per-component_vs_centralized_i18n.md +9 -4
- package/blog/ru/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/tr/history_of_i18n.md +54 -54
- package/blog/tr/how_to_pick_react_i18n_library.md +548 -0
- package/blog/tr/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/tr/how_to_pick_svelte_i18n_library.md +454 -0
- package/blog/tr/how_to_pick_vue_i18n_library.md +448 -0
- package/blog/tr/is_i18next_outdated.md +5 -1
- package/blog/tr/is_next-intl_outdated.md +5 -1
- package/blog/tr/is_vue-i18n_outdated.md +7 -1
- package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/tr/per-component_vs_centralized_i18n.md +9 -4
- package/blog/tr/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/uk/history_of_i18n.md +54 -54
- package/blog/uk/how_to_pick_react_i18n_library.md +542 -0
- package/blog/uk/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/uk/how_to_pick_svelte_i18n_library.md +448 -0
- package/blog/uk/how_to_pick_vue_i18n_library.md +443 -0
- package/blog/uk/is_i18next_outdated.md +5 -1
- package/blog/uk/is_next-intl_outdated.md +5 -1
- package/blog/uk/is_vue-i18n_outdated.md +7 -1
- package/blog/uk/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/uk/per-component_vs_centralized_i18n.md +9 -4
- package/blog/uk/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/vi/history_of_i18n.md +54 -54
- package/blog/vi/how_to_pick_react_i18n_library.md +548 -0
- package/blog/vi/how_to_pick_solid_i18n_library.md +438 -0
- package/blog/vi/how_to_pick_svelte_i18n_library.md +448 -0
- package/blog/vi/how_to_pick_vue_i18n_library.md +442 -0
- package/blog/vi/is_i18next_outdated.md +5 -1
- package/blog/vi/is_next-intl_outdated.md +5 -1
- package/blog/vi/is_vue-i18n_outdated.md +7 -1
- package/blog/vi/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/vi/per-component_vs_centralized_i18n.md +9 -4
- package/blog/vi/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/blog/zh/history_of_i18n.md +54 -54
- package/blog/zh/how_to_pick_react_i18n_library.md +548 -0
- package/blog/zh/how_to_pick_solid_i18n_library.md +451 -0
- package/blog/zh/how_to_pick_svelte_i18n_library.md +454 -0
- package/blog/zh/how_to_pick_vue_i18n_library.md +448 -0
- package/blog/zh/is_i18next_outdated.md +5 -1
- package/blog/zh/is_next-intl_outdated.md +5 -1
- package/blog/zh/is_vue-i18n_outdated.md +7 -1
- package/blog/zh/next-i18next_vs_next-intl_vs_intlayer.md +9 -5
- package/blog/zh/per-component_vs_centralized_i18n.md +9 -4
- package/blog/zh/react-i18next_vs_react-intl_vs_intlayer.md +5 -1
- package/dist/cjs/generated/blog.entry.cjs +80 -0
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/esm/generated/blog.entry.mjs +80 -0
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/types/generated/blog.entry.d.ts +4 -0
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/docs/ar/bundle_optimization.md +5 -1
- package/docs/ar/how_works_intlayer.md +2 -2
- package/docs/ar/interest_of_intlayer.md +6 -6
- package/docs/ar/intlayer_CMS.md +1 -1
- package/docs/ar/intlayer_with_adonisjs.md +1 -1
- package/docs/ar/intlayer_with_analog.md +1 -1
- package/docs/ar/intlayer_with_angular_19.md +1 -1
- package/docs/ar/intlayer_with_angular_21.md +1 -1
- package/docs/ar/intlayer_with_astro.md +1 -1
- package/docs/ar/intlayer_with_astro_lit.md +1 -1
- package/docs/ar/intlayer_with_astro_preact.md +1 -1
- package/docs/ar/intlayer_with_astro_react.md +1 -1
- package/docs/ar/intlayer_with_astro_solid.md +1 -1
- package/docs/ar/intlayer_with_astro_svelte.md +1 -1
- package/docs/ar/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ar/intlayer_with_astro_vue.md +1 -1
- package/docs/ar/intlayer_with_create_react_app.md +1 -1
- package/docs/ar/intlayer_with_express.md +1 -1
- package/docs/ar/intlayer_with_hono.md +1 -1
- package/docs/ar/intlayer_with_nestjs.md +1 -1
- package/docs/ar/intlayer_with_nextjs_14.md +1 -1
- package/docs/ar/intlayer_with_nextjs_15.md +1 -1
- package/docs/ar/intlayer_with_nextjs_16.md +1 -1
- package/docs/ar/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ar/intlayer_with_react_router_v7.md +1 -1
- package/docs/ar/intlayer_with_vite+preact.md +1 -1
- package/docs/ar/intlayer_with_vite+react.md +1 -1
- package/docs/ar/intlayer_with_vite+vue.md +1 -1
- package/docs/ar/introduction.md +0 -1
- package/docs/ar/readme.md +8 -8
- package/docs/bn/bundle_optimization.md +5 -1
- package/docs/bn/interest_of_intlayer.md +21 -21
- package/docs/bn/intlayer_CMS.md +1 -1
- package/docs/bn/intlayer_with_angular_21.md +1 -1
- package/docs/bn/intlayer_with_hono.md +1 -1
- package/docs/bn/introduction.md +0 -1
- package/docs/cs/bundle_optimization.md +5 -1
- package/docs/cs/interest_of_intlayer.md +6 -6
- package/docs/cs/intlayer_with_angular_21.md +1 -1
- package/docs/cs/intlayer_with_hono.md +1 -1
- package/docs/cs/introduction.md +0 -1
- package/docs/de/bundle_optimization.md +5 -1
- package/docs/de/how_works_intlayer.md +2 -2
- package/docs/de/interest_of_intlayer.md +6 -6
- package/docs/de/intlayer_CMS.md +1 -1
- package/docs/de/intlayer_with_adonisjs.md +1 -1
- package/docs/de/intlayer_with_analog.md +1 -1
- package/docs/de/intlayer_with_angular_19.md +1 -1
- package/docs/de/intlayer_with_angular_21.md +1 -1
- package/docs/de/intlayer_with_astro.md +1 -1
- package/docs/de/intlayer_with_astro_lit.md +1 -1
- package/docs/de/intlayer_with_astro_preact.md +1 -1
- package/docs/de/intlayer_with_astro_react.md +1 -1
- package/docs/de/intlayer_with_astro_solid.md +1 -1
- package/docs/de/intlayer_with_astro_svelte.md +1 -1
- package/docs/de/intlayer_with_astro_vanilla.md +1 -1
- package/docs/de/intlayer_with_astro_vue.md +1 -1
- package/docs/de/intlayer_with_create_react_app.md +1 -1
- package/docs/de/intlayer_with_express.md +1 -1
- package/docs/de/intlayer_with_hono.md +1 -1
- package/docs/de/intlayer_with_nestjs.md +1 -1
- package/docs/de/intlayer_with_nextjs_14.md +1 -1
- package/docs/de/intlayer_with_nextjs_15.md +1 -1
- package/docs/de/intlayer_with_nextjs_16.md +1 -1
- package/docs/de/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/de/intlayer_with_vite+preact.md +1 -1
- package/docs/de/intlayer_with_vite+react.md +1 -1
- package/docs/de/intlayer_with_vite+vue.md +1 -1
- package/docs/de/introduction.md +0 -1
- package/docs/de/readme.md +8 -8
- package/docs/en/bundle_optimization.md +5 -1
- package/docs/en/how_works_intlayer.md +2 -2
- package/docs/en/interest_of_intlayer.md +6 -6
- package/docs/en/intlayer_CMS.md +1 -1
- package/docs/en/intlayer_with_adonisjs.md +1 -1
- package/docs/en/intlayer_with_analog.md +1 -1
- package/docs/en/intlayer_with_angular_19.md +1 -1
- package/docs/en/intlayer_with_angular_21.md +1 -1
- package/docs/en/intlayer_with_astro.md +1 -1
- package/docs/en/intlayer_with_astro_lit.md +1 -1
- package/docs/en/intlayer_with_astro_preact.md +1 -1
- package/docs/en/intlayer_with_astro_react.md +1 -1
- package/docs/en/intlayer_with_astro_solid.md +1 -1
- package/docs/en/intlayer_with_astro_svelte.md +1 -1
- package/docs/en/intlayer_with_astro_vanilla.md +1 -1
- package/docs/en/intlayer_with_astro_vue.md +1 -1
- package/docs/en/intlayer_with_create_react_app.md +1 -1
- package/docs/en/intlayer_with_express.md +1 -1
- package/docs/en/intlayer_with_hono.md +1 -1
- package/docs/en/intlayer_with_nestjs.md +1 -1
- package/docs/en/intlayer_with_nextjs_14.md +1 -1
- package/docs/en/intlayer_with_nextjs_15.md +1 -1
- package/docs/en/intlayer_with_nextjs_16.md +1 -1
- package/docs/en/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/en/intlayer_with_vite+preact.md +1 -1
- package/docs/en/intlayer_with_vite+react.md +1 -1
- package/docs/en/intlayer_with_vite+vue.md +1 -1
- package/docs/en/introduction.md +0 -1
- package/docs/en/readme.md +8 -8
- package/docs/en-GB/bundle_optimization.md +5 -1
- package/docs/en-GB/how_works_intlayer.md +2 -2
- package/docs/en-GB/interest_of_intlayer.md +6 -6
- package/docs/en-GB/intlayer_CMS.md +1 -1
- package/docs/en-GB/intlayer_with_adonisjs.md +1 -1
- package/docs/en-GB/intlayer_with_analog.md +1 -1
- package/docs/en-GB/intlayer_with_angular_19.md +1 -1
- package/docs/en-GB/intlayer_with_angular_21.md +1 -1
- package/docs/en-GB/intlayer_with_astro.md +1 -1
- package/docs/en-GB/intlayer_with_astro_lit.md +1 -1
- package/docs/en-GB/intlayer_with_astro_preact.md +1 -1
- package/docs/en-GB/intlayer_with_astro_react.md +1 -1
- package/docs/en-GB/intlayer_with_astro_solid.md +1 -1
- package/docs/en-GB/intlayer_with_astro_svelte.md +1 -1
- package/docs/en-GB/intlayer_with_astro_vanilla.md +1 -1
- package/docs/en-GB/intlayer_with_astro_vue.md +1 -1
- package/docs/en-GB/intlayer_with_create_react_app.md +1 -1
- package/docs/en-GB/intlayer_with_express.md +1 -1
- package/docs/en-GB/intlayer_with_hono.md +1 -1
- package/docs/en-GB/intlayer_with_nestjs.md +1 -1
- package/docs/en-GB/intlayer_with_nextjs_14.md +1 -1
- package/docs/en-GB/intlayer_with_nextjs_15.md +1 -1
- package/docs/en-GB/intlayer_with_nextjs_16.md +1 -1
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/en-GB/intlayer_with_vite+preact.md +1 -1
- package/docs/en-GB/intlayer_with_vite+react.md +1 -1
- package/docs/en-GB/intlayer_with_vite+vue.md +1 -1
- package/docs/en-GB/introduction.md +0 -1
- package/docs/en-GB/readme.md +8 -8
- package/docs/es/bundle_optimization.md +5 -1
- package/docs/es/how_works_intlayer.md +2 -2
- package/docs/es/interest_of_intlayer.md +6 -6
- package/docs/es/intlayer_CMS.md +1 -1
- package/docs/es/intlayer_with_adonisjs.md +1 -1
- package/docs/es/intlayer_with_analog.md +1 -1
- package/docs/es/intlayer_with_angular_19.md +1 -1
- package/docs/es/intlayer_with_angular_21.md +1 -1
- package/docs/es/intlayer_with_astro.md +1 -1
- package/docs/es/intlayer_with_astro_lit.md +1 -1
- package/docs/es/intlayer_with_astro_preact.md +1 -1
- package/docs/es/intlayer_with_astro_react.md +1 -1
- package/docs/es/intlayer_with_astro_solid.md +1 -1
- package/docs/es/intlayer_with_astro_svelte.md +1 -1
- package/docs/es/intlayer_with_astro_vanilla.md +1 -1
- package/docs/es/intlayer_with_astro_vue.md +1 -1
- package/docs/es/intlayer_with_create_react_app.md +1 -1
- package/docs/es/intlayer_with_express.md +1 -1
- package/docs/es/intlayer_with_hono.md +1 -1
- package/docs/es/intlayer_with_nestjs.md +1 -1
- package/docs/es/intlayer_with_nextjs_14.md +1 -1
- package/docs/es/intlayer_with_nextjs_15.md +1 -1
- package/docs/es/intlayer_with_nextjs_16.md +1 -1
- package/docs/es/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/es/intlayer_with_vite+preact.md +1 -1
- package/docs/es/intlayer_with_vite+react.md +1 -1
- package/docs/es/intlayer_with_vite+vue.md +1 -1
- package/docs/es/introduction.md +0 -1
- package/docs/es/readme.md +8 -8
- package/docs/fr/bundle_optimization.md +5 -1
- package/docs/fr/how_works_intlayer.md +2 -2
- package/docs/fr/interest_of_intlayer.md +6 -6
- package/docs/fr/intlayer_CMS.md +1 -1
- package/docs/fr/intlayer_with_adonisjs.md +1 -1
- package/docs/fr/intlayer_with_analog.md +1 -1
- package/docs/fr/intlayer_with_angular_19.md +1 -1
- package/docs/fr/intlayer_with_angular_21.md +1 -1
- package/docs/fr/intlayer_with_astro.md +1 -1
- package/docs/fr/intlayer_with_astro_lit.md +1 -1
- package/docs/fr/intlayer_with_astro_preact.md +1 -1
- package/docs/fr/intlayer_with_astro_react.md +1 -1
- package/docs/fr/intlayer_with_astro_solid.md +1 -1
- package/docs/fr/intlayer_with_astro_svelte.md +1 -1
- package/docs/fr/intlayer_with_astro_vanilla.md +1 -1
- package/docs/fr/intlayer_with_astro_vue.md +1 -1
- package/docs/fr/intlayer_with_create_react_app.md +1 -1
- package/docs/fr/intlayer_with_express.md +1 -1
- package/docs/fr/intlayer_with_hono.md +1 -1
- package/docs/fr/intlayer_with_nestjs.md +1 -1
- package/docs/fr/intlayer_with_nextjs_14.md +1 -1
- package/docs/fr/intlayer_with_nextjs_15.md +1 -1
- package/docs/fr/intlayer_with_nextjs_16.md +1 -1
- package/docs/fr/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/fr/intlayer_with_react_router_v7.md +2 -2
- package/docs/fr/intlayer_with_vite+preact.md +1 -1
- package/docs/fr/intlayer_with_vite+react.md +1 -1
- package/docs/fr/intlayer_with_vite+vue.md +1 -1
- package/docs/fr/introduction.md +0 -1
- package/docs/fr/readme.md +8 -8
- package/docs/hi/bundle_optimization.md +5 -1
- package/docs/hi/how_works_intlayer.md +2 -2
- package/docs/hi/interest_of_intlayer.md +6 -6
- package/docs/hi/intlayer_CMS.md +1 -1
- package/docs/hi/intlayer_with_adonisjs.md +1 -1
- package/docs/hi/intlayer_with_analog.md +1 -1
- package/docs/hi/intlayer_with_angular_19.md +1 -1
- package/docs/hi/intlayer_with_angular_21.md +1 -1
- package/docs/hi/intlayer_with_astro.md +1 -1
- package/docs/hi/intlayer_with_astro_lit.md +1 -1
- package/docs/hi/intlayer_with_astro_preact.md +1 -1
- package/docs/hi/intlayer_with_astro_react.md +1 -1
- package/docs/hi/intlayer_with_astro_solid.md +1 -1
- package/docs/hi/intlayer_with_astro_svelte.md +1 -1
- package/docs/hi/intlayer_with_astro_vanilla.md +1 -1
- package/docs/hi/intlayer_with_astro_vue.md +1 -1
- package/docs/hi/intlayer_with_create_react_app.md +1 -1
- package/docs/hi/intlayer_with_express.md +1 -1
- package/docs/hi/intlayer_with_hono.md +1 -1
- package/docs/hi/intlayer_with_nestjs.md +1 -1
- package/docs/hi/intlayer_with_nextjs_14.md +1 -1
- package/docs/hi/intlayer_with_nextjs_15.md +1 -1
- package/docs/hi/intlayer_with_nextjs_16.md +1 -1
- package/docs/hi/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/hi/intlayer_with_react_router_v7.md +1 -1
- package/docs/hi/intlayer_with_vite+preact.md +1 -1
- package/docs/hi/intlayer_with_vite+react.md +1 -1
- package/docs/hi/intlayer_with_vite+vue.md +1 -1
- package/docs/hi/introduction.md +0 -1
- package/docs/hi/readme.md +8 -8
- package/docs/id/bundle_optimization.md +5 -1
- package/docs/id/how_works_intlayer.md +2 -2
- package/docs/id/interest_of_intlayer.md +6 -6
- package/docs/id/intlayer_CMS.md +1 -1
- package/docs/id/intlayer_with_adonisjs.md +1 -1
- package/docs/id/intlayer_with_analog.md +1 -1
- package/docs/id/intlayer_with_angular_19.md +1 -1
- package/docs/id/intlayer_with_angular_21.md +1 -1
- package/docs/id/intlayer_with_astro.md +1 -1
- package/docs/id/intlayer_with_astro_lit.md +1 -1
- package/docs/id/intlayer_with_astro_preact.md +1 -1
- package/docs/id/intlayer_with_astro_react.md +1 -1
- package/docs/id/intlayer_with_astro_solid.md +1 -1
- package/docs/id/intlayer_with_astro_svelte.md +1 -1
- package/docs/id/intlayer_with_astro_vanilla.md +1 -1
- package/docs/id/intlayer_with_astro_vue.md +1 -1
- package/docs/id/intlayer_with_create_react_app.md +1 -1
- package/docs/id/intlayer_with_express.md +1 -1
- package/docs/id/intlayer_with_hono.md +1 -1
- package/docs/id/intlayer_with_nestjs.md +1 -1
- package/docs/id/intlayer_with_nextjs_14.md +1 -1
- package/docs/id/intlayer_with_nextjs_15.md +1 -1
- package/docs/id/intlayer_with_nextjs_16.md +1 -1
- package/docs/id/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/id/intlayer_with_react_router_v7.md +1 -1
- package/docs/id/intlayer_with_vite+preact.md +1 -1
- package/docs/id/intlayer_with_vite+react.md +1 -1
- package/docs/id/intlayer_with_vite+vue.md +1 -1
- package/docs/id/introduction.md +0 -1
- package/docs/id/readme.md +8 -8
- package/docs/it/bundle_optimization.md +5 -1
- package/docs/it/how_works_intlayer.md +2 -2
- package/docs/it/interest_of_intlayer.md +6 -6
- package/docs/it/intlayer_CMS.md +1 -1
- package/docs/it/intlayer_with_adonisjs.md +1 -1
- package/docs/it/intlayer_with_analog.md +1 -1
- package/docs/it/intlayer_with_angular_19.md +1 -1
- package/docs/it/intlayer_with_angular_21.md +1 -1
- package/docs/it/intlayer_with_astro.md +1 -1
- package/docs/it/intlayer_with_astro_lit.md +1 -1
- package/docs/it/intlayer_with_astro_preact.md +1 -1
- package/docs/it/intlayer_with_astro_react.md +1 -1
- package/docs/it/intlayer_with_astro_solid.md +1 -1
- package/docs/it/intlayer_with_astro_svelte.md +1 -1
- package/docs/it/intlayer_with_astro_vanilla.md +1 -1
- package/docs/it/intlayer_with_astro_vue.md +1 -1
- package/docs/it/intlayer_with_create_react_app.md +1 -1
- package/docs/it/intlayer_with_express.md +1 -1
- package/docs/it/intlayer_with_hono.md +1 -1
- package/docs/it/intlayer_with_nestjs.md +1 -1
- package/docs/it/intlayer_with_nextjs_14.md +1 -1
- package/docs/it/intlayer_with_nextjs_15.md +1 -1
- package/docs/it/intlayer_with_nextjs_16.md +1 -1
- package/docs/it/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/it/intlayer_with_react_router_v7.md +2 -2
- package/docs/it/intlayer_with_vite+preact.md +1 -1
- package/docs/it/intlayer_with_vite+react.md +1 -1
- package/docs/it/intlayer_with_vite+vue.md +1 -1
- package/docs/it/introduction.md +0 -1
- package/docs/it/readme.md +8 -8
- package/docs/ja/bundle_optimization.md +5 -1
- package/docs/ja/how_works_intlayer.md +2 -2
- package/docs/ja/interest_of_intlayer.md +6 -6
- package/docs/ja/intlayer_CMS.md +1 -1
- package/docs/ja/intlayer_with_adonisjs.md +1 -1
- package/docs/ja/intlayer_with_analog.md +1 -1
- package/docs/ja/intlayer_with_angular_19.md +1 -1
- package/docs/ja/intlayer_with_angular_21.md +1 -1
- package/docs/ja/intlayer_with_astro.md +1 -1
- package/docs/ja/intlayer_with_astro_lit.md +1 -1
- package/docs/ja/intlayer_with_astro_preact.md +1 -1
- package/docs/ja/intlayer_with_astro_react.md +1 -1
- package/docs/ja/intlayer_with_astro_solid.md +1 -1
- package/docs/ja/intlayer_with_astro_svelte.md +1 -1
- package/docs/ja/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ja/intlayer_with_astro_vue.md +1 -1
- package/docs/ja/intlayer_with_create_react_app.md +1 -1
- package/docs/ja/intlayer_with_express.md +1 -1
- package/docs/ja/intlayer_with_hono.md +1 -1
- package/docs/ja/intlayer_with_nestjs.md +1 -1
- package/docs/ja/intlayer_with_nextjs_14.md +1 -1
- package/docs/ja/intlayer_with_nextjs_15.md +1 -1
- package/docs/ja/intlayer_with_nextjs_16.md +1 -1
- package/docs/ja/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ja/intlayer_with_vite+preact.md +1 -1
- package/docs/ja/intlayer_with_vite+react.md +1 -1
- package/docs/ja/intlayer_with_vite+vue.md +1 -1
- package/docs/ja/introduction.md +0 -1
- package/docs/ja/readme.md +8 -8
- package/docs/ko/bundle_optimization.md +5 -1
- package/docs/ko/how_works_intlayer.md +2 -2
- package/docs/ko/interest_of_intlayer.md +6 -6
- package/docs/ko/intlayer_CMS.md +1 -1
- package/docs/ko/intlayer_with_adonisjs.md +1 -1
- package/docs/ko/intlayer_with_analog.md +1 -1
- package/docs/ko/intlayer_with_angular_19.md +1 -1
- package/docs/ko/intlayer_with_angular_21.md +1 -1
- package/docs/ko/intlayer_with_astro.md +1 -1
- package/docs/ko/intlayer_with_astro_lit.md +1 -1
- package/docs/ko/intlayer_with_astro_preact.md +1 -1
- package/docs/ko/intlayer_with_astro_react.md +1 -1
- package/docs/ko/intlayer_with_astro_solid.md +1 -1
- package/docs/ko/intlayer_with_astro_svelte.md +1 -1
- package/docs/ko/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ko/intlayer_with_astro_vue.md +1 -1
- package/docs/ko/intlayer_with_create_react_app.md +1 -1
- package/docs/ko/intlayer_with_express.md +1 -1
- package/docs/ko/intlayer_with_hono.md +1 -1
- package/docs/ko/intlayer_with_nestjs.md +1 -1
- package/docs/ko/intlayer_with_nextjs_14.md +1 -1
- package/docs/ko/intlayer_with_nextjs_15.md +1 -1
- package/docs/ko/intlayer_with_nextjs_16.md +1 -1
- package/docs/ko/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ko/intlayer_with_react_router_v7.md +2 -2
- package/docs/ko/intlayer_with_vite+preact.md +1 -1
- package/docs/ko/intlayer_with_vite+react.md +1 -1
- package/docs/ko/intlayer_with_vite+vue.md +1 -1
- package/docs/ko/introduction.md +0 -1
- package/docs/ko/readme.md +8 -8
- package/docs/nl/bundle_optimization.md +5 -1
- package/docs/nl/interest_of_intlayer.md +6 -6
- package/docs/nl/intlayer_with_angular_21.md +1 -1
- package/docs/nl/intlayer_with_hono.md +1 -1
- package/docs/nl/introduction.md +0 -1
- package/docs/pl/bundle_optimization.md +5 -1
- package/docs/pl/how_works_intlayer.md +2 -2
- package/docs/pl/interest_of_intlayer.md +6 -6
- package/docs/pl/intlayer_CMS.md +1 -1
- package/docs/pl/intlayer_with_adonisjs.md +1 -1
- package/docs/pl/intlayer_with_analog.md +1 -1
- package/docs/pl/intlayer_with_angular_19.md +1 -1
- package/docs/pl/intlayer_with_angular_21.md +1 -1
- package/docs/pl/intlayer_with_astro.md +1 -1
- package/docs/pl/intlayer_with_astro_lit.md +1 -1
- package/docs/pl/intlayer_with_astro_preact.md +1 -1
- package/docs/pl/intlayer_with_astro_react.md +1 -1
- package/docs/pl/intlayer_with_astro_solid.md +1 -1
- package/docs/pl/intlayer_with_astro_svelte.md +1 -1
- package/docs/pl/intlayer_with_astro_vanilla.md +1 -1
- package/docs/pl/intlayer_with_astro_vue.md +1 -1
- package/docs/pl/intlayer_with_create_react_app.md +1 -1
- package/docs/pl/intlayer_with_express.md +1 -1
- package/docs/pl/intlayer_with_hono.md +1 -1
- package/docs/pl/intlayer_with_nestjs.md +1 -1
- package/docs/pl/intlayer_with_nextjs_14.md +1 -1
- package/docs/pl/intlayer_with_nextjs_15.md +1 -1
- package/docs/pl/intlayer_with_nextjs_16.md +1 -1
- package/docs/pl/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/pl/intlayer_with_react_router_v7.md +2 -2
- package/docs/pl/intlayer_with_vite+preact.md +1 -1
- package/docs/pl/intlayer_with_vite+react.md +1 -1
- package/docs/pl/intlayer_with_vite+vue.md +1 -1
- package/docs/pl/introduction.md +0 -1
- package/docs/pl/readme.md +8 -8
- package/docs/pt/bundle_optimization.md +5 -1
- package/docs/pt/how_works_intlayer.md +2 -2
- package/docs/pt/interest_of_intlayer.md +6 -6
- package/docs/pt/intlayer_CMS.md +1 -1
- package/docs/pt/intlayer_with_adonisjs.md +1 -1
- package/docs/pt/intlayer_with_analog.md +1 -1
- package/docs/pt/intlayer_with_angular_19.md +1 -1
- package/docs/pt/intlayer_with_angular_21.md +1 -1
- package/docs/pt/intlayer_with_astro.md +1 -1
- package/docs/pt/intlayer_with_astro_lit.md +1 -1
- package/docs/pt/intlayer_with_astro_preact.md +1 -1
- package/docs/pt/intlayer_with_astro_react.md +1 -1
- package/docs/pt/intlayer_with_astro_solid.md +1 -1
- package/docs/pt/intlayer_with_astro_svelte.md +1 -1
- package/docs/pt/intlayer_with_astro_vanilla.md +1 -1
- package/docs/pt/intlayer_with_astro_vue.md +1 -1
- package/docs/pt/intlayer_with_create_react_app.md +1 -1
- package/docs/pt/intlayer_with_express.md +1 -1
- package/docs/pt/intlayer_with_hono.md +1 -1
- package/docs/pt/intlayer_with_nestjs.md +1 -1
- package/docs/pt/intlayer_with_nextjs_14.md +1 -1
- package/docs/pt/intlayer_with_nextjs_15.md +1 -1
- package/docs/pt/intlayer_with_nextjs_16.md +1 -1
- package/docs/pt/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/pt/intlayer_with_react_router_v7.md +2 -2
- package/docs/pt/intlayer_with_vite+preact.md +1 -1
- package/docs/pt/intlayer_with_vite+react.md +1 -1
- package/docs/pt/intlayer_with_vite+vue.md +1 -1
- package/docs/pt/introduction.md +0 -1
- package/docs/pt/readme.md +8 -8
- package/docs/ru/bundle_optimization.md +5 -1
- package/docs/ru/how_works_intlayer.md +2 -2
- package/docs/ru/interest_of_intlayer.md +6 -6
- package/docs/ru/intlayer_CMS.md +1 -1
- package/docs/ru/intlayer_with_adonisjs.md +1 -1
- package/docs/ru/intlayer_with_analog.md +1 -1
- package/docs/ru/intlayer_with_angular_19.md +1 -1
- package/docs/ru/intlayer_with_angular_21.md +1 -1
- package/docs/ru/intlayer_with_astro.md +1 -1
- package/docs/ru/intlayer_with_astro_lit.md +1 -1
- package/docs/ru/intlayer_with_astro_preact.md +1 -1
- package/docs/ru/intlayer_with_astro_react.md +1 -1
- package/docs/ru/intlayer_with_astro_solid.md +1 -1
- package/docs/ru/intlayer_with_astro_svelte.md +1 -1
- package/docs/ru/intlayer_with_astro_vanilla.md +1 -1
- package/docs/ru/intlayer_with_astro_vue.md +1 -1
- package/docs/ru/intlayer_with_create_react_app.md +1 -1
- package/docs/ru/intlayer_with_express.md +1 -1
- package/docs/ru/intlayer_with_hono.md +1 -1
- package/docs/ru/intlayer_with_nestjs.md +1 -1
- package/docs/ru/intlayer_with_nextjs_14.md +1 -1
- package/docs/ru/intlayer_with_nextjs_15.md +1 -1
- package/docs/ru/intlayer_with_nextjs_16.md +1 -1
- package/docs/ru/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ru/intlayer_with_react_router_v7.md +2 -2
- package/docs/ru/intlayer_with_vite+preact.md +1 -1
- package/docs/ru/intlayer_with_vite+react.md +1 -1
- package/docs/ru/intlayer_with_vite+vue.md +1 -1
- package/docs/ru/introduction.md +0 -1
- package/docs/ru/readme.md +8 -8
- package/docs/tr/bundle_optimization.md +5 -1
- package/docs/tr/how_works_intlayer.md +2 -2
- package/docs/tr/interest_of_intlayer.md +6 -6
- package/docs/tr/intlayer_CMS.md +1 -1
- package/docs/tr/intlayer_with_adonisjs.md +1 -1
- package/docs/tr/intlayer_with_analog.md +1 -1
- package/docs/tr/intlayer_with_angular_19.md +1 -1
- package/docs/tr/intlayer_with_angular_21.md +1 -1
- package/docs/tr/intlayer_with_astro.md +1 -1
- package/docs/tr/intlayer_with_astro_lit.md +1 -1
- package/docs/tr/intlayer_with_astro_preact.md +1 -1
- package/docs/tr/intlayer_with_astro_react.md +1 -1
- package/docs/tr/intlayer_with_astro_solid.md +1 -1
- package/docs/tr/intlayer_with_astro_svelte.md +1 -1
- package/docs/tr/intlayer_with_astro_vanilla.md +1 -1
- package/docs/tr/intlayer_with_astro_vue.md +1 -1
- package/docs/tr/intlayer_with_create_react_app.md +1 -1
- package/docs/tr/intlayer_with_express.md +1 -1
- package/docs/tr/intlayer_with_hono.md +1 -1
- package/docs/tr/intlayer_with_nestjs.md +1 -1
- package/docs/tr/intlayer_with_nextjs_14.md +1 -1
- package/docs/tr/intlayer_with_nextjs_15.md +1 -1
- package/docs/tr/intlayer_with_nextjs_16.md +1 -1
- package/docs/tr/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/tr/intlayer_with_react_router_v7.md +1 -1
- package/docs/tr/intlayer_with_vite+preact.md +1 -1
- package/docs/tr/intlayer_with_vite+react.md +1 -1
- package/docs/tr/intlayer_with_vite+vue.md +1 -1
- package/docs/tr/introduction.md +0 -1
- package/docs/tr/readme.md +8 -8
- package/docs/uk/bundle_optimization.md +5 -1
- package/docs/uk/how_works_intlayer.md +2 -2
- package/docs/uk/interest_of_intlayer.md +6 -6
- package/docs/uk/intlayer_CMS.md +1 -1
- package/docs/uk/intlayer_with_adonisjs.md +1 -1
- package/docs/uk/intlayer_with_analog.md +1 -1
- package/docs/uk/intlayer_with_angular_19.md +1 -1
- package/docs/uk/intlayer_with_angular_21.md +1 -1
- package/docs/uk/intlayer_with_astro.md +1 -1
- package/docs/uk/intlayer_with_astro_lit.md +1 -1
- package/docs/uk/intlayer_with_astro_preact.md +1 -1
- package/docs/uk/intlayer_with_astro_react.md +1 -1
- package/docs/uk/intlayer_with_astro_solid.md +1 -1
- package/docs/uk/intlayer_with_astro_svelte.md +1 -1
- package/docs/uk/intlayer_with_astro_vanilla.md +1 -1
- package/docs/uk/intlayer_with_astro_vue.md +1 -1
- package/docs/uk/intlayer_with_create_react_app.md +1 -1
- package/docs/uk/intlayer_with_express.md +1 -1
- package/docs/uk/intlayer_with_hono.md +1 -1
- package/docs/uk/intlayer_with_nestjs.md +1 -1
- package/docs/uk/intlayer_with_nextjs_14.md +1 -1
- package/docs/uk/intlayer_with_nextjs_15.md +1 -1
- package/docs/uk/intlayer_with_nextjs_16.md +1 -1
- package/docs/uk/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/uk/intlayer_with_react_router_v7.md +1 -1
- package/docs/uk/intlayer_with_vite+preact.md +1 -1
- package/docs/uk/intlayer_with_vite+react.md +1 -1
- package/docs/uk/intlayer_with_vite+vue.md +1 -1
- package/docs/uk/introduction.md +0 -1
- package/docs/uk/readme.md +8 -8
- package/docs/ur/bundle_optimization.md +5 -1
- package/docs/ur/interest_of_intlayer.md +6 -6
- package/docs/ur/intlayer_with_angular_21.md +1 -1
- package/docs/ur/intlayer_with_hono.md +1 -1
- package/docs/ur/introduction.md +0 -1
- package/docs/vi/bundle_optimization.md +5 -1
- package/docs/vi/how_works_intlayer.md +2 -2
- package/docs/vi/interest_of_intlayer.md +6 -6
- package/docs/vi/intlayer_CMS.md +1 -1
- package/docs/vi/intlayer_with_adonisjs.md +1 -1
- package/docs/vi/intlayer_with_analog.md +1 -1
- package/docs/vi/intlayer_with_angular_19.md +1 -1
- package/docs/vi/intlayer_with_angular_21.md +1 -1
- package/docs/vi/intlayer_with_astro.md +1 -1
- package/docs/vi/intlayer_with_astro_lit.md +1 -1
- package/docs/vi/intlayer_with_astro_preact.md +1 -1
- package/docs/vi/intlayer_with_astro_react.md +1 -1
- package/docs/vi/intlayer_with_astro_solid.md +1 -1
- package/docs/vi/intlayer_with_astro_svelte.md +1 -1
- package/docs/vi/intlayer_with_astro_vanilla.md +1 -1
- package/docs/vi/intlayer_with_astro_vue.md +1 -1
- package/docs/vi/intlayer_with_create_react_app.md +1 -1
- package/docs/vi/intlayer_with_express.md +1 -1
- package/docs/vi/intlayer_with_hono.md +1 -1
- package/docs/vi/intlayer_with_nestjs.md +1 -1
- package/docs/vi/intlayer_with_nextjs_14.md +1 -1
- package/docs/vi/intlayer_with_nextjs_15.md +1 -1
- package/docs/vi/intlayer_with_nextjs_16.md +1 -1
- package/docs/vi/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/vi/intlayer_with_vite+preact.md +1 -1
- package/docs/vi/intlayer_with_vite+react.md +1 -1
- package/docs/vi/intlayer_with_vite+vue.md +1 -1
- package/docs/vi/introduction.md +0 -1
- package/docs/vi/readme.md +8 -8
- package/docs/zh/bundle_optimization.md +5 -1
- package/docs/zh/how_works_intlayer.md +2 -2
- package/docs/zh/interest_of_intlayer.md +6 -6
- package/docs/zh/intlayer_CMS.md +1 -1
- package/docs/zh/intlayer_with_adonisjs.md +1 -1
- package/docs/zh/intlayer_with_analog.md +1 -1
- package/docs/zh/intlayer_with_angular_19.md +1 -1
- package/docs/zh/intlayer_with_angular_21.md +1 -1
- package/docs/zh/intlayer_with_astro.md +1 -1
- package/docs/zh/intlayer_with_astro_lit.md +1 -1
- package/docs/zh/intlayer_with_astro_preact.md +1 -1
- package/docs/zh/intlayer_with_astro_react.md +1 -1
- package/docs/zh/intlayer_with_astro_solid.md +1 -1
- package/docs/zh/intlayer_with_astro_svelte.md +1 -1
- package/docs/zh/intlayer_with_astro_vanilla.md +1 -1
- package/docs/zh/intlayer_with_astro_vue.md +1 -1
- package/docs/zh/intlayer_with_create_react_app.md +1 -1
- package/docs/zh/intlayer_with_express.md +1 -1
- package/docs/zh/intlayer_with_hono.md +1 -1
- package/docs/zh/intlayer_with_nestjs.md +1 -1
- package/docs/zh/intlayer_with_nextjs_14.md +1 -1
- package/docs/zh/intlayer_with_nextjs_15.md +1 -1
- package/docs/zh/intlayer_with_nextjs_16.md +1 -1
- package/docs/zh/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/zh/intlayer_with_react_router_v7.md +2 -2
- package/docs/zh/intlayer_with_vite+preact.md +1 -1
- package/docs/zh/intlayer_with_vite+react.md +1 -1
- package/docs/zh/intlayer_with_vite+vue.md +1 -1
- package/docs/zh/introduction.md +0 -1
- package/docs/zh/readme.md +8 -8
- package/docs/zh-TW/bundle_optimization.md +5 -1
- package/docs/zh-TW/interest_of_intlayer.md +6 -6
- package/docs/zh-TW/intlayer_with_angular_21.md +1 -1
- package/docs/zh-TW/introduction.md +0 -1
- package/package.json +8 -7
- package/src/generated/blog.entry.ts +80 -0
- package/blog/en/___per-component_vs_centralized_i18n.md +0 -255
- package/blog/pl/___per-component_vs_centralized_i18n.md +0 -100
- package/docs/en/benchmark/___NOTE.md +0 -101
- package/docs/en/benchmark/___nextjs.md +0 -197
- package/docs/en/benchmark/___solid.md +0 -12
- package/docs/en/benchmark/___svelte.md +0 -16
- package/docs/en/benchmark/___tanstack.md +0 -190
- package/docs/en/benchmark/___vue.md +0 -7
- package/docs/pl/benchmark/___NOTE.md +0 -101
- package/docs/pl/benchmark/___nextjs.md +0 -198
- package/docs/pl/benchmark/___solid.md +0 -36
- package/docs/pl/benchmark/___svelte.md +0 -36
- package/docs/pl/benchmark/___tanstack.md +0 -36
- package/docs/pl/benchmark/___vue.md +0 -36
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-09-10
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-09-16
|
|
4
4
|
title: "प्रति-कम्पोनेंट बनाम केंद्रीकृत i18n: Intlayer के साथ एक नया दृष्टिकोण"
|
|
5
5
|
description: React में internationalization रणनीतियों का गहन विश्लेषण, centralized, per-key और per-component approaches की तुलना, तथा Intlayer का परिचय।
|
|
6
6
|
keywords:
|
|
@@ -63,6 +63,7 @@ extension Localization on String {
|
|
|
63
63
|
- सामग्री पुनःप्राप्ति को प्रति-कुंजी या प्रति-कॉम्पोनेंट के स्तर पर फाइन-ग्रेन करें।
|
|
64
64
|
|
|
65
65
|
</Column>
|
|
66
|
+
|
|
66
67
|
</Columns>
|
|
67
68
|
|
|
68
69
|
> इस ब्लॉग में, मैं compiler-based समाधानों पर ध्यान नहीं दूँगा, जिन्हें मैंने पहले यहाँ कवर किया है: [Compiler vs Declarative i18n](https://github.com/aymericzip/intlayer/blob/main/docs/blog/hi/compiler_vs_declarative_i18n.md).
|
|
@@ -80,6 +81,10 @@ extension Localization on String {
|
|
|
80
81
|
बेशक, लाइब्रेरी के लेखक इन सीमाओं से अवगत हैं और वर्कअराउंड प्रदान करते हैं।
|
|
81
82
|
इनमें से कुछ: namespaces में विभाजन, डायनामिक रूप से JSON फाइलें लोड करना (`await import()`), या बिल्ड टाइम पर कंटेंट को purge करना।
|
|
82
83
|
|
|
84
|
+
नीचे दिया गया ग्राफ़ एक सैद्धांतिक ऐप के कंटेंट पेलोड का अनुमान देता है, जिसमें 1 से 10 पेज हैं और जिसे 1 से 10 भाषाओं में अनुवादित किया गया है, प्रति पेज लगभग 30 KB टेक्स्ट के साथ। locale के अनुसार कंटेंट को डायनामिक रूप से लोड करने से भाषा वाली धुरी हट जाती है, कंटेंट को कंपोनेंट या रूट तक सीमित करने से पेज वाली धुरी हट जाती है, और केवल दोनों के संयोजन से ही पेलोड स्थिर रहता है।
|
|
85
|
+
|
|
86
|
+

|
|
87
|
+
|
|
83
88
|
साथ ही, आपको यह जानना चाहिए कि जब आप अपना कंटेंट डायनामिक रूप से लोड करते हैं, तो आप अपने सर्वर पर अतिरिक्त अनुरोध जोड़ देते हैं। हर अतिरिक्त `useState` या hook का मतलब एक अतिरिक्त सर्वर अनुरोध होता है।
|
|
84
89
|
|
|
85
90
|
> इस बिंदु को ठीक करने के लिए, Intlayer सुझाव देता है कि कई कंटेंट परिभाषाओं को एक ही key के तहत समूहित किया जाए; Intlayer तब उन कंटेंट्स को मर्ज कर देगा।
|
|
@@ -112,9 +117,9 @@ Let me tell you why it can be problematic for your app:
|
|
|
112
117
|
|
|
113
118
|
पहला उदाहरण प्रति-लोकल lazy-loaded अनुवाद शामिल नहीं करता है और namespace splitting नहीं है। दूसरा content purging + dynamic loading के साथ अनुवाद दिखाता है।
|
|
114
119
|
|
|
115
|
-
| ऑप्टिमाइज़्ड बंडल
|
|
116
|
-
|
|
|
117
|
-
|  |  |
|
|
118
123
|
|
|
119
124
|
Namespaces के कारण, हम इस संरचना से नीचे दी गई संरचना में आ गए:
|
|
120
125
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-01-02
|
|
3
|
-
updatedAt:
|
|
3
|
+
updatedAt: 2026-09-16
|
|
4
4
|
title: react-i18next बनाम react-intl बनाम Intlayer
|
|
5
5
|
description: React ऐप के अंतरराष्ट्रीयकरण (i18n) के लिए react-i18next को next-intl और Intlayer के साथ एकीकृत करें
|
|
6
6
|
keywords:
|
|
@@ -104,6 +104,10 @@ author: aymericzip
|
|
|
104
104
|
|
|
105
105
|
**यह क्यों महत्वपूर्ण है:** छोटे बंडल और कम उपयोग न किए गए स्ट्रिंग्स स्टार्टअप और नेविगेशन प्रदर्शन को बेहतर बनाते हैं।
|
|
106
106
|
|
|
107
|
+
नीचे दिया गया ग्राफ़ एक सैद्धांतिक ऐप के कंटेंट पेलोड का अनुमान देता है, जिसमें 1 से 10 पेज हैं और जिसे 1 से 10 भाषाओं में अनुवादित किया गया है, प्रति पेज लगभग 30 KB टेक्स्ट के साथ। locale के अनुसार कंटेंट को डायनामिक रूप से लोड करने से भाषा वाली धुरी हट जाती है, कंटेंट को कंपोनेंट या रूट तक सीमित करने से पेज वाली धुरी हट जाती है, और केवल दोनों के संयोजन से ही पेलोड स्थिर रहता है।
|
|
108
|
+
|
|
109
|
+

|
|
110
|
+
|
|
107
111
|
### 6) DX, टूलिंग और रखरखाव
|
|
108
112
|
|
|
109
113
|
- **react-intl / react-i18next**: व्यापक समुदाय पारिस्थितिकी तंत्र; संपादकीय वर्कफ़्लो के लिए आप आमतौर पर बाहरी स्थानीयकरण प्लेटफ़ॉर्म अपनाते हैं।
|
|
@@ -49,7 +49,7 @@ Solusinya telah banyak berubah. Kita beralih dari objek global JavaScript dan pe
|
|
|
49
49
|
|
|
50
50
|
Artikel ini mengulas evolusi tersebut dari sekitar tahun 2011 hingga 2026: apa yang dicoba diselesaikan oleh setiap generasi alat, apa yang berhasil, apa yang tidak, dan bagaimana arsitektur aplikasi frontend memengaruhi cara kita menangani i18n saat ini.
|
|
51
51
|
|
|
52
|
-

|
|
53
53
|
|
|
54
54
|
## Daftar Isi
|
|
55
55
|
|
|
@@ -149,87 +149,87 @@ Tab berikut menyajikan bagaimana setiap framework dan ekosistem menjawab tantang
|
|
|
149
149
|
|
|
150
150
|
<Tab label="Core JavaScript" value="javascript">
|
|
151
151
|
|
|
152
|
-
| Rilis Pertama | Pustaka | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
153
|
-
| ------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
154
|
-
| Januari 2012 | `i18next` | Menstandarisasi pencarian kamus runtime untuk browser dan Node.js tanpa keterikatan framework. | Arsitektur runtime modular yang memisahkan terjemahan inti dari pemuat, detektor, dan caching. |
|
|
155
|
-
| Februari 2021 | `typesafe-i18n` | Mencegah kesalahan runtime diam-diam akibat kunci string tanpa tipe data. | Fungsi terjemahan bertipe penuh yang dibuat langsung dari objek terjemahan tanpa dependensi runtime. |
|
|
156
|
-
| Oktober 2023 | `paraglide` (`@inlang/paraglide-js`) | Menghilangkan pencarian kamus runtime, parser berat, dan pembengkakan ukuran bundle. | Mengompilasi pesan menjadi modul ECMAScript yang mendukung tree-shaking dan fungsi JS murni. |
|
|
157
|
-
|
|
|
158
|
-
| Juni 2025 | `wuchale` | Menghilangkan kerumitan mengekstrak string teks secara manual dan membuat kunci terjemahan saat pengembangan. | Pra-pemrosesan tingkat AST yang mendeteksi teks inline dan mengompilasinya menjadi fungsi lokal tanpa wrapper saat build. |
|
|
152
|
+
| Rilis Pertama | Pustaka | Penulis | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
153
|
+
| ------------- | ------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
154
|
+
| Januari 2012 | `i18next` | Jan Mühlemann (`@jamuhl`) | Menstandarisasi pencarian kamus runtime untuk browser dan Node.js tanpa keterikatan framework. | Arsitektur runtime modular yang memisahkan terjemahan inti dari pemuat, detektor, dan caching. |
|
|
155
|
+
| Februari 2021 | `typesafe-i18n` | Ivan Hofer (`@ivanhofer`) | Mencegah kesalahan runtime diam-diam akibat kunci string tanpa tipe data. | Fungsi terjemahan bertipe penuh yang dibuat langsung dari objek terjemahan tanpa dependensi runtime. |
|
|
156
|
+
| Oktober 2023 | `paraglide` (`@inlang/paraglide-js`) | Samuel Stroschein (`@samuelstroschein`) / Inlang (`@inlang`) | Menghilangkan pencarian kamus runtime, parser berat, dan pembengkakan ukuran bundle. | Mengompilasi pesan menjadi modul ECMAScript yang mendukung tree-shaking dan fungsi JS murni. |
|
|
157
|
+
| Agustus 2024 | `intlayer` | Aymeric Pineau (`@aymericzip`) | Menggantikan namespace yang sulit dipelihara, menghindari kebocoran konten antarhalaman, dan menyelesaikan kurangnya keamanan tipe bawaan di era TypeScript. | Menempatkan file `.content` langsung di tempat fungsi dipanggil, membuat tipe TypeScript otomatis, serta menyediakan CMS visual dan alat CLI terjemahan AI bawaan. |
|
|
158
|
+
| Juni 2025 | `wuchale` | Kidus Adugna (`@K1DV5`) | Menghilangkan kerumitan mengekstrak string teks secara manual dan membuat kunci terjemahan saat pengembangan. | Pra-pemrosesan tingkat AST yang mendeteksi teks inline dan mengompilasinya menjadi fungsi lokal tanpa wrapper saat build. |
|
|
159
159
|
|
|
160
160
|
</Tab>
|
|
161
161
|
|
|
162
162
|
<Tab label="React" value="react">
|
|
163
163
|
|
|
164
|
-
| Rilis Pertama | Pustaka | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
165
|
-
| ------------- | ---------------- | --------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
166
|
-
| Juni 2014 | `react-intl` | Menstandarisasi pemformatan angka, tanggal, mata uang, dan jamak kompleks di React. | Komponen deklaratif (`<FormattedMessage>`, `<FormattedDate>`) yang mengimplementasikan standar ICU MessageFormat dan ECMA-402. |
|
|
167
|
-
| Desember 2015 | `react-i18next` | Menyediakan binding React yang idiomatis untuk `i18next` dengan rendering ulang reaktif. | Berkembang bersama React dari Higher-Order Components ke interpolasi JSX `<Trans>` dan hook `useTranslation`. |
|
|
168
|
-
| Januari 2018 | `@lingui/react` | Mengurangi penalti ukuran bundle JavaScript yang disebabkan oleh parser ICU runtime. | Makro Babel/SWC waktu kompilasi yang menyusun `<Trans>` dan `t` menjadi array terindeks yang ringkas saat build. |
|
|
169
|
-
| Desember 2020 | `use-intl` | Memberikan alternatif ringan, berbasis hook, dan aman secara tipe untuk pustaka i18n React tradisional. | Hook ergonomis `useTranslations` dan `useFormatter` dengan integrasi TypeScript yang mendalam. |
|
|
170
|
-
| Februari 2021 | `@tolgee/react` | Menghilangkan siklus umpan balik yang lambat antara pengembang, penerjemah, dan desainer. | Pengeditan kontekstual di browser yang memungkinkan pengguna menekan Alt-klik pada teks untuk mengedit langsung dan mengambil screenshot. |
|
|
171
|
-
|
|
|
172
|
-
| Juli 2024 | `gt-react` | Mengotomatiskan ekspor file manual, serah terima penerjemah, dan pemeliharaan terjemahan. | Lokalisasi AI otomatis cloud-native langsung di dalam komponen React dengan jalur terjemahan mesin. |
|
|
173
|
-
|
|
|
164
|
+
| Rilis Pertama | Pustaka | Penulis | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
165
|
+
| ------------- | ---------------- | ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
|
166
|
+
| Juni 2014 | `react-intl` | Yahoo! / FormatJS | Menstandarisasi pemformatan angka, tanggal, mata uang, dan jamak kompleks di React. | Komponen deklaratif (`<FormattedMessage>`, `<FormattedDate>`) yang mengimplementasikan standar ICU MessageFormat dan ECMA-402. |
|
|
167
|
+
| Desember 2015 | `react-i18next` | Jan Mühlemann (`@jamuhl`) | Menyediakan binding React yang idiomatis untuk `i18next` dengan rendering ulang reaktif. | Berkembang bersama React dari Higher-Order Components ke interpolasi JSX `<Trans>` dan hook `useTranslation`. |
|
|
168
|
+
| Januari 2018 | `@lingui/react` | Tomáš Ehrlich (`@tricoder42`) | Mengurangi penalti ukuran bundle JavaScript yang disebabkan oleh parser ICU runtime. | Makro Babel/SWC waktu kompilasi yang menyusun `<Trans>` dan `t` menjadi array terindeks yang ringkas saat build. |
|
|
169
|
+
| Desember 2020 | `use-intl` | Jan Amann (`@amannn`) | Memberikan alternatif ringan, berbasis hook, dan aman secara tipe untuk pustaka i18n React tradisional. | Hook ergonomis `useTranslations` dan `useFormatter` dengan integrasi TypeScript yang mendalam. |
|
|
170
|
+
| Februari 2021 | `@tolgee/react` | Jan Cizmar (`@jcizmar`) | Menghilangkan siklus umpan balik yang lambat antara pengembang, penerjemah, dan desainer. | Pengeditan kontekstual di browser yang memungkinkan pengguna menekan Alt-klik pada teks untuk mengedit langsung dan mengambil screenshot. |
|
|
171
|
+
| Agustus 2024 | `react-intlayer` | Aymeric Pineau (`@aymericzip`) | Menyediakan implementasi Intlayer berkinerja tinggi untuk siklus hidup React, meniadakan kamus JSON terpusat dan namespace rumit. | Hook `useIntlayer` yang dioptimalkan untuk rendering React, tipe TypeScript otomatis, tree-shaking per komponen, dan sinkronisasi CMS visual langsung. |
|
|
172
|
+
| Juli 2024 | `gt-react` | Ernest McCarter (`@eoinest`) | Mengotomatiskan ekspor file manual, serah terima penerjemah, dan pemeliharaan terjemahan. | Lokalisasi AI otomatis cloud-native langsung di dalam komponen React dengan jalur terjemahan mesin. |
|
|
173
|
+
| Juni 2025 | `@wuchale/jsx` | Kidus Adugna (`@K1DV5`) | Menghilangkan penamaan kunci manual dan boilerplate hook terjemahan dalam JSX React. | Transformasi AST yang mengekstrak node teks JSX mentah secara otomatis dan mengompilasinya menjadi bentuk lokal. |
|
|
174
174
|
|
|
175
175
|
</Tab>
|
|
176
176
|
|
|
177
177
|
<Tab label="Next.js" value="nextjs">
|
|
178
178
|
|
|
179
|
-
| Rilis Pertama
|
|
180
|
-
|
|
|
181
|
-
| November 2018
|
|
182
|
-
| Desember
|
|
183
|
-
|
|
|
184
|
-
| Juli 2022
|
|
185
|
-
|
|
|
186
|
-
|
|
|
187
|
-
|
|
|
179
|
+
| Rilis Pertama | Pustaka | Penulis | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
180
|
+
| ------------- | ------------------------------------------- | ------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
181
|
+
| November 2018 | `next-i18next` | Isaac Hinman (`@isaachinman`) | Mendukung SSR dan SSG dengan `i18next` di Next.js Pages Router tanpa request waterfall di client. | `serverSideTranslations` dan `appWithTranslation` meneruskan namespace lokal ke page props. |
|
|
182
|
+
| Desember 2020 | `next-translate` | Arvin Wiyono (`@arvinn`) / Vinissimus (`@vinissimus`) | Menyederhanakan konfigurasi dan mengurangi bobot bundle pada aplikasi Next.js Pages Router. | Plugin Webpack loader yang menyuntikkan hanya namespace terjemahan yang diperlukan per halaman secara otomatis. |
|
|
183
|
+
| Desember 2020 | `next-intl` | Jan Amann (`@amannn`) | Merancang ulang i18n Next.js untuk App Router, React Server Components (RSC), dan streaming SSR. | Integrasi native dengan middleware Next.js App Router, Server Actions, dan Server Components asinkron tanpa JS di client. |
|
|
184
|
+
| Juli 2022 | `next-international` | Tom Dussaix (`@tom-dussaix`) | Memaksimalkan keamanan tipe TypeScript dengan overhead bundle client minimal untuk Next.js. | Pembuatan tipe ketat untuk kunci terjemahan terlingkup dengan adapter ringan untuk App Router dan Pages Router. |
|
|
185
|
+
| Oktober 2023 | `paraglide-next` (`@inlang/paraglide-next`) | Samuel Stroschein (`@samuelstroschein`) / Inlang (`@inlang`) | Membawa pesan terkompilasi zero-runtime ke Next.js App Router dan Pages Router. | Perutean middleware yang dipadukan dengan fungsi pesan tree-shakable, menghindari parsing JSON runtime di RSC dan bundle client. |
|
|
186
|
+
| Agustus 2024 | `next-intlayer` | Aymeric Pineau (`@aymericzip`) | Menyediakan adapter Server Component berkinerja tinggi untuk Next.js App Router dan Pages Router tanpa meneruskan `t()` sebagai props. | Adapter Server Component bawaan yang memungkinkan `useIntlayer` dipanggil langsung di komponen server sinkron (seperti Navbar) tanpa prop-drilling, disertai rendering server instan dan CMS visual. |
|
|
187
|
+
| Juli 2024 | `gt-next` | Ernest McCarter (`@eoinest`) | Mengotomatiskan pembuatan konten multibahasa dan perutean lokal dinamis di Next.js menggunakan AI. | Integrasi App Router yang memadukan terjemahan mesin berbasis cloud dengan edge middleware dan lapisan caching Next.js. |
|
|
188
188
|
|
|
189
189
|
</Tab>
|
|
190
190
|
|
|
191
191
|
<Tab label="Vue & Nuxt" value="vue">
|
|
192
192
|
|
|
193
|
-
| Rilis Pertama | Pustaka | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
194
|
-
| ------------- | -------------- | ----------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
195
|
-
| Mei 2014 | `vue-i18n` | Menyediakan internasionalisasi reaktif dan idiomatis untuk aplikasi Vue. | Integrasi reaktivitas mendalam, direktif template (`v-t`), helper `$t`, dan custom block `<i18n>` pada Single-File Component. |
|
|
196
|
-
| November 2017 | `@nuxt/i18n` | Menangani routing URL lokal, tag SEO hreflang, dan hidrasi SSR di Nuxt. | Modul perutean full-stack yang menghasilkan rute lokal, header meta SEO, dan pemuatan chunk secara lazy. |
|
|
197
|
-
| Agustus
|
|
198
|
-
|
|
|
193
|
+
| Rilis Pertama | Pustaka | Penulis | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
194
|
+
| ------------- | -------------- | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
195
|
+
| Mei 2014 | `vue-i18n` | Kazupon (`@kazupon`) | Menyediakan internasionalisasi reaktif dan idiomatis untuk aplikasi Vue. | Integrasi reaktivitas mendalam, direktif template (`v-t`), helper `$t`, dan custom block `<i18n>` pada Single-File Component. |
|
|
196
|
+
| November 2017 | `@nuxt/i18n` | Komunitas Nuxt | Menangani routing URL lokal, tag SEO hreflang, dan hidrasi SSR di Nuxt. | Modul perutean full-stack yang menghasilkan rute lokal, header meta SEO, dan pemuatan chunk secara lazy. |
|
|
197
|
+
| Agustus 2020 | `fluent-vue` | Mozilla (`@mozilla`) / Demivan (`@demivan`) | Menangani gender tata bahasa, kasus gramatikal yang kompleks, dan struktur bahasa asimetris di Vue. | Integrasi sintaks Mozilla Project Fluent di Vue untuk menghindari logika kondisional yang rumit dalam variasi linguistik. |
|
|
198
|
+
| Januari 2025 | `vue-intlayer` | Aymeric Pineau (`@aymericzip`) | Menyediakan implementasi Intlayer yang dirancang langsung untuk Vue 3 Composition API dan Nuxt tanpa polusi namespace global. | Composable `useIntlayer` yang disesuaikan untuk pelacakan reaktivitas Vue 3, pelingkupan komponen langsung, autocompletion TypeScript penuh, dan editor visual. |
|
|
199
199
|
|
|
200
200
|
</Tab>
|
|
201
201
|
|
|
202
202
|
<Tab label="Angular" value="angular">
|
|
203
203
|
|
|
204
|
-
| Rilis Pertama | Pustaka | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
205
|
-
| -------------- | ------------------- | ----------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
|
|
206
|
-
| Februari 2017 | `ngx-translate` | Menyediakan terjemahan dinamis saat runtime di Angular tanpa perlu build terpisah untuk setiap bahasa. | `TranslateService` dan pipe `translate` yang memungkinkan pemuatan terjemahan dinamis dan pergantian bahasa runtime. |
|
|
207
|
-
| Juli 2019 | `@ngneat/transloco` | Menyelesaikan masalah performa, ketiadaan scoping, dan fitur yang kurang pada pustaka Angular lama. | Direktif struktural (`*transloco`), terjemahan terlingkup untuk modul lazy-load, dukungan SSR, dan CLI ekstraksi. |
|
|
208
|
-
| September 2019 | `@angular/localize` | Memodernisasi i18n bawaan Angular untuk menghindari kompilasi ulang TypeScript untuk setiap bahasa. | Tagged template literals dengan `$localize` yang disuntikkan sebagai tahap cepat pasca-build di mesin compiler Ivy. |
|
|
209
|
-
| Februari 2021 | `@tolgee/ngx` | Mengintegrasikan lokalisasi in-context kolaboratif dan tangkapan layar ke dalam alur kerja Angular. | Pipe dan direktif Angular yang terhubung langsung ke Tolgee untuk penerjemahan langsung di browser. |
|
|
210
|
-
|
|
|
204
|
+
| Rilis Pertama | Pustaka | Penulis | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
205
|
+
| -------------- | ------------------- | ------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
|
|
206
|
+
| Februari 2017 | `ngx-translate` | Olivier Combe (`@ocombe`) | Menyediakan terjemahan dinamis saat runtime di Angular tanpa perlu build terpisah untuk setiap bahasa. | `TranslateService` dan pipe `translate` yang memungkinkan pemuatan terjemahan dinamis dan pergantian bahasa runtime. |
|
|
207
|
+
| Juli 2019 | `@ngneat/transloco` | Netanel Basal (`@NetanelBasal`) & Shahar Kazaz (`@shahar_k`) | Menyelesaikan masalah performa, ketiadaan scoping, dan fitur yang kurang pada pustaka Angular lama. | Direktif struktural (`*transloco`), terjemahan terlingkup untuk modul lazy-load, dukungan SSR, dan CLI ekstraksi. |
|
|
208
|
+
| September 2019 | `@angular/localize` | Tim Angular (@angular) | Memodernisasi i18n bawaan Angular untuk menghindari kompilasi ulang TypeScript untuk setiap bahasa. | Tagged template literals dengan `$localize` yang disuntikkan sebagai tahap cepat pasca-build di mesin compiler Ivy. |
|
|
209
|
+
| Februari 2021 | `@tolgee/ngx` | Jan Cizmar (`@jcizmar`) | Mengintegrasikan lokalisasi in-context kolaboratif dan tangkapan layar ke dalam alur kerja Angular. | Pipe dan direktif Angular yang terhubung langsung ke Tolgee untuk penerjemahan langsung di browser. |
|
|
210
|
+
| Maret 2026 | `angular-intlayer` | Aymeric Pineau (`@aymericzip`) | Menyediakan implementasi Intlayer berkinerja tinggi untuk Angular modern (Signals, komponen standalone, dan SSR). | Integrasi konten reaktif berbasis Signal untuk deteksi perubahan modern, injeksi dependensi standalone, dan sinkronisasi CMS visual. |
|
|
211
211
|
|
|
212
212
|
</Tab>
|
|
213
213
|
|
|
214
214
|
<Tab label="Svelte & SvelteKit" value="svelte">
|
|
215
215
|
|
|
216
|
-
| Rilis Pertama | Pustaka | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
217
|
-
| ------------- | ----------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
|
|
218
|
-
| Juli 2018 | `svelte-i18n` | Menyediakan pustaka i18n reaktif yang selaras dengan reactive store bawaan Svelte. | Pencarian `$t` berbasis store yang memastikan pembaruan DOM secara presisi saat locale berubah. |
|
|
219
|
-
| Desember 2021 | `sveltekit-i18n` | Menangani pemuatan terjemahan berbasis rute dan SSR secara rapi di aplikasi SvelteKit. | Arsitektur pemuat modular yang hanya mengambil terjemahan dan pemformat yang diperlukan untuk rute aktif. |
|
|
220
|
-
| November 2021 | `@tolgee/svelte` | Mengaktifkan lokalisasi in-context di aplikasi Svelte. | Binding store Svelte yang terintegrasi dengan overlay terjemahan Tolgee di browser dan pembuatan screenshot otomatis. |
|
|
221
|
-
|
|
|
222
|
-
| Juli 2025 | `@wuchale/svelte` | Menghilangkan boilerplate deklarasi kamus dan impor fungsi `$t` di komponen Svelte. | Preprocessor Svelte yang mem-parsing template saat build dan menyusun node teks menjadi output lokal tanpa wrapper. |
|
|
216
|
+
| Rilis Pertama | Pustaka | Penulis | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
217
|
+
| ------------- | ----------------- | ------------------------------ | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
|
|
218
|
+
| Juli 2018 | `svelte-i18n` | Kaisermann (`@kaisermann`) | Menyediakan pustaka i18n reaktif yang selaras dengan reactive store bawaan Svelte. | Pencarian `$t` berbasis store yang memastikan pembaruan DOM secara presisi saat locale berubah. |
|
|
219
|
+
| Desember 2021 | `sveltekit-i18n` | Ivan Fevrier (`@ivanfevrier`) | Menangani pemuatan terjemahan berbasis rute dan SSR secara rapi di aplikasi SvelteKit. | Arsitektur pemuat modular yang hanya mengambil terjemahan dan pemformat yang diperlukan untuk rute aktif. |
|
|
220
|
+
| November 2021 | `@tolgee/svelte` | Jan Cizmar (`@jcizmar`) | Mengaktifkan lokalisasi in-context di aplikasi Svelte. | Binding store Svelte yang terintegrasi dengan overlay terjemahan Tolgee di browser dan pembuatan screenshot otomatis. |
|
|
221
|
+
| Oktober 2025 | `svelte-intlayer` | Aymeric Pineau (`@aymericzip`) | Menyediakan implementasi Intlayer berkinerja tinggi untuk Svelte 5 dan SvelteKit. | Binding konten reaktif yang disesuaikan untuk Svelte 5 Runes (`$state`), deklarasi `.content` per komponen, dan pengeditan CMS visual. |
|
|
222
|
+
| Juli 2025 | `@wuchale/svelte` | Kidus Adugna (`@K1DV5`) | Menghilangkan boilerplate deklarasi kamus dan impor fungsi `$t` di komponen Svelte. | Preprocessor Svelte yang mem-parsing template saat build dan menyusun node teks menjadi output lokal tanpa wrapper. |
|
|
223
223
|
|
|
224
224
|
</Tab>
|
|
225
225
|
|
|
226
226
|
<Tab label="SolidJS" value="solid">
|
|
227
227
|
|
|
228
|
-
| Rilis Pertama | Pustaka | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
229
|
-
| -------------- | ------------------------ | ------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------- |
|
|
230
|
-
| September 2021 | `@solid-primitives/i18n` | Menyediakan primitif i18n yang sesuai dengan reaktivitas halus (fine-grained) SolidJS. | Resolver terjemahan reaktif berbasis sinyal yang memperbarui node DOM tanpa virtual DOM atau re-render yang tidak perlu. |
|
|
231
|
-
|
|
|
232
|
-
| Juni 2026 | `@lingui/solid` | Memperluas ekstraksi makro waktu kompilasi dan dukungan ICU MessageFormat ke SolidJS. | Transformasi makro yang disesuaikan dengan reaktivitas Solid, mengompilasi pesan menjadi struktur runtime yang ringkas. |
|
|
228
|
+
| Rilis Pertama | Pustaka | Penulis | Masalah yang Ingin Dipecahkan | Inovasi Utama |
|
|
229
|
+
| -------------- | ------------------------ | ------------------------------ | ------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------- |
|
|
230
|
+
| September 2021 | `@solid-primitives/i18n` | Komunitas SolidJS | Menyediakan primitif i18n yang sesuai dengan reaktivitas halus (fine-grained) SolidJS. | Resolver terjemahan reaktif berbasis sinyal yang memperbarui node DOM tanpa virtual DOM atau re-render yang tidak perlu. |
|
|
231
|
+
| Juli 2025 | `solid-intlayer` | Aymeric Pineau (`@aymericzip`) | Menyediakan implementasi Intlayer berkinerja tinggi yang dirancang untuk SolidJS dan SolidStart. | Binding konten sadar sinyal tanpa overhead Virtual DOM, autokompleksi skema TypeScript penuh, dan integrasi editor visual. |
|
|
232
|
+
| Juni 2026 | `@lingui/solid` | Tomáš Ehrlich (`@tricoder42`) | Memperluas ekstraksi makro waktu kompilasi dan dukungan ICU MessageFormat ke SolidJS. | Transformasi makro yang disesuaikan dengan reaktivitas Solid, mengompilasi pesan menjadi struktur runtime yang ringkas. |
|
|
233
233
|
|
|
234
234
|
</Tab>
|
|
235
235
|
|
|
@@ -237,7 +237,7 @@ Tab berikut menyajikan bagaimana setiap framework dan ekosistem menjawab tantang
|
|
|
237
237
|
|
|
238
238
|
## Empat Era Arsitektur JavaScript i18n
|
|
239
239
|
|
|
240
|
-

|
|
241
241
|
|
|
242
242
|
Melihat kembali perkembangan selama lima belas tahun, kita dapat membagi sejarah internasionalisasi JavaScript ke dalam empat era arsitektur:
|
|
243
243
|
|
|
@@ -287,7 +287,7 @@ Selama lebih dari satu dekade, platform komersial membangun pendapatan berulang
|
|
|
287
287
|
|
|
288
288
|
Ketika Model Bahasa Besar (LLM) modern menurunkan biaya terjemahan hingga pecahan sen sekaligus meningkatkan akurasi linguistik, generasi alat komersial baru muncul untuk memanfaatkan pasar ini:
|
|
289
289
|
|
|
290
|
-
- Platform seperti
|
|
290
|
+
- Platform seperti **lingo.dev** atau **General Translation** (`gt-react`, `gt-next`) telah berusaha memanfaatkan tren AI dengan memperkenalkan langganan berbayar baru dan perantara cloud berbayar.
|
|
291
291
|
- Sebaliknya, **Intlayer** menyediakan terjemahan AI otomatis langsung dari CLI-nya, memungkinkan tim menghubungkan kunci API mereka sendiri (seperti OpenAI, Anthropic, Mistral, atau Google Gemini). Tidak ada mark-up, komisi, atau vendor lock-in, beroperasi sepenuhnya pada biaya langsung penyedia AI pilihan Anda.
|
|
292
292
|
|
|
293
293
|
### Lebih dari Sekadar i18n: Sistem Konten Multibahasa yang Lengkap
|