@intlayer/docs 8.11.2 → 8.11.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/blog/ar/i18n_using_next-i18next.md +3 -3
- package/blog/ar/i18n_using_next-intl.md +3 -3
- package/blog/ar/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/ar/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/ar/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/ar/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/ar/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/ar/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/de/i18n_using_next-i18next.md +3 -3
- package/blog/de/i18n_using_next-intl.md +3 -3
- package/blog/de/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/de/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/de/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/de/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/de/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/de/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/en/i18n_using_next-i18next.md +1 -1
- package/blog/en/i18n_using_next-intl.md +1 -1
- package/blog/en/list_i18n_technologies/frameworks/angular.md +1 -1
- package/blog/en/list_i18n_technologies/frameworks/react-native.md +2 -2
- package/blog/en/list_i18n_technologies/frameworks/react.md +1 -1
- package/blog/en/list_i18n_technologies/frameworks/svelte.md +1 -1
- package/blog/en/list_i18n_technologies/frameworks/vue.md +1 -1
- package/blog/en/next-i18next_vs_next-intl_vs_intlayer.md +2 -2
- package/blog/en-GB/i18n_using_next-i18next.md +3 -3
- package/blog/en-GB/i18n_using_next-intl.md +3 -3
- package/blog/en-GB/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/en-GB/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/en-GB/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/en-GB/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/en-GB/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/en-GB/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/es/i18n_using_next-i18next.md +3 -3
- package/blog/es/i18n_using_next-intl.md +3 -3
- package/blog/es/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/es/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/es/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/es/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/es/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/es/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/fr/i18n_using_next-i18next.md +3 -3
- package/blog/fr/i18n_using_next-intl.md +3 -3
- package/blog/fr/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/fr/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/fr/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/fr/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/fr/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/fr/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/hi/i18n_using_next-i18next.md +3 -3
- package/blog/hi/i18n_using_next-intl.md +3 -3
- package/blog/hi/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/hi/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/hi/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/hi/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/hi/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/hi/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/id/i18n_using_next-i18next.md +3 -3
- package/blog/id/i18n_using_next-intl.md +3 -3
- package/blog/id/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/id/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/id/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/id/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/id/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/id/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/it/i18n_using_next-i18next.md +3 -3
- package/blog/it/i18n_using_next-intl.md +3 -3
- package/blog/it/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/it/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/it/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/it/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/it/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/it/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/ja/i18n_using_next-i18next.md +3 -3
- package/blog/ja/i18n_using_next-intl.md +3 -3
- package/blog/ja/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/ja/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/ja/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/ja/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/ja/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/ja/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/ko/i18n_using_next-i18next.md +3 -3
- package/blog/ko/i18n_using_next-intl.md +3 -3
- package/blog/ko/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/ko/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/ko/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/ko/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/ko/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/ko/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/pl/i18n_using_next-i18next.md +3 -3
- package/blog/pl/i18n_using_next-intl.md +3 -3
- package/blog/pl/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/pl/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/pl/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/pl/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/pl/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/pl/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/pt/i18n_using_next-i18next.md +3 -3
- package/blog/pt/i18n_using_next-intl.md +3 -3
- package/blog/pt/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/pt/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/pt/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/pt/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/pt/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/pt/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/ru/i18n_using_next-i18next.md +3 -3
- package/blog/ru/i18n_using_next-intl.md +3 -3
- package/blog/ru/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/ru/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/ru/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/ru/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/ru/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/ru/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/tr/i18n_using_next-i18next.md +3 -3
- package/blog/tr/i18n_using_next-intl.md +3 -3
- package/blog/tr/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/tr/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/tr/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/tr/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/tr/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/uk/i18n_using_next-i18next.md +3 -3
- package/blog/uk/i18n_using_next-intl.md +3 -3
- package/blog/uk/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/uk/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/uk/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/uk/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/uk/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/uk/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/vi/i18n_using_next-i18next.md +3 -3
- package/blog/vi/i18n_using_next-intl.md +3 -3
- package/blog/vi/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/vi/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/vi/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/vi/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/vi/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/vi/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/blog/zh/i18n_using_next-i18next.md +3 -3
- package/blog/zh/i18n_using_next-intl.md +3 -3
- package/blog/zh/list_i18n_technologies/frameworks/angular.md +3 -3
- package/blog/zh/list_i18n_technologies/frameworks/react-native.md +3 -3
- package/blog/zh/list_i18n_technologies/frameworks/react.md +3 -3
- package/blog/zh/list_i18n_technologies/frameworks/svelte.md +3 -3
- package/blog/zh/list_i18n_technologies/frameworks/vue.md +3 -3
- package/blog/zh/next-i18next_vs_next-intl_vs_intlayer.md +3 -3
- package/dist/cjs/generated/docs.entry.cjs +20 -20
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +20 -20
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +1 -1
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/interest_of_intlayer.md +39 -192
- package/docs/ar/intlayer_with_adonisjs.md +3 -3
- package/docs/ar/intlayer_with_analog.md +53 -16
- package/docs/ar/intlayer_with_angular_19.md +53 -16
- package/docs/ar/intlayer_with_angular_21.md +53 -16
- package/docs/ar/intlayer_with_astro.md +59 -18
- package/docs/ar/intlayer_with_astro_lit.md +62 -19
- package/docs/ar/intlayer_with_astro_preact.md +62 -19
- package/docs/ar/intlayer_with_astro_react.md +62 -19
- package/docs/ar/intlayer_with_astro_solid.md +62 -19
- package/docs/ar/intlayer_with_astro_svelte.md +62 -19
- package/docs/ar/intlayer_with_astro_vanilla.md +59 -18
- package/docs/ar/intlayer_with_astro_vue.md +62 -19
- package/docs/ar/intlayer_with_create_react_app.md +34 -12
- package/docs/ar/intlayer_with_express.md +3 -3
- package/docs/ar/intlayer_with_fastify.md +3 -3
- package/docs/ar/intlayer_with_hono.md +3 -3
- package/docs/ar/intlayer_with_lynx+react.md +31 -10
- package/docs/ar/intlayer_with_nestjs.md +3 -3
- package/docs/ar/intlayer_with_next-i18next.md +3 -3
- package/docs/ar/intlayer_with_next-intl.md +3 -3
- package/docs/ar/intlayer_with_nextjs_14.md +74 -24
- package/docs/ar/intlayer_with_nextjs_15.md +75 -27
- package/docs/ar/intlayer_with_nextjs_16.md +74 -26
- package/docs/ar/intlayer_with_nextjs_compiler.md +41 -15
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +65 -21
- package/docs/ar/intlayer_with_nextjs_page_router.md +72 -23
- package/docs/ar/intlayer_with_nuxt.md +62 -19
- package/docs/ar/intlayer_with_react_native+expo.md +72 -10
- package/docs/ar/intlayer_with_react_router_v7.md +79 -23
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +79 -23
- package/docs/ar/intlayer_with_storybook.md +57 -16
- package/docs/ar/intlayer_with_svelte_kit.md +91 -28
- package/docs/ar/intlayer_with_tanstack+solid.md +86 -28
- package/docs/ar/intlayer_with_tanstack.md +86 -28
- package/docs/ar/intlayer_with_vanilla.md +59 -22
- package/docs/ar/intlayer_with_vite+lit.md +71 -22
- package/docs/ar/intlayer_with_vite+preact.md +71 -22
- package/docs/ar/intlayer_with_vite+react.md +68 -21
- package/docs/ar/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/ar/intlayer_with_vite+solid.md +71 -22
- package/docs/ar/intlayer_with_vite+svelte.md +68 -21
- package/docs/ar/intlayer_with_vite+vanilla.md +74 -23
- package/docs/ar/intlayer_with_vite+vue.md +71 -22
- package/docs/ar/introduction.md +76 -37
- package/docs/ar/lsp.md +351 -0
- package/docs/bn/intlayer_with_angular_21.md +3 -3
- package/docs/bn/intlayer_with_fastify.md +3 -3
- package/docs/bn/intlayer_with_hono.md +3 -3
- package/docs/bn/intlayer_with_vanilla.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 +67 -37
- package/docs/cs/interest_of_intlayer.md +55 -7
- package/docs/cs/intlayer_with_angular_21.md +25 -9
- package/docs/cs/intlayer_with_fastify.md +3 -3
- package/docs/cs/intlayer_with_hono.md +3 -3
- package/docs/cs/intlayer_with_storybook.md +28 -8
- package/docs/cs/intlayer_with_vanilla.md +34 -12
- package/docs/cs/intlayer_with_vite+lit.md +43 -15
- package/docs/cs/intlayer_with_vite+vanilla.md +46 -16
- package/docs/cs/introduction.md +61 -31
- package/docs/de/interest_of_intlayer.md +126 -78
- package/docs/de/intlayer_with_adonisjs.md +3 -3
- package/docs/de/intlayer_with_analog.md +63 -16
- package/docs/de/intlayer_with_angular_19.md +63 -16
- package/docs/de/intlayer_with_angular_21.md +63 -16
- package/docs/de/intlayer_with_astro.md +69 -18
- package/docs/de/intlayer_with_astro_lit.md +72 -19
- package/docs/de/intlayer_with_astro_preact.md +72 -19
- package/docs/de/intlayer_with_astro_react.md +72 -19
- package/docs/de/intlayer_with_astro_solid.md +72 -19
- package/docs/de/intlayer_with_astro_svelte.md +72 -19
- package/docs/de/intlayer_with_astro_vanilla.md +69 -18
- package/docs/de/intlayer_with_astro_vue.md +72 -19
- package/docs/de/intlayer_with_create_react_app.md +34 -12
- package/docs/de/intlayer_with_express.md +3 -3
- package/docs/de/intlayer_with_fastify.md +3 -3
- package/docs/de/intlayer_with_hono.md +3 -3
- package/docs/de/intlayer_with_lynx+react.md +41 -10
- package/docs/de/intlayer_with_nestjs.md +3 -3
- package/docs/de/intlayer_with_next-i18next.md +3 -3
- package/docs/de/intlayer_with_next-intl.md +3 -3
- package/docs/de/intlayer_with_nextjs_14.md +84 -24
- package/docs/de/intlayer_with_nextjs_15.md +84 -26
- package/docs/de/intlayer_with_nextjs_16.md +90 -28
- package/docs/de/intlayer_with_nextjs_compiler.md +10 -4
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +78 -22
- package/docs/de/intlayer_with_nextjs_page_router.md +81 -22
- package/docs/de/intlayer_with_nuxt.md +72 -19
- package/docs/de/intlayer_with_react_native+expo.md +83 -11
- package/docs/de/intlayer_with_react_router_v7.md +89 -23
- package/docs/de/intlayer_with_react_router_v7_fs_routes.md +69 -19
- package/docs/de/intlayer_with_storybook.md +67 -16
- package/docs/de/intlayer_with_svelte_kit.md +101 -28
- package/docs/de/intlayer_with_tanstack+solid.md +99 -29
- package/docs/de/intlayer_with_tanstack.md +99 -29
- package/docs/de/intlayer_with_vanilla.md +69 -22
- package/docs/de/intlayer_with_vite+lit.md +81 -22
- package/docs/de/intlayer_with_vite+preact.md +81 -22
- package/docs/de/intlayer_with_vite+react.md +78 -21
- package/docs/de/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/de/intlayer_with_vite+solid.md +81 -22
- package/docs/de/intlayer_with_vite+svelte.md +81 -22
- package/docs/de/intlayer_with_vite+vanilla.md +84 -23
- package/docs/de/intlayer_with_vite+vue.md +81 -22
- package/docs/de/introduction.md +69 -31
- package/docs/de/lsp.md +351 -0
- package/docs/de/releases/v7.md +1 -1
- package/docs/en/interest_of_intlayer.md +51 -3
- package/docs/en/intlayer_with_adonisjs.md +1 -1
- package/docs/en/intlayer_with_analog.md +61 -14
- package/docs/en/intlayer_with_angular_19.md +61 -14
- package/docs/en/intlayer_with_angular_21.md +61 -14
- package/docs/en/intlayer_with_astro.md +73 -18
- package/docs/en/intlayer_with_astro_lit.md +70 -17
- package/docs/en/intlayer_with_astro_preact.md +70 -17
- package/docs/en/intlayer_with_astro_react.md +70 -17
- package/docs/en/intlayer_with_astro_solid.md +70 -17
- package/docs/en/intlayer_with_astro_svelte.md +70 -17
- package/docs/en/intlayer_with_astro_vanilla.md +67 -16
- package/docs/en/intlayer_with_astro_vue.md +70 -17
- package/docs/en/intlayer_with_create_react_app.md +72 -17
- package/docs/en/intlayer_with_express.md +1 -1
- package/docs/en/intlayer_with_fastify.md +1 -1
- package/docs/en/intlayer_with_hono.md +1 -1
- package/docs/en/intlayer_with_lynx+react.md +39 -8
- package/docs/en/intlayer_with_nestjs.md +1 -1
- package/docs/en/intlayer_with_next-i18next.md +1 -1
- package/docs/en/intlayer_with_next-intl.md +1 -1
- package/docs/en/intlayer_with_nextjs_14.md +85 -23
- package/docs/en/intlayer_with_nextjs_15.md +85 -23
- package/docs/en/intlayer_with_nextjs_16.md +87 -25
- package/docs/en/intlayer_with_nextjs_compiler.md +38 -12
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +76 -20
- package/docs/en/intlayer_with_nextjs_page_router.md +79 -20
- package/docs/en/intlayer_with_nuxt.md +70 -17
- package/docs/en/intlayer_with_react_native+expo.md +38 -9
- package/docs/en/intlayer_with_react_router_v7.md +83 -21
- package/docs/en/intlayer_with_react_router_v7_fs_routes.md +76 -20
- package/docs/en/intlayer_with_storybook.md +66 -15
- package/docs/en/intlayer_with_svelte_kit.md +79 -20
- package/docs/en/intlayer_with_tanstack+solid.md +97 -27
- package/docs/en/intlayer_with_tanstack.md +97 -27
- package/docs/en/intlayer_with_vanilla.md +67 -20
- package/docs/en/intlayer_with_vite+lit.md +79 -20
- package/docs/en/intlayer_with_vite+preact.md +79 -20
- package/docs/en/intlayer_with_vite+react.md +76 -19
- package/docs/en/intlayer_with_vite+react_compiler.md +23 -7
- package/docs/en/intlayer_with_vite+solid.md +76 -19
- package/docs/en/intlayer_with_vite+svelte.md +79 -20
- package/docs/en/intlayer_with_vite+vanilla.md +82 -21
- package/docs/en/intlayer_with_vite+vue.md +76 -19
- package/docs/en/introduction.md +28 -2
- package/docs/en/lsp.md +351 -0
- package/docs/en/mcp_server.md +22 -0
- package/docs/en-GB/interest_of_intlayer.md +71 -23
- package/docs/en-GB/intlayer_with_adonisjs.md +3 -3
- package/docs/en-GB/intlayer_with_analog.md +63 -16
- package/docs/en-GB/intlayer_with_angular_19.md +63 -16
- package/docs/en-GB/intlayer_with_angular_21.md +63 -16
- package/docs/en-GB/intlayer_with_astro.md +69 -18
- package/docs/en-GB/intlayer_with_astro_lit.md +72 -19
- package/docs/en-GB/intlayer_with_astro_preact.md +72 -19
- package/docs/en-GB/intlayer_with_astro_react.md +72 -19
- package/docs/en-GB/intlayer_with_astro_solid.md +72 -19
- package/docs/en-GB/intlayer_with_astro_svelte.md +72 -19
- package/docs/en-GB/intlayer_with_astro_vanilla.md +69 -18
- package/docs/en-GB/intlayer_with_astro_vue.md +72 -19
- package/docs/en-GB/intlayer_with_create_react_app.md +53 -17
- package/docs/en-GB/intlayer_with_express.md +3 -3
- package/docs/en-GB/intlayer_with_fastify.md +3 -3
- package/docs/en-GB/intlayer_with_hono.md +3 -3
- package/docs/en-GB/intlayer_with_lynx+react.md +41 -10
- package/docs/en-GB/intlayer_with_nestjs.md +3 -3
- package/docs/en-GB/intlayer_with_next-i18next.md +3 -3
- package/docs/en-GB/intlayer_with_next-intl.md +3 -3
- package/docs/en-GB/intlayer_with_nextjs_14.md +84 -24
- package/docs/en-GB/intlayer_with_nextjs_15.md +84 -26
- package/docs/en-GB/intlayer_with_nextjs_16.md +87 -27
- package/docs/en-GB/intlayer_with_nextjs_compiler.md +37 -13
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +78 -22
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +81 -22
- package/docs/en-GB/intlayer_with_nuxt.md +72 -19
- package/docs/en-GB/intlayer_with_react_native+expo.md +82 -10
- package/docs/en-GB/intlayer_with_react_router_v7.md +82 -22
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +82 -22
- package/docs/en-GB/intlayer_with_storybook.md +67 -16
- package/docs/en-GB/intlayer_with_svelte_kit.md +98 -27
- package/docs/en-GB/intlayer_with_tanstack+solid.md +99 -29
- package/docs/en-GB/intlayer_with_tanstack.md +96 -28
- package/docs/en-GB/intlayer_with_vanilla.md +69 -22
- package/docs/en-GB/intlayer_with_vite+lit.md +81 -22
- package/docs/en-GB/intlayer_with_vite+preact.md +78 -21
- package/docs/en-GB/intlayer_with_vite+react.md +75 -20
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/en-GB/intlayer_with_vite+solid.md +78 -21
- package/docs/en-GB/intlayer_with_vite+svelte.md +75 -20
- package/docs/en-GB/intlayer_with_vite+vanilla.md +84 -23
- package/docs/en-GB/intlayer_with_vite+vue.md +84 -23
- package/docs/en-GB/introduction.md +75 -25
- package/docs/en-GB/lsp.md +351 -0
- package/docs/en-GB/mcp_server.md +22 -0
- package/docs/es/agent_skills.md +2 -2
- package/docs/es/benchmark/nextjs.md +3 -3
- package/docs/es/benchmark/solid.md +3 -3
- package/docs/es/benchmark/svelte.md +3 -3
- package/docs/es/benchmark/tanstack.md +2 -2
- package/docs/es/benchmark/vue.md +3 -3
- package/docs/es/bundle_optimization.md +1 -1
- package/docs/es/cli/index.md +1 -1
- package/docs/es/cli/live.md +2 -2
- package/docs/es/compiler.md +1 -1
- package/docs/es/component_i18n.md +1 -1
- package/docs/es/custom_domains.md +3 -3
- package/docs/es/dictionary/condition.md +1 -1
- package/docs/es/dictionary/content_file.md +4 -4
- package/docs/es/dictionary/gender.md +1 -1
- package/docs/es/dictionary/html.md +7 -7
- package/docs/es/dictionary/insertion.md +1 -1
- package/docs/es/dictionary/markdown.md +7 -7
- package/docs/es/dictionary/plurial.md +1 -1
- package/docs/es/how_works_intlayer.md +2 -2
- package/docs/es/interest_of_intlayer.md +124 -75
- package/docs/es/intlayer_CMS.md +3 -3
- package/docs/es/intlayer_with_adonisjs.md +3 -3
- package/docs/es/intlayer_with_analog.md +63 -16
- package/docs/es/intlayer_with_angular_19.md +63 -16
- package/docs/es/intlayer_with_angular_21.md +63 -16
- package/docs/es/intlayer_with_astro.md +69 -18
- package/docs/es/intlayer_with_astro_lit.md +72 -19
- package/docs/es/intlayer_with_astro_preact.md +72 -19
- package/docs/es/intlayer_with_astro_react.md +72 -19
- package/docs/es/intlayer_with_astro_solid.md +72 -19
- package/docs/es/intlayer_with_astro_svelte.md +72 -19
- package/docs/es/intlayer_with_astro_vanilla.md +69 -18
- package/docs/es/intlayer_with_astro_vue.md +72 -19
- package/docs/es/intlayer_with_create_react_app.md +35 -13
- package/docs/es/intlayer_with_express.md +3 -3
- package/docs/es/intlayer_with_fastify.md +3 -3
- package/docs/es/intlayer_with_hono.md +3 -3
- package/docs/es/intlayer_with_lynx+react.md +41 -10
- package/docs/es/intlayer_with_nestjs.md +3 -3
- package/docs/es/intlayer_with_next-i18next.md +4 -4
- package/docs/es/intlayer_with_next-intl.md +5 -5
- package/docs/es/intlayer_with_nextjs_14.md +86 -26
- package/docs/es/intlayer_with_nextjs_15.md +86 -28
- package/docs/es/intlayer_with_nextjs_16.md +92 -30
- package/docs/es/intlayer_with_nextjs_compiler.md +42 -16
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +78 -22
- package/docs/es/intlayer_with_nextjs_page_router.md +83 -24
- package/docs/es/intlayer_with_nuxt.md +74 -21
- package/docs/es/intlayer_with_react_native+expo.md +82 -10
- package/docs/es/intlayer_with_react_router_v7.md +89 -23
- package/docs/es/intlayer_with_react_router_v7_fs_routes.md +78 -22
- package/docs/es/intlayer_with_storybook.md +67 -16
- package/docs/es/intlayer_with_svelte_kit.md +101 -28
- package/docs/es/intlayer_with_tanstack+solid.md +99 -29
- package/docs/es/intlayer_with_tanstack.md +99 -29
- package/docs/es/intlayer_with_vanilla.md +69 -22
- package/docs/es/intlayer_with_vite+lit.md +81 -22
- package/docs/es/intlayer_with_vite+preact.md +82 -23
- package/docs/es/intlayer_with_vite+react.md +79 -22
- package/docs/es/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/es/intlayer_with_vite+solid.md +82 -23
- package/docs/es/intlayer_with_vite+svelte.md +82 -23
- package/docs/es/intlayer_with_vite+vanilla.md +84 -23
- package/docs/es/intlayer_with_vite+vue.md +82 -23
- package/docs/es/introduction.md +62 -25
- package/docs/es/lsp.md +351 -0
- package/docs/es/mcp_server.md +22 -0
- package/docs/es/packages/express-intlayer/t.md +1 -1
- package/docs/es/packages/next-intlayer/useDictionary.md +1 -1
- package/docs/es/packages/next-intlayer/useIntlayer.md +1 -1
- package/docs/es/packages/react-intlayer/useDictionary.md +1 -1
- package/docs/es/plugins/sync-json.md +1 -1
- package/docs/es/readme.md +1 -1
- package/docs/es/releases/v6.md +2 -2
- package/docs/es/releases/v7.md +2 -2
- package/docs/es/releases/v8.md +2 -2
- package/docs/es/roadmap.md +1 -1
- package/docs/es/testing.md +1 -1
- package/docs/fr/benchmark/tanstack.md +7 -7
- package/docs/fr/interest_of_intlayer.md +121 -72
- package/docs/fr/intlayer_with_adonisjs.md +3 -3
- package/docs/fr/intlayer_with_analog.md +63 -16
- package/docs/fr/intlayer_with_angular_19.md +63 -16
- package/docs/fr/intlayer_with_angular_21.md +63 -16
- package/docs/fr/intlayer_with_astro.md +69 -18
- package/docs/fr/intlayer_with_astro_lit.md +72 -19
- package/docs/fr/intlayer_with_astro_preact.md +72 -19
- package/docs/fr/intlayer_with_astro_react.md +72 -19
- package/docs/fr/intlayer_with_astro_solid.md +72 -19
- package/docs/fr/intlayer_with_astro_svelte.md +72 -19
- package/docs/fr/intlayer_with_astro_vanilla.md +69 -18
- package/docs/fr/intlayer_with_astro_vue.md +72 -19
- package/docs/fr/intlayer_with_create_react_app.md +34 -12
- package/docs/fr/intlayer_with_express.md +3 -3
- package/docs/fr/intlayer_with_fastify.md +3 -3
- package/docs/fr/intlayer_with_hono.md +3 -3
- package/docs/fr/intlayer_with_lynx+react.md +41 -10
- package/docs/fr/intlayer_with_nestjs.md +3 -3
- package/docs/fr/intlayer_with_next-i18next.md +3 -3
- package/docs/fr/intlayer_with_next-intl.md +3 -3
- package/docs/fr/intlayer_with_nextjs_14.md +85 -25
- package/docs/fr/intlayer_with_nextjs_15.md +85 -27
- package/docs/fr/intlayer_with_nextjs_16.md +90 -28
- package/docs/fr/intlayer_with_nextjs_compiler.md +40 -14
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +78 -22
- package/docs/fr/intlayer_with_nextjs_page_router.md +81 -22
- package/docs/fr/intlayer_with_nuxt.md +72 -19
- package/docs/fr/intlayer_with_react_native+expo.md +82 -10
- package/docs/fr/intlayer_with_react_router_v7.md +89 -23
- package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +82 -22
- package/docs/fr/intlayer_with_storybook.md +67 -16
- package/docs/fr/intlayer_with_svelte_kit.md +101 -28
- package/docs/fr/intlayer_with_tanstack+solid.md +99 -29
- package/docs/fr/intlayer_with_tanstack.md +99 -29
- package/docs/fr/intlayer_with_vanilla.md +69 -22
- package/docs/fr/intlayer_with_vite+lit.md +81 -22
- package/docs/fr/intlayer_with_vite+preact.md +81 -22
- package/docs/fr/intlayer_with_vite+react.md +78 -21
- package/docs/fr/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/fr/intlayer_with_vite+solid.md +81 -22
- package/docs/fr/intlayer_with_vite+svelte.md +81 -22
- package/docs/fr/intlayer_with_vite+vanilla.md +84 -23
- package/docs/fr/intlayer_with_vite+vue.md +81 -22
- package/docs/fr/introduction.md +61 -24
- package/docs/fr/lsp.md +351 -0
- package/docs/fr/mcp_server.md +22 -0
- package/docs/fr/readme.md +1 -1
- package/docs/hi/interest_of_intlayer.md +39 -192
- package/docs/hi/intlayer_with_adonisjs.md +3 -3
- package/docs/hi/intlayer_with_analog.md +53 -16
- package/docs/hi/intlayer_with_angular_19.md +53 -16
- package/docs/hi/intlayer_with_angular_21.md +53 -16
- package/docs/hi/intlayer_with_astro.md +59 -18
- package/docs/hi/intlayer_with_astro_lit.md +62 -19
- package/docs/hi/intlayer_with_astro_preact.md +62 -19
- package/docs/hi/intlayer_with_astro_react.md +62 -19
- package/docs/hi/intlayer_with_astro_solid.md +62 -19
- package/docs/hi/intlayer_with_astro_svelte.md +62 -19
- package/docs/hi/intlayer_with_astro_vanilla.md +59 -18
- package/docs/hi/intlayer_with_astro_vue.md +62 -19
- package/docs/hi/intlayer_with_create_react_app.md +34 -12
- package/docs/hi/intlayer_with_express.md +3 -3
- package/docs/hi/intlayer_with_fastify.md +3 -3
- package/docs/hi/intlayer_with_hono.md +3 -3
- package/docs/hi/intlayer_with_lynx+react.md +31 -10
- package/docs/hi/intlayer_with_nestjs.md +3 -3
- package/docs/hi/intlayer_with_next-i18next.md +3 -3
- package/docs/hi/intlayer_with_next-intl.md +3 -3
- package/docs/hi/intlayer_with_nextjs_14.md +74 -24
- package/docs/hi/intlayer_with_nextjs_15.md +74 -26
- package/docs/hi/intlayer_with_nextjs_16.md +74 -26
- package/docs/hi/intlayer_with_nextjs_compiler.md +40 -14
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +68 -22
- package/docs/hi/intlayer_with_nextjs_page_router.md +71 -22
- package/docs/hi/intlayer_with_nuxt.md +62 -19
- package/docs/hi/intlayer_with_react_native+expo.md +72 -10
- package/docs/hi/intlayer_with_react_router_v7.md +79 -23
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +79 -23
- package/docs/hi/intlayer_with_storybook.md +57 -16
- package/docs/hi/intlayer_with_svelte_kit.md +91 -28
- package/docs/hi/intlayer_with_tanstack+solid.md +86 -28
- package/docs/hi/intlayer_with_tanstack.md +86 -28
- package/docs/hi/intlayer_with_vanilla.md +59 -22
- package/docs/hi/intlayer_with_vite+lit.md +71 -22
- package/docs/hi/intlayer_with_vite+preact.md +71 -22
- package/docs/hi/intlayer_with_vite+react.md +68 -21
- package/docs/hi/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/hi/intlayer_with_vite+solid.md +71 -22
- package/docs/hi/intlayer_with_vite+svelte.md +68 -21
- package/docs/hi/intlayer_with_vite+vanilla.md +74 -23
- package/docs/hi/intlayer_with_vite+vue.md +71 -22
- package/docs/hi/introduction.md +81 -43
- package/docs/hi/lsp.md +351 -0
- package/docs/id/interest_of_intlayer.md +50 -192
- package/docs/id/intlayer_with_adonisjs.md +3 -3
- package/docs/id/intlayer_with_analog.md +63 -16
- package/docs/id/intlayer_with_angular_19.md +63 -16
- package/docs/id/intlayer_with_angular_21.md +63 -16
- package/docs/id/intlayer_with_astro.md +69 -18
- package/docs/id/intlayer_with_astro_lit.md +72 -19
- package/docs/id/intlayer_with_astro_preact.md +72 -19
- package/docs/id/intlayer_with_astro_react.md +72 -19
- package/docs/id/intlayer_with_astro_solid.md +72 -19
- package/docs/id/intlayer_with_astro_svelte.md +72 -19
- package/docs/id/intlayer_with_astro_vanilla.md +69 -18
- package/docs/id/intlayer_with_astro_vue.md +72 -19
- package/docs/id/intlayer_with_create_react_app.md +34 -12
- package/docs/id/intlayer_with_express.md +3 -3
- package/docs/id/intlayer_with_fastify.md +3 -3
- package/docs/id/intlayer_with_hono.md +3 -3
- package/docs/id/intlayer_with_lynx+react.md +41 -10
- package/docs/id/intlayer_with_nestjs.md +3 -3
- package/docs/id/intlayer_with_next-i18next.md +3 -3
- package/docs/id/intlayer_with_next-intl.md +3 -3
- package/docs/id/intlayer_with_nextjs_14.md +87 -25
- package/docs/id/intlayer_with_nextjs_15.md +87 -25
- package/docs/id/intlayer_with_nextjs_16.md +84 -26
- package/docs/id/intlayer_with_nextjs_compiler.md +37 -13
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +78 -22
- package/docs/id/intlayer_with_nextjs_page_router.md +81 -22
- package/docs/id/intlayer_with_nuxt.md +72 -19
- package/docs/id/intlayer_with_react_native+expo.md +82 -10
- package/docs/id/intlayer_with_react_router_v7.md +89 -23
- package/docs/id/intlayer_with_react_router_v7_fs_routes.md +89 -23
- package/docs/id/intlayer_with_storybook.md +67 -16
- package/docs/id/intlayer_with_svelte_kit.md +101 -28
- package/docs/id/intlayer_with_tanstack+solid.md +96 -28
- package/docs/id/intlayer_with_tanstack.md +96 -28
- package/docs/id/intlayer_with_vanilla.md +69 -22
- package/docs/id/intlayer_with_vite+lit.md +81 -22
- package/docs/id/intlayer_with_vite+preact.md +81 -22
- package/docs/id/intlayer_with_vite+react.md +78 -21
- package/docs/id/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/id/intlayer_with_vite+solid.md +81 -22
- package/docs/id/intlayer_with_vite+svelte.md +78 -21
- package/docs/id/intlayer_with_vite+vanilla.md +84 -23
- package/docs/id/intlayer_with_vite+vue.md +81 -22
- package/docs/id/introduction.md +65 -35
- package/docs/id/lsp.md +351 -0
- package/docs/it/interest_of_intlayer.md +130 -82
- package/docs/it/intlayer_with_adonisjs.md +3 -3
- package/docs/it/intlayer_with_analog.md +63 -16
- package/docs/it/intlayer_with_angular_19.md +63 -16
- package/docs/it/intlayer_with_angular_21.md +63 -16
- package/docs/it/intlayer_with_astro.md +69 -18
- package/docs/it/intlayer_with_astro_lit.md +72 -19
- package/docs/it/intlayer_with_astro_preact.md +72 -19
- package/docs/it/intlayer_with_astro_react.md +72 -19
- package/docs/it/intlayer_with_astro_solid.md +72 -19
- package/docs/it/intlayer_with_astro_svelte.md +72 -19
- package/docs/it/intlayer_with_astro_vanilla.md +69 -18
- package/docs/it/intlayer_with_astro_vue.md +72 -19
- package/docs/it/intlayer_with_create_react_app.md +37 -13
- package/docs/it/intlayer_with_express.md +3 -3
- package/docs/it/intlayer_with_fastify.md +3 -3
- package/docs/it/intlayer_with_hono.md +3 -3
- package/docs/it/intlayer_with_lynx+react.md +41 -10
- package/docs/it/intlayer_with_nestjs.md +3 -3
- package/docs/it/intlayer_with_next-i18next.md +3 -3
- package/docs/it/intlayer_with_next-intl.md +3 -3
- package/docs/it/intlayer_with_nextjs_14.md +84 -24
- package/docs/it/intlayer_with_nextjs_15.md +84 -26
- package/docs/it/intlayer_with_nextjs_16.md +85 -27
- package/docs/it/intlayer_with_nextjs_compiler.md +40 -14
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +78 -22
- package/docs/it/intlayer_with_nextjs_page_router.md +81 -22
- package/docs/it/intlayer_with_nuxt.md +72 -19
- package/docs/it/intlayer_with_react_native+expo.md +82 -10
- package/docs/it/intlayer_with_react_router_v7.md +89 -23
- package/docs/it/intlayer_with_react_router_v7_fs_routes.md +82 -22
- package/docs/it/intlayer_with_storybook.md +67 -16
- package/docs/it/intlayer_with_svelte_kit.md +101 -28
- package/docs/it/intlayer_with_tanstack+solid.md +99 -29
- package/docs/it/intlayer_with_tanstack.md +99 -29
- package/docs/it/intlayer_with_vanilla.md +69 -22
- package/docs/it/intlayer_with_vite+lit.md +81 -22
- package/docs/it/intlayer_with_vite+preact.md +81 -22
- package/docs/it/intlayer_with_vite+react.md +78 -21
- package/docs/it/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/it/intlayer_with_vite+solid.md +81 -22
- package/docs/it/intlayer_with_vite+svelte.md +78 -21
- package/docs/it/intlayer_with_vite+vanilla.md +84 -23
- package/docs/it/intlayer_with_vite+vue.md +81 -22
- package/docs/it/introduction.md +71 -32
- package/docs/it/lsp.md +351 -0
- package/docs/it/releases/v7.md +1 -1
- package/docs/ja/interest_of_intlayer.md +123 -86
- package/docs/ja/intlayer_with_adonisjs.md +3 -3
- package/docs/ja/intlayer_with_analog.md +53 -16
- package/docs/ja/intlayer_with_angular_19.md +53 -16
- package/docs/ja/intlayer_with_angular_21.md +53 -16
- package/docs/ja/intlayer_with_astro.md +59 -18
- package/docs/ja/intlayer_with_astro_lit.md +62 -19
- package/docs/ja/intlayer_with_astro_preact.md +62 -19
- package/docs/ja/intlayer_with_astro_react.md +62 -19
- package/docs/ja/intlayer_with_astro_solid.md +62 -19
- package/docs/ja/intlayer_with_astro_svelte.md +62 -19
- package/docs/ja/intlayer_with_astro_vanilla.md +59 -18
- package/docs/ja/intlayer_with_astro_vue.md +62 -19
- package/docs/ja/intlayer_with_create_react_app.md +34 -12
- package/docs/ja/intlayer_with_express.md +3 -3
- package/docs/ja/intlayer_with_fastify.md +3 -3
- package/docs/ja/intlayer_with_hono.md +3 -3
- package/docs/ja/intlayer_with_lynx+react.md +31 -10
- package/docs/ja/intlayer_with_nestjs.md +3 -3
- package/docs/ja/intlayer_with_next-i18next.md +3 -3
- package/docs/ja/intlayer_with_next-intl.md +3 -3
- package/docs/ja/intlayer_with_nextjs_14.md +74 -24
- package/docs/ja/intlayer_with_nextjs_15.md +74 -26
- package/docs/ja/intlayer_with_nextjs_16.md +74 -26
- package/docs/ja/intlayer_with_nextjs_compiler.md +37 -13
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +65 -21
- package/docs/ja/intlayer_with_nextjs_page_router.md +71 -22
- package/docs/ja/intlayer_with_nuxt.md +62 -19
- package/docs/ja/intlayer_with_react_native+expo.md +73 -11
- package/docs/ja/intlayer_with_react_router_v7.md +41 -13
- package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +72 -22
- package/docs/ja/intlayer_with_storybook.md +57 -16
- package/docs/ja/intlayer_with_svelte_kit.md +38 -11
- package/docs/ja/intlayer_with_tanstack+solid.md +89 -29
- package/docs/ja/intlayer_with_tanstack.md +89 -29
- package/docs/ja/intlayer_with_vanilla.md +59 -22
- package/docs/ja/intlayer_with_vite+lit.md +71 -22
- package/docs/ja/intlayer_with_vite+preact.md +38 -11
- package/docs/ja/intlayer_with_vite+react.md +19 -111
- package/docs/ja/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/ja/intlayer_with_vite+solid.md +74 -23
- package/docs/ja/intlayer_with_vite+svelte.md +68 -21
- package/docs/ja/intlayer_with_vite+vanilla.md +74 -23
- package/docs/ja/intlayer_with_vite+vue.md +71 -22
- package/docs/ja/introduction.md +79 -40
- package/docs/ja/lsp.md +351 -0
- package/docs/ko/interest_of_intlayer.md +140 -92
- package/docs/ko/intlayer_with_adonisjs.md +3 -3
- package/docs/ko/intlayer_with_analog.md +41 -10
- package/docs/ko/intlayer_with_angular_19.md +41 -10
- package/docs/ko/intlayer_with_angular_21.md +41 -10
- package/docs/ko/intlayer_with_astro.md +41 -10
- package/docs/ko/intlayer_with_astro_lit.md +41 -10
- package/docs/ko/intlayer_with_astro_preact.md +41 -10
- package/docs/ko/intlayer_with_astro_react.md +41 -10
- package/docs/ko/intlayer_with_astro_solid.md +41 -10
- package/docs/ko/intlayer_with_astro_svelte.md +41 -10
- package/docs/ko/intlayer_with_astro_vanilla.md +41 -10
- package/docs/ko/intlayer_with_astro_vue.md +41 -10
- package/docs/ko/intlayer_with_create_react_app.md +19 -7
- package/docs/ko/intlayer_with_express.md +3 -3
- package/docs/ko/intlayer_with_fastify.md +3 -3
- package/docs/ko/intlayer_with_hono.md +3 -3
- package/docs/ko/intlayer_with_lynx+react.md +41 -10
- package/docs/ko/intlayer_with_nestjs.md +3 -3
- package/docs/ko/intlayer_with_next-i18next.md +3 -3
- package/docs/ko/intlayer_with_next-intl.md +3 -3
- package/docs/ko/intlayer_with_nextjs_14.md +44 -12
- package/docs/ko/intlayer_with_nextjs_15.md +44 -14
- package/docs/ko/intlayer_with_nextjs_16.md +51 -15
- package/docs/ko/intlayer_with_nextjs_compiler.md +10 -4
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +51 -13
- package/docs/ko/intlayer_with_nextjs_page_router.md +44 -11
- package/docs/ko/intlayer_with_nuxt.md +41 -10
- package/docs/ko/intlayer_with_react_native+expo.md +84 -10
- package/docs/ko/intlayer_with_react_router_v7.md +51 -13
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +51 -13
- package/docs/ko/intlayer_with_storybook.md +39 -8
- package/docs/ko/intlayer_with_svelte_kit.md +49 -12
- package/docs/ko/intlayer_with_tanstack+solid.md +41 -11
- package/docs/ko/intlayer_with_tanstack.md +41 -11
- package/docs/ko/intlayer_with_vanilla.md +38 -13
- package/docs/ko/intlayer_with_vite+lit.md +41 -10
- package/docs/ko/intlayer_with_vite+preact.md +48 -11
- package/docs/ko/intlayer_with_vite+react.md +48 -11
- package/docs/ko/intlayer_with_vite+react_compiler.md +3 -3
- package/docs/ko/intlayer_with_vite+solid.md +48 -11
- package/docs/ko/intlayer_with_vite+svelte.md +51 -12
- package/docs/ko/intlayer_with_vite+vanilla.md +41 -10
- package/docs/ko/intlayer_with_vite+vue.md +48 -11
- package/docs/ko/introduction.md +84 -45
- package/docs/ko/lsp.md +351 -0
- package/docs/nl/interest_of_intlayer.md +132 -84
- package/docs/nl/intlayer_with_angular_21.md +25 -9
- package/docs/nl/intlayer_with_fastify.md +3 -3
- package/docs/nl/intlayer_with_hono.md +3 -3
- package/docs/nl/intlayer_with_storybook.md +28 -8
- package/docs/nl/intlayer_with_vanilla.md +34 -12
- package/docs/nl/intlayer_with_vite+lit.md +43 -15
- package/docs/nl/intlayer_with_vite+vanilla.md +46 -16
- package/docs/nl/introduction.md +66 -34
- package/docs/pl/benchmark/nextjs.md +6 -6
- package/docs/pl/benchmark/svelte.md +1 -1
- package/docs/pl/benchmark/tanstack.md +3 -3
- package/docs/pl/bundle_optimization.md +1 -1
- package/docs/pl/compiler.md +1 -1
- package/docs/pl/component_i18n.md +1 -1
- package/docs/pl/configuration.md +12 -12
- package/docs/pl/dictionary/content_file.md +1 -1
- package/docs/pl/dictionary/function_fetching.md +1 -1
- package/docs/pl/how_works_intlayer.md +1 -1
- package/docs/pl/interest_of_intlayer.md +124 -76
- package/docs/pl/intlayer_CMS.md +1 -1
- package/docs/pl/intlayer_with_adonisjs.md +3 -3
- package/docs/pl/intlayer_with_analog.md +53 -16
- package/docs/pl/intlayer_with_angular_19.md +53 -16
- package/docs/pl/intlayer_with_angular_21.md +53 -16
- package/docs/pl/intlayer_with_astro.md +59 -18
- package/docs/pl/intlayer_with_astro_lit.md +62 -19
- package/docs/pl/intlayer_with_astro_preact.md +62 -19
- package/docs/pl/intlayer_with_astro_react.md +62 -19
- package/docs/pl/intlayer_with_astro_solid.md +62 -19
- package/docs/pl/intlayer_with_astro_svelte.md +62 -19
- package/docs/pl/intlayer_with_astro_vanilla.md +59 -18
- package/docs/pl/intlayer_with_astro_vue.md +62 -19
- package/docs/pl/intlayer_with_create_react_app.md +34 -12
- package/docs/pl/intlayer_with_express.md +3 -3
- package/docs/pl/intlayer_with_fastify.md +3 -3
- package/docs/pl/intlayer_with_hono.md +3 -3
- package/docs/pl/intlayer_with_lynx+react.md +31 -10
- package/docs/pl/intlayer_with_nestjs.md +3 -3
- package/docs/pl/intlayer_with_next-i18next.md +3 -3
- package/docs/pl/intlayer_with_next-intl.md +3 -3
- package/docs/pl/intlayer_with_nextjs_14.md +77 -25
- package/docs/pl/intlayer_with_nextjs_15.md +77 -25
- package/docs/pl/intlayer_with_nextjs_16.md +81 -29
- package/docs/pl/intlayer_with_nextjs_compiler.md +40 -14
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +68 -22
- package/docs/pl/intlayer_with_nextjs_page_router.md +71 -22
- package/docs/pl/intlayer_with_nuxt.md +62 -19
- package/docs/pl/intlayer_with_react_native+expo.md +72 -10
- package/docs/pl/intlayer_with_react_router_v7.md +79 -23
- package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +72 -22
- package/docs/pl/intlayer_with_storybook.md +57 -16
- package/docs/pl/intlayer_with_svelte_kit.md +94 -29
- package/docs/pl/intlayer_with_tanstack+solid.md +86 -28
- package/docs/pl/intlayer_with_tanstack.md +86 -28
- package/docs/pl/intlayer_with_vanilla.md +59 -22
- package/docs/pl/intlayer_with_vite+lit.md +71 -22
- package/docs/pl/intlayer_with_vite+preact.md +71 -22
- package/docs/pl/intlayer_with_vite+react.md +68 -21
- package/docs/pl/intlayer_with_vite+react_compiler.md +26 -10
- package/docs/pl/intlayer_with_vite+solid.md +71 -22
- package/docs/pl/intlayer_with_vite+svelte.md +68 -21
- package/docs/pl/intlayer_with_vite+vanilla.md +74 -23
- package/docs/pl/intlayer_with_vite+vue.md +71 -22
- package/docs/pl/introduction.md +67 -40
- package/docs/pl/lsp.md +351 -0
- package/docs/pl/releases/v7.md +1 -1
- package/docs/pl/releases/v8.md +2 -2
- package/docs/pt/agent_skills.md +2 -2
- package/docs/pt/dictionary/html.md +5 -5
- package/docs/pt/dictionary/markdown.md +7 -7
- package/docs/pt/how_works_intlayer.md +2 -2
- package/docs/pt/interest_of_intlayer.md +133 -85
- package/docs/pt/intlayer_with_adonisjs.md +3 -3
- package/docs/pt/intlayer_with_analog.md +63 -16
- package/docs/pt/intlayer_with_angular_19.md +63 -16
- package/docs/pt/intlayer_with_angular_21.md +63 -16
- package/docs/pt/intlayer_with_astro.md +69 -18
- package/docs/pt/intlayer_with_astro_lit.md +72 -19
- package/docs/pt/intlayer_with_astro_preact.md +72 -19
- package/docs/pt/intlayer_with_astro_react.md +72 -19
- package/docs/pt/intlayer_with_astro_solid.md +72 -19
- package/docs/pt/intlayer_with_astro_svelte.md +72 -19
- package/docs/pt/intlayer_with_astro_vanilla.md +69 -18
- package/docs/pt/intlayer_with_astro_vue.md +72 -19
- package/docs/pt/intlayer_with_create_react_app.md +37 -13
- package/docs/pt/intlayer_with_express.md +3 -3
- package/docs/pt/intlayer_with_fastify.md +3 -3
- package/docs/pt/intlayer_with_hono.md +3 -3
- package/docs/pt/intlayer_with_lynx+react.md +41 -10
- package/docs/pt/intlayer_with_nestjs.md +3 -3
- package/docs/pt/intlayer_with_next-i18next.md +3 -3
- package/docs/pt/intlayer_with_next-intl.md +3 -3
- package/docs/pt/intlayer_with_nextjs_14.md +84 -24
- package/docs/pt/intlayer_with_nextjs_15.md +84 -26
- package/docs/pt/intlayer_with_nextjs_16.md +90 -28
- package/docs/pt/intlayer_with_nextjs_compiler.md +40 -14
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +78 -22
- package/docs/pt/intlayer_with_nextjs_page_router.md +81 -22
- package/docs/pt/intlayer_with_nuxt.md +74 -21
- package/docs/pt/intlayer_with_react_native+expo.md +82 -10
- package/docs/pt/intlayer_with_react_router_v7.md +88 -24
- package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +82 -22
- package/docs/pt/intlayer_with_storybook.md +67 -16
- package/docs/pt/intlayer_with_svelte_kit.md +104 -29
- package/docs/pt/intlayer_with_tanstack+solid.md +99 -29
- package/docs/pt/intlayer_with_tanstack.md +99 -29
- package/docs/pt/intlayer_with_vanilla.md +69 -22
- package/docs/pt/intlayer_with_vite+lit.md +81 -22
- package/docs/pt/intlayer_with_vite+preact.md +82 -23
- package/docs/pt/intlayer_with_vite+react.md +79 -22
- package/docs/pt/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/pt/intlayer_with_vite+solid.md +82 -23
- package/docs/pt/intlayer_with_vite+svelte.md +82 -23
- package/docs/pt/intlayer_with_vite+vanilla.md +84 -23
- package/docs/pt/intlayer_with_vite+vue.md +82 -23
- package/docs/pt/introduction.md +81 -40
- package/docs/pt/lsp.md +351 -0
- package/docs/pt/readme.md +1 -1
- package/docs/ru/benchmark/svelte.md +1 -1
- package/docs/ru/bundle_optimization.md +1 -1
- package/docs/ru/configuration.md +2 -2
- package/docs/ru/dictionary/content_file.md +2 -2
- package/docs/ru/interest_of_intlayer.md +122 -74
- package/docs/ru/intlayer_CMS.md +1 -1
- package/docs/ru/intlayer_with_adonisjs.md +3 -3
- package/docs/ru/intlayer_with_analog.md +63 -16
- package/docs/ru/intlayer_with_angular_19.md +63 -16
- package/docs/ru/intlayer_with_angular_21.md +63 -16
- package/docs/ru/intlayer_with_astro.md +69 -18
- package/docs/ru/intlayer_with_astro_lit.md +72 -19
- package/docs/ru/intlayer_with_astro_preact.md +72 -19
- package/docs/ru/intlayer_with_astro_react.md +72 -19
- package/docs/ru/intlayer_with_astro_solid.md +72 -19
- package/docs/ru/intlayer_with_astro_svelte.md +72 -19
- package/docs/ru/intlayer_with_astro_vanilla.md +69 -18
- package/docs/ru/intlayer_with_astro_vue.md +72 -19
- package/docs/ru/intlayer_with_create_react_app.md +34 -12
- package/docs/ru/intlayer_with_express.md +3 -3
- package/docs/ru/intlayer_with_fastify.md +3 -3
- package/docs/ru/intlayer_with_hono.md +3 -3
- package/docs/ru/intlayer_with_lynx+react.md +41 -10
- package/docs/ru/intlayer_with_nestjs.md +3 -3
- package/docs/ru/intlayer_with_next-i18next.md +3 -3
- package/docs/ru/intlayer_with_next-intl.md +3 -3
- package/docs/ru/intlayer_with_nextjs_14.md +84 -24
- package/docs/ru/intlayer_with_nextjs_15.md +87 -27
- package/docs/ru/intlayer_with_nextjs_16.md +90 -28
- package/docs/ru/intlayer_with_nextjs_compiler.md +42 -16
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +75 -21
- package/docs/ru/intlayer_with_nextjs_page_router.md +81 -22
- package/docs/ru/intlayer_with_nuxt.md +72 -19
- package/docs/ru/intlayer_with_react_native+expo.md +82 -10
- package/docs/ru/intlayer_with_react_router_v7.md +89 -23
- package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +82 -22
- package/docs/ru/intlayer_with_storybook.md +67 -16
- package/docs/ru/intlayer_with_svelte_kit.md +101 -28
- package/docs/ru/intlayer_with_tanstack+solid.md +99 -29
- package/docs/ru/intlayer_with_tanstack.md +99 -29
- package/docs/ru/intlayer_with_vanilla.md +69 -22
- package/docs/ru/intlayer_with_vite+lit.md +81 -22
- package/docs/ru/intlayer_with_vite+preact.md +81 -22
- package/docs/ru/intlayer_with_vite+react.md +78 -21
- package/docs/ru/intlayer_with_vite+react_compiler.md +26 -10
- package/docs/ru/intlayer_with_vite+solid.md +81 -22
- package/docs/ru/intlayer_with_vite+svelte.md +78 -21
- package/docs/ru/intlayer_with_vite+vanilla.md +84 -23
- package/docs/ru/intlayer_with_vite+vue.md +81 -22
- package/docs/ru/introduction.md +69 -31
- package/docs/ru/lsp.md +351 -0
- package/docs/ru/packages/vite-intlayer/exports.md +7 -7
- package/docs/ru/releases/v6.md +2 -2
- package/docs/ru/releases/v7.md +2 -2
- package/docs/ru/roadmap.md +1 -1
- package/docs/ru/testing.md +1 -1
- package/docs/tr/benchmark/index.md +1 -1
- package/docs/tr/benchmark/nextjs.md +7 -7
- package/docs/tr/benchmark/solid.md +2 -2
- package/docs/tr/benchmark/svelte.md +2 -2
- package/docs/tr/benchmark/tanstack.md +4 -4
- package/docs/tr/benchmark/vue.md +3 -3
- package/docs/tr/bundle_optimization.md +1 -1
- package/docs/tr/component_i18n.md +1 -1
- package/docs/tr/dictionary/content_file.md +2 -2
- package/docs/tr/dictionary/html.md +5 -5
- package/docs/tr/dictionary/markdown.md +7 -7
- package/docs/tr/how_works_intlayer.md +2 -2
- package/docs/tr/interest_of_intlayer.md +144 -96
- package/docs/tr/intlayer_CMS.md +1 -1
- package/docs/tr/intlayer_with_adonisjs.md +3 -3
- package/docs/tr/intlayer_with_analog.md +63 -16
- package/docs/tr/intlayer_with_angular_19.md +63 -16
- package/docs/tr/intlayer_with_angular_21.md +63 -16
- package/docs/tr/intlayer_with_astro.md +69 -18
- package/docs/tr/intlayer_with_astro_lit.md +72 -19
- package/docs/tr/intlayer_with_astro_preact.md +72 -19
- package/docs/tr/intlayer_with_astro_react.md +72 -19
- package/docs/tr/intlayer_with_astro_solid.md +72 -19
- package/docs/tr/intlayer_with_astro_svelte.md +72 -19
- package/docs/tr/intlayer_with_astro_vanilla.md +69 -18
- package/docs/tr/intlayer_with_astro_vue.md +72 -19
- package/docs/tr/intlayer_with_create_react_app.md +34 -12
- package/docs/tr/intlayer_with_express.md +3 -3
- package/docs/tr/intlayer_with_fastify.md +3 -3
- package/docs/tr/intlayer_with_hono.md +3 -3
- package/docs/tr/intlayer_with_lynx+react.md +41 -10
- package/docs/tr/intlayer_with_nestjs.md +3 -3
- package/docs/tr/intlayer_with_next-i18next.md +3 -3
- package/docs/tr/intlayer_with_next-intl.md +3 -3
- package/docs/tr/intlayer_with_nextjs_14.md +14 -6
- package/docs/tr/intlayer_with_nextjs_15.md +85 -27
- package/docs/tr/intlayer_with_nextjs_16.md +91 -29
- package/docs/tr/intlayer_with_nextjs_compiler.md +38 -14
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +79 -23
- package/docs/tr/intlayer_with_nextjs_page_router.md +82 -23
- package/docs/tr/intlayer_with_nuxt.md +72 -19
- package/docs/tr/intlayer_with_react_native+expo.md +83 -11
- package/docs/tr/intlayer_with_react_router_v7.md +89 -23
- package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +82 -22
- package/docs/tr/intlayer_with_storybook.md +67 -16
- package/docs/tr/intlayer_with_svelte_kit.md +101 -28
- package/docs/tr/intlayer_with_tanstack+solid.md +96 -28
- package/docs/tr/intlayer_with_tanstack.md +96 -28
- package/docs/tr/intlayer_with_vanilla.md +69 -22
- package/docs/tr/intlayer_with_vite+lit.md +82 -23
- package/docs/tr/intlayer_with_vite+preact.md +82 -23
- package/docs/tr/intlayer_with_vite+react.md +79 -22
- package/docs/tr/intlayer_with_vite+react_compiler.md +27 -11
- package/docs/tr/intlayer_with_vite+solid.md +82 -23
- package/docs/tr/intlayer_with_vite+svelte.md +79 -22
- package/docs/tr/intlayer_with_vite+vanilla.md +85 -24
- package/docs/tr/intlayer_with_vite+vue.md +82 -23
- package/docs/tr/introduction.md +86 -47
- package/docs/tr/lsp.md +351 -0
- package/docs/tr/packages/next-intlayer/useIntlayer.md +1 -1
- package/docs/tr/packages/vite-intlayer/intlayerPrune.md +1 -1
- package/docs/tr/readme.md +1 -1
- package/docs/tr/releases/v7.md +1 -1
- package/docs/tr/releases/v8.md +1 -1
- package/docs/uk/interest_of_intlayer.md +50 -192
- package/docs/uk/intlayer_with_adonisjs.md +3 -3
- package/docs/uk/intlayer_with_analog.md +63 -16
- package/docs/uk/intlayer_with_angular_19.md +63 -16
- package/docs/uk/intlayer_with_angular_21.md +63 -16
- package/docs/uk/intlayer_with_astro.md +69 -18
- package/docs/uk/intlayer_with_astro_lit.md +72 -19
- package/docs/uk/intlayer_with_astro_preact.md +72 -19
- package/docs/uk/intlayer_with_astro_react.md +72 -19
- package/docs/uk/intlayer_with_astro_solid.md +72 -19
- package/docs/uk/intlayer_with_astro_svelte.md +72 -19
- package/docs/uk/intlayer_with_astro_vanilla.md +69 -18
- package/docs/uk/intlayer_with_astro_vue.md +72 -19
- package/docs/uk/intlayer_with_create_react_app.md +34 -12
- package/docs/uk/intlayer_with_express.md +3 -3
- package/docs/uk/intlayer_with_fastify.md +3 -3
- package/docs/uk/intlayer_with_hono.md +3 -3
- package/docs/uk/intlayer_with_lynx+react.md +41 -10
- package/docs/uk/intlayer_with_nestjs.md +3 -3
- package/docs/uk/intlayer_with_next-i18next.md +3 -3
- package/docs/uk/intlayer_with_next-intl.md +3 -3
- package/docs/uk/intlayer_with_nextjs_14.md +87 -25
- package/docs/uk/intlayer_with_nextjs_15.md +87 -25
- package/docs/uk/intlayer_with_nextjs_16.md +90 -28
- package/docs/uk/intlayer_with_nextjs_compiler.md +37 -13
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +78 -22
- package/docs/uk/intlayer_with_nextjs_page_router.md +81 -22
- package/docs/uk/intlayer_with_nuxt.md +72 -19
- package/docs/uk/intlayer_with_react_native+expo.md +81 -11
- package/docs/uk/intlayer_with_react_router_v7.md +89 -23
- package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +82 -22
- package/docs/uk/intlayer_with_storybook.md +67 -16
- package/docs/uk/intlayer_with_svelte_kit.md +81 -22
- package/docs/uk/intlayer_with_tanstack+solid.md +97 -29
- package/docs/uk/intlayer_with_tanstack.md +96 -28
- package/docs/uk/intlayer_with_vanilla.md +69 -22
- package/docs/uk/intlayer_with_vite+lit.md +81 -22
- package/docs/uk/intlayer_with_vite+preact.md +81 -22
- package/docs/uk/intlayer_with_vite+react.md +78 -21
- package/docs/uk/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/uk/intlayer_with_vite+solid.md +81 -22
- package/docs/uk/intlayer_with_vite+svelte.md +81 -22
- package/docs/uk/intlayer_with_vite+vanilla.md +85 -24
- package/docs/uk/intlayer_with_vite+vue.md +81 -22
- package/docs/uk/introduction.md +66 -39
- package/docs/uk/lsp.md +351 -0
- package/docs/ur/interest_of_intlayer.md +125 -88
- package/docs/ur/intlayer_with_angular_21.md +25 -9
- package/docs/ur/intlayer_with_fastify.md +3 -3
- package/docs/ur/intlayer_with_hono.md +3 -3
- package/docs/ur/intlayer_with_storybook.md +28 -8
- package/docs/ur/intlayer_with_vanilla.md +34 -12
- package/docs/ur/intlayer_with_vite+lit.md +43 -15
- package/docs/ur/intlayer_with_vite+vanilla.md +46 -16
- package/docs/ur/introduction.md +67 -37
- package/docs/vi/benchmark/index.md +1 -1
- package/docs/vi/benchmark/nextjs.md +5 -5
- package/docs/vi/benchmark/tanstack.md +2 -2
- package/docs/vi/how_works_intlayer.md +2 -2
- package/docs/vi/interest_of_intlayer.md +50 -192
- package/docs/vi/intlayer_with_adonisjs.md +3 -3
- package/docs/vi/intlayer_with_analog.md +63 -16
- package/docs/vi/intlayer_with_angular_19.md +63 -16
- package/docs/vi/intlayer_with_angular_21.md +63 -16
- package/docs/vi/intlayer_with_astro.md +69 -18
- package/docs/vi/intlayer_with_astro_lit.md +72 -19
- package/docs/vi/intlayer_with_astro_preact.md +72 -19
- package/docs/vi/intlayer_with_astro_react.md +72 -19
- package/docs/vi/intlayer_with_astro_solid.md +72 -19
- package/docs/vi/intlayer_with_astro_svelte.md +72 -19
- package/docs/vi/intlayer_with_astro_vanilla.md +69 -18
- package/docs/vi/intlayer_with_astro_vue.md +72 -19
- package/docs/vi/intlayer_with_create_react_app.md +34 -12
- package/docs/vi/intlayer_with_express.md +3 -3
- package/docs/vi/intlayer_with_fastify.md +3 -3
- package/docs/vi/intlayer_with_hono.md +3 -3
- package/docs/vi/intlayer_with_lynx+react.md +41 -10
- package/docs/vi/intlayer_with_nestjs.md +3 -3
- package/docs/vi/intlayer_with_next-i18next.md +3 -3
- package/docs/vi/intlayer_with_next-intl.md +3 -3
- package/docs/vi/intlayer_with_nextjs_14.md +87 -25
- package/docs/vi/intlayer_with_nextjs_15.md +69 -26
- package/docs/vi/intlayer_with_nextjs_16.md +91 -29
- package/docs/vi/intlayer_with_nextjs_compiler.md +37 -13
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +75 -21
- package/docs/vi/intlayer_with_nextjs_page_router.md +81 -22
- package/docs/vi/intlayer_with_nuxt.md +72 -19
- package/docs/vi/intlayer_with_react_native+expo.md +82 -10
- package/docs/vi/intlayer_with_react_router_v7.md +89 -23
- package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +89 -23
- package/docs/vi/intlayer_with_storybook.md +67 -16
- package/docs/vi/intlayer_with_svelte_kit.md +101 -28
- package/docs/vi/intlayer_with_tanstack+solid.md +96 -28
- package/docs/vi/intlayer_with_tanstack.md +96 -28
- package/docs/vi/intlayer_with_vanilla.md +69 -22
- package/docs/vi/intlayer_with_vite+lit.md +81 -22
- package/docs/vi/intlayer_with_vite+preact.md +81 -22
- package/docs/vi/intlayer_with_vite+react.md +78 -21
- package/docs/vi/intlayer_with_vite+react_compiler.md +25 -9
- package/docs/vi/intlayer_with_vite+solid.md +81 -22
- package/docs/vi/intlayer_with_vite+svelte.md +78 -21
- package/docs/vi/intlayer_with_vite+vanilla.md +84 -23
- package/docs/vi/intlayer_with_vite+vue.md +81 -22
- package/docs/vi/introduction.md +72 -41
- package/docs/vi/lsp.md +351 -0
- package/docs/vi/releases/v7.md +1 -1
- package/docs/zh/benchmark/nextjs.md +1 -1
- package/docs/zh/benchmark/solid.md +1 -1
- package/docs/zh/benchmark/svelte.md +1 -1
- package/docs/zh/benchmark/vue.md +2 -2
- package/docs/zh/bundle_optimization.md +13 -13
- package/docs/zh/component_i18n.md +1 -1
- package/docs/zh/dictionary/content_file.md +2 -2
- package/docs/zh/dictionary/html.md +6 -6
- package/docs/zh/dictionary/markdown.md +7 -7
- package/docs/zh/how_works_intlayer.md +1 -1
- package/docs/zh/interest_of_intlayer.md +122 -85
- package/docs/zh/intlayer_with_adonisjs.md +3 -3
- package/docs/zh/intlayer_with_analog.md +31 -10
- package/docs/zh/intlayer_with_angular_19.md +31 -10
- package/docs/zh/intlayer_with_angular_21.md +53 -16
- package/docs/zh/intlayer_with_astro.md +31 -10
- package/docs/zh/intlayer_with_astro_lit.md +31 -10
- package/docs/zh/intlayer_with_astro_preact.md +31 -10
- package/docs/zh/intlayer_with_astro_react.md +31 -10
- package/docs/zh/intlayer_with_astro_solid.md +31 -10
- package/docs/zh/intlayer_with_astro_svelte.md +31 -10
- package/docs/zh/intlayer_with_astro_vanilla.md +31 -10
- package/docs/zh/intlayer_with_astro_vue.md +31 -10
- package/docs/zh/intlayer_with_create_react_app.md +3 -3
- package/docs/zh/intlayer_with_express.md +3 -3
- package/docs/zh/intlayer_with_fastify.md +3 -3
- package/docs/zh/intlayer_with_hono.md +3 -3
- package/docs/zh/intlayer_with_lynx+react.md +31 -10
- package/docs/zh/intlayer_with_nestjs.md +3 -3
- package/docs/zh/intlayer_with_next-i18next.md +3 -3
- package/docs/zh/intlayer_with_next-intl.md +3 -3
- package/docs/zh/intlayer_with_nextjs_14.md +53 -17
- package/docs/zh/intlayer_with_nextjs_15.md +57 -21
- package/docs/zh/intlayer_with_nextjs_16.md +43 -17
- package/docs/zh/intlayer_with_nextjs_compiler.md +28 -10
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +56 -18
- package/docs/zh/intlayer_with_nextjs_page_router.md +50 -15
- package/docs/zh/intlayer_with_nuxt.md +47 -14
- package/docs/zh/intlayer_with_react_native+expo.md +72 -10
- package/docs/zh/intlayer_with_react_router_v7.md +38 -12
- package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +38 -12
- package/docs/zh/intlayer_with_storybook.md +29 -8
- package/docs/zh/intlayer_with_svelte_kit.md +54 -17
- package/docs/zh/intlayer_with_tanstack+solid.md +31 -11
- package/docs/zh/intlayer_with_tanstack.md +31 -11
- package/docs/zh/intlayer_with_vanilla.md +28 -13
- package/docs/zh/intlayer_with_vite+lit.md +31 -10
- package/docs/zh/intlayer_with_vite+preact.md +44 -13
- package/docs/zh/intlayer_with_vite+react.md +53 -16
- package/docs/zh/intlayer_with_vite+react_compiler.md +3 -3
- package/docs/zh/intlayer_with_vite+solid.md +44 -13
- package/docs/zh/intlayer_with_vite+svelte.md +56 -17
- package/docs/zh/intlayer_with_vite+vanilla.md +31 -10
- package/docs/zh/intlayer_with_vite+vue.md +56 -17
- package/docs/zh/introduction.md +83 -44
- package/docs/zh/lsp.md +351 -0
- package/docs/zh/releases/v8.md +3 -3
- package/docs/zh/roadmap.md +1 -1
- package/docs/zh-TW/interest_of_intlayer.md +135 -98
- package/docs/zh-TW/intlayer_with_angular_21.md +25 -9
- package/docs/zh-TW/introduction.md +192 -0
- package/package.json +6 -6
- package/src/generated/docs.entry.ts +20 -20
- package/docs/ar/index.md +0 -164
- package/docs/bn/index.md +0 -183
- package/docs/cs/index.md +0 -183
- package/docs/de/index.md +0 -166
- package/docs/en/index.md +0 -183
- package/docs/en-GB/index.md +0 -170
- package/docs/es/index.md +0 -165
- package/docs/fr/index.md +0 -163
- package/docs/hi/index.md +0 -166
- package/docs/id/index.md +0 -176
- package/docs/it/index.md +0 -166
- package/docs/ja/index.md +0 -164
- package/docs/ko/index.md +0 -164
- package/docs/nl/index.md +0 -183
- package/docs/pl/index.md +0 -176
- package/docs/pt/index.md +0 -166
- package/docs/ru/index.md +0 -163
- package/docs/tr/index.md +0 -166
- package/docs/uk/index.md +0 -175
- package/docs/ur/index.md +0 -183
- package/docs/vi/index.md +0 -174
- package/docs/zh/index.md +0 -183
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-24
|
|
3
|
-
updatedAt: 2026-05-
|
|
4
|
-
title: Astro + Svelte i18n -
|
|
5
|
-
description:
|
|
3
|
+
updatedAt: 2026-05-31
|
|
4
|
+
title: Astro + Svelte i18n - Hướng dẫn đầy đủ để dịch Astro + Svelte
|
|
5
|
+
description: Giải pháp tốt nhất cho kích thước bundle, SEO, hiệu suất & khả năng bảo trì. Làm cho Astro and Svelte trang web của bạn đa ngôn ngữ vào năm 2026, dịch thuật LLM, Agent Skills & MCP.
|
|
6
6
|
keywords:
|
|
7
7
|
- đa ngôn ngữ
|
|
8
8
|
- tài liệu
|
|
@@ -58,16 +58,47 @@ history:
|
|
|
58
58
|
|
|
59
59
|
<TOC/>
|
|
60
60
|
|
|
61
|
-
## Intlayer
|
|
61
|
+
## Tại sao Intlayer thay thế các lựa chọn thay thế?
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
So với các giải pháp chính như `astro-i18n` hay `i18next`, Intlayer là giải pháp đi kèm với các tính năng tối ưu hóa tích hợp như:
|
|
64
64
|
|
|
65
|
-
|
|
65
|
+
<AccordionGroup>
|
|
66
|
+
<Accordion header="Bảo hiểm đầy đủ của Astro">
|
|
66
67
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
Intlayer được tối ưu hóa để hoạt động hoàn hảo với Astro bằng cách cung cấp **định tuyến đa ngôn ngữ**, **sơ đồ trang web** và tất cả các tính năng cần thiết để mở rộng quy mô quốc tế hóa (i18n).
|
|
69
|
+
|
|
70
|
+
</Accordion>
|
|
71
|
+
<Accordion header="Kích thước bundle">
|
|
72
|
+
|
|
73
|
+
Thay vì tải các tệp JSON lớn vào trang của bạn, hãy chỉ tải nội dung cần thiết. Intlayer giúp **giảm tới 50% kích thước bundle và kích thước trang**.
|
|
74
|
+
|
|
75
|
+
</Accordion>
|
|
76
|
+
<Accordion header="Khả năng bảo trì">
|
|
77
|
+
|
|
78
|
+
Xác định phạm vi nội dung ứng dụng của bạn **tạo điều kiện bảo trì** cho các ứng dụng quy mô lớn. Bạn có thể sao chép hoặc xóa một thư mục tính năng mà không phải lo lắng về việc xem lại toàn bộ cơ sở mã nội dung của mình. Ngoài ra, Intlayer **được nhập đầy đủ** để đảm bảo tính chính xác cho nội dung của bạn.
|
|
79
|
+
|
|
80
|
+
</Accordion>
|
|
81
|
+
<Accordion header="Đại lý AI">
|
|
82
|
+
|
|
83
|
+
Nội dung cùng định vị **giảm ngữ cảnh cần thiết** của Mô hình ngôn ngữ lớn (LLM). Intlayer cũng đi kèm một bộ công cụ, chẳng hạn như **CLI** để kiểm tra các bản dịch bị thiếu,**[LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/lsp.md)**, **[MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/mcp_server.md)** và **[agent Skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/agent_skills.md)**, để giúp trải nghiệm của nhà phát triển (DX) trở nên mượt mà hơn nữa đối với các tác nhân AI.
|
|
84
|
+
|
|
85
|
+
</Accordion>
|
|
86
|
+
<Accordion header="Tự động hóa">
|
|
87
|
+
|
|
88
|
+
Sử dụng tính năng tự động hóa để dịch trong quy trình CI/CD của bạn bằng cách sử dụng LLM mà bạn chọn với chi phí do nhà cung cấp AI của bạn chi trả. Intlayer cũng cung cấp **trình biên dịch** để tự động trích xuất nội dung cũng như [nền tảng web](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md) để giúp **dịch ở chế độ nền**.
|
|
89
|
+
|
|
90
|
+
</Accordion>
|
|
91
|
+
<Accordion header="Hiệu suất">
|
|
92
|
+
|
|
93
|
+
Việc kết nối các tệp JSON lớn với các thành phần có thể dẫn đến các vấn đề về hiệu suất và khả năng phản hồi. Intlayer tối ưu hóa việc tải nội dung của bạn tại thời điểm build.
|
|
94
|
+
|
|
95
|
+
</Accordion>
|
|
96
|
+
<Accordion header="Mở rộng quy mô không có nhà phát triển">
|
|
97
|
+
|
|
98
|
+
Không chỉ là giải pháp i18n, Intlayer còn cung cấp **[trình chỉnh sửa trực quan](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_visual_editor.md)** và **[CMS đầy đủ](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md)** để giúp bạn quản lý nội dung đa ngôn ngữ của mình trong **thời gian thực**, giúp việc cộng tác với người dịch, người viết quảng cáo và các thành viên khác trong nhóm trở nên liền mạch. Nội dung có thể được lưu trữ cục bộ và/hoặc từ xa.
|
|
99
|
+
|
|
100
|
+
</Accordion>
|
|
101
|
+
</AccordionGroup>
|
|
71
102
|
|
|
72
103
|
---
|
|
73
104
|
|
|
@@ -75,7 +106,9 @@ Với Intlayer, bạn có thể:
|
|
|
75
106
|
|
|
76
107
|
Xem [mẫu ứng dụng](https://github.com/aymericzip/intlayer-astro-template) trên GitHub.
|
|
77
108
|
|
|
78
|
-
|
|
109
|
+
<Steps>
|
|
110
|
+
|
|
111
|
+
<Step number={1} title="Cài đặt các phụ thuộc">
|
|
79
112
|
|
|
80
113
|
Cài đặt các gói cần thiết bằng trình quản lý gói ưa thích của bạn:
|
|
81
114
|
|
|
@@ -118,7 +151,9 @@ bun x intlayer init
|
|
|
118
151
|
- **@astrojs/svelte**
|
|
119
152
|
Tích hợp chính thức của Astro cho phép sử dụng các Svelte component islands.
|
|
120
153
|
|
|
121
|
-
|
|
154
|
+
</Step>
|
|
155
|
+
|
|
156
|
+
<Step number={2} title="Cấu hình dự án của bạn">
|
|
122
157
|
|
|
123
158
|
Tạo một file cấu hình để xác định các ngôn ngữ của ứng dụng:
|
|
124
159
|
|
|
@@ -143,7 +178,9 @@ export default config;
|
|
|
143
178
|
|
|
144
179
|
> Thông qua file cấu hình này, bạn có thể thiết lập các URL bản địa hóa, chuyển hướng middleware, tên cookie, vị trí và phần mở rộng của các khai báo nội dung, tắt log Intlayer trong console, v.v. Để biết danh sách đầy đủ các tham số có sẵn, hãy xem [tài liệu cấu hình](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/configuration.md).
|
|
145
180
|
|
|
146
|
-
|
|
181
|
+
</Step>
|
|
182
|
+
|
|
183
|
+
<Step number={3} title="Tích hợp Intlayer vào cấu hình Astro của bạn">
|
|
147
184
|
|
|
148
185
|
Thêm plugin `intlayer` vào cấu hình Astro và tích hợp Svelte của bạn.
|
|
149
186
|
|
|
@@ -164,7 +201,9 @@ export default defineConfig({
|
|
|
164
201
|
|
|
165
202
|
> Tích hợp `svelte()` cho phép sử dụng các Svelte component islands thông qua `client:only="svelte"`.
|
|
166
203
|
|
|
167
|
-
|
|
204
|
+
</Step>
|
|
205
|
+
|
|
206
|
+
<Step number={4} title="Khai báo nội dung của bạn">
|
|
168
207
|
|
|
169
208
|
Tạo và quản lý các khai báo nội dung của bạn để lưu trữ các bản dịch:
|
|
170
209
|
|
|
@@ -190,7 +229,9 @@ export default appContent;
|
|
|
190
229
|
|
|
191
230
|
> Để biết thêm thông tin, hãy xem [tài liệu khai báo nội dung](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/dictionary/content_file.md).
|
|
192
231
|
|
|
193
|
-
|
|
232
|
+
</Step>
|
|
233
|
+
|
|
234
|
+
<Step number={5} title="Sử dụng nội dung trong Astro">
|
|
194
235
|
|
|
195
236
|
Bạn có thể sử dụng các từ điển trực tiếp trong các file `.astro` bằng cách sử dụng các hàm hỗ trợ cốt lõi được xuất từ `intlayer`. Bạn cũng nên thêm metadata cho SEO (như hreflang và liên kết canonical) vào mỗi trang và giới thiệu một Svelte island cho nội dung tương tác phía client.
|
|
196
237
|
|
|
@@ -278,7 +319,9 @@ const { title } = getIntlayer("app", locale);
|
|
|
278
319
|
> - **`prefix-all`:** Tất cả các URL đều có tiền tố ngôn ngữ. Bạn có thể sử dụng `[locale]` tiêu chuẩn nếu không cần xử lý root riêng biệt.
|
|
279
320
|
> - **`search-param` hoặc `no-prefix`:** Không yêu cầu các thư mục ngôn ngữ. Ngôn ngữ được quản lý qua tham số truy vấn hoặc cookie.
|
|
280
321
|
|
|
281
|
-
|
|
322
|
+
</Step>
|
|
323
|
+
|
|
324
|
+
<Step number={6} title="Tạo một Svelte Island Component">
|
|
282
325
|
|
|
283
326
|
Tạo một thành phần island bao bọc ứng dụng Svelte của bạn. Bạn phải gọi `setupIntlayer` với ngôn ngữ được máy chủ phát hiện trước khi truy cập bất kỳ store nào.
|
|
284
327
|
|
|
@@ -323,7 +366,9 @@ Tạo một thành phần island bao bọc ứng dụng Svelte của bạn. Bạ
|
|
|
323
366
|
|
|
324
367
|
> Prop `locale` được truyền từ trang Astro (phát hiện phía máy chủ) và được sử dụng để khởi tạo `setupIntlayer`, thiết lập ngôn ngữ ban đầu cho tất cả các stores bên trong thành phần.
|
|
325
368
|
|
|
326
|
-
|
|
369
|
+
</Step>
|
|
370
|
+
|
|
371
|
+
<Step number={7} title="Thêm bộ chuyển đổi ngôn ngữ">
|
|
327
372
|
|
|
328
373
|
Chức năng chuyển đổi ngôn ngữ được tích hợp trực tiếp vào Svelte island (xem Bước 6 ở trên). Nó sử dụng store `useLocale` từ `svelte-intlayer` và điều hướng đến URL bản địa hóa khi người dùng chọn ngôn ngữ mới:
|
|
329
374
|
|
|
@@ -367,7 +412,9 @@ Chức năng chuyển đổi ngôn ngữ được tích hợp trực tiếp vào
|
|
|
367
412
|
> **Lưu ý về tính bền vững:**
|
|
368
413
|
> Việc sử dụng `onLocaleChange` để chuyển hướng qua `window.location.href` đảm bảo rằng một URL ngôn ngữ mới sẽ được truy cập. Điều này cho phép middleware Intlayer thiết lập cookie ngôn ngữ và ghi nhớ lựa chọn của người dùng cho các lần truy cập sau.
|
|
369
414
|
|
|
370
|
-
|
|
415
|
+
</Step>
|
|
416
|
+
|
|
417
|
+
<Step number={7} title="Sitemap và Robots.txt">
|
|
371
418
|
|
|
372
419
|
Intlayer cung cấp các tiện ích để tự động tạo sơ đồ trang web (sitemap) bản địa hóa và file robots.txt của bạn.
|
|
373
420
|
|
|
@@ -475,7 +522,9 @@ Tiện ích này sẽ cung cấp:
|
|
|
475
522
|
|
|
476
523
|
---
|
|
477
524
|
|
|
478
|
-
|
|
525
|
+
</Step>
|
|
526
|
+
|
|
527
|
+
<Step number={1} title="Trích xuất nội dung các thành phần của bạn" isOptional={true}>
|
|
479
528
|
|
|
480
529
|
Nếu bạn có một cơ sở mã hiện có, việc chuyển đổi hàng nghìn tệp có thể tốn nhiều thời gian.
|
|
481
530
|
|
|
@@ -576,3 +625,7 @@ bun run build # Or bun run dev
|
|
|
576
625
|
### Tìm hiểu sâu hơn
|
|
577
626
|
|
|
578
627
|
Nếu bạn muốn tìm hiểu thêm, bạn cũng có thể triển khai [Visual Editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_visual_editor.md) hoặc sử dụng [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_CMS.md) để quản lý nội dung bên ngoài.
|
|
628
|
+
|
|
629
|
+
</Step>
|
|
630
|
+
|
|
631
|
+
</Steps>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-24
|
|
3
|
-
updatedAt: 2026-05-
|
|
4
|
-
title: Astro + Vanilla JS i18n -
|
|
5
|
-
description:
|
|
3
|
+
updatedAt: 2026-05-31
|
|
4
|
+
title: Astro + Vanilla JS i18n - Hướng dẫn đầy đủ để dịch Astro + Vanilla JS
|
|
5
|
+
description: Giải pháp tốt nhất cho kích thước bundle, SEO, hiệu suất & khả năng bảo trì. Làm cho Astro and Vanilla JS trang web của bạn đa ngôn ngữ vào năm 2026, dịch thuật LLM, Agent Skills & MCP.
|
|
6
6
|
keywords:
|
|
7
7
|
- đa ngôn ngữ
|
|
8
8
|
- tài liệu
|
|
@@ -58,16 +58,47 @@ history:
|
|
|
58
58
|
|
|
59
59
|
<TOC/>
|
|
60
60
|
|
|
61
|
-
## Intlayer
|
|
61
|
+
## Tại sao Intlayer thay thế các lựa chọn thay thế?
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
So với các giải pháp chính như `astro-i18n` hay `i18next`, Intlayer là giải pháp đi kèm với các tính năng tối ưu hóa tích hợp như:
|
|
64
64
|
|
|
65
|
-
|
|
65
|
+
<AccordionGroup>
|
|
66
|
+
<Accordion header="Bảo hiểm đầy đủ của Astro">
|
|
66
67
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
Intlayer được tối ưu hóa để hoạt động hoàn hảo với Astro bằng cách cung cấp **định tuyến đa ngôn ngữ**, **sơ đồ trang web** và tất cả các tính năng cần thiết để mở rộng quy mô quốc tế hóa (i18n).
|
|
69
|
+
|
|
70
|
+
</Accordion>
|
|
71
|
+
<Accordion header="Kích thước bundle">
|
|
72
|
+
|
|
73
|
+
Thay vì tải các tệp JSON lớn vào trang của bạn, hãy chỉ tải nội dung cần thiết. Intlayer giúp **giảm tới 50% kích thước bundle và kích thước trang**.
|
|
74
|
+
|
|
75
|
+
</Accordion>
|
|
76
|
+
<Accordion header="Khả năng bảo trì">
|
|
77
|
+
|
|
78
|
+
Xác định phạm vi nội dung ứng dụng của bạn **tạo điều kiện bảo trì** cho các ứng dụng quy mô lớn. Bạn có thể sao chép hoặc xóa một thư mục tính năng mà không phải lo lắng về việc xem lại toàn bộ cơ sở mã nội dung của mình. Ngoài ra, Intlayer **được nhập đầy đủ** để đảm bảo tính chính xác cho nội dung của bạn.
|
|
79
|
+
|
|
80
|
+
</Accordion>
|
|
81
|
+
<Accordion header="Đại lý AI">
|
|
82
|
+
|
|
83
|
+
Nội dung cùng định vị **giảm ngữ cảnh cần thiết** của Mô hình ngôn ngữ lớn (LLM). Intlayer cũng đi kèm một bộ công cụ, chẳng hạn như **CLI** để kiểm tra các bản dịch bị thiếu,**[LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/lsp.md)**, **[MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/mcp_server.md)** và **[agent Skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/agent_skills.md)**, để giúp trải nghiệm của nhà phát triển (DX) trở nên mượt mà hơn nữa đối với các tác nhân AI.
|
|
84
|
+
|
|
85
|
+
</Accordion>
|
|
86
|
+
<Accordion header="Tự động hóa">
|
|
87
|
+
|
|
88
|
+
Sử dụng tính năng tự động hóa để dịch trong quy trình CI/CD của bạn bằng cách sử dụng LLM mà bạn chọn với chi phí do nhà cung cấp AI của bạn chi trả. Intlayer cũng cung cấp **trình biên dịch** để tự động trích xuất nội dung cũng như [nền tảng web](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md) để giúp **dịch ở chế độ nền**.
|
|
89
|
+
|
|
90
|
+
</Accordion>
|
|
91
|
+
<Accordion header="Hiệu suất">
|
|
92
|
+
|
|
93
|
+
Việc kết nối các tệp JSON lớn với các thành phần có thể dẫn đến các vấn đề về hiệu suất và khả năng phản hồi. Intlayer tối ưu hóa việc tải nội dung của bạn tại thời điểm build.
|
|
94
|
+
|
|
95
|
+
</Accordion>
|
|
96
|
+
<Accordion header="Mở rộng quy mô không có nhà phát triển">
|
|
97
|
+
|
|
98
|
+
Không chỉ là giải pháp i18n, Intlayer còn cung cấp **[trình chỉnh sửa trực quan](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_visual_editor.md)** và **[CMS đầy đủ](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md)** để giúp bạn quản lý nội dung đa ngôn ngữ của mình trong **thời gian thực**, giúp việc cộng tác với người dịch, người viết quảng cáo và các thành viên khác trong nhóm trở nên liền mạch. Nội dung có thể được lưu trữ cục bộ và/hoặc từ xa.
|
|
99
|
+
|
|
100
|
+
</Accordion>
|
|
101
|
+
</AccordionGroup>
|
|
71
102
|
|
|
72
103
|
---
|
|
73
104
|
|
|
@@ -75,7 +106,9 @@ Với Intlayer, bạn có thể:
|
|
|
75
106
|
|
|
76
107
|
Xem [mẫu ứng dụng](https://github.com/aymericzip/intlayer-astro-template) trên GitHub.
|
|
77
108
|
|
|
78
|
-
|
|
109
|
+
<Steps>
|
|
110
|
+
|
|
111
|
+
<Step number={1} title="Cài đặt các phụ thuộc">
|
|
79
112
|
|
|
80
113
|
Cài đặt các gói cần thiết bằng trình quản lý gói ưa thích của bạn:
|
|
81
114
|
|
|
@@ -112,7 +145,9 @@ bun x intlayer init
|
|
|
112
145
|
- **vanilla-intlayer**
|
|
113
146
|
Gói để tích hợp Intlayer vào các ứng dụng Vanilla JavaScript / TypeScript. Nó cung cấp singleton Pub/Sub (`IntlayerClient`) và các hàm hỗ trợ dựa trên callback (`useIntlayer`, `useLocale`, v.v.) để bất kỳ phần nào trong `<script>` Astro của bạn cũng có thể phản ứng với các thay đổi ngôn ngữ mà không cần framework UI.
|
|
114
147
|
|
|
115
|
-
|
|
148
|
+
</Step>
|
|
149
|
+
|
|
150
|
+
<Step number={2} title="Cấu hình dự án của bạn">
|
|
116
151
|
|
|
117
152
|
Tạo một file cấu hình để xác định các ngôn ngữ của ứng dụng:
|
|
118
153
|
|
|
@@ -137,7 +172,9 @@ export default config;
|
|
|
137
172
|
|
|
138
173
|
> Thông qua file cấu hình này, bạn có thể thiết lập các URL bản địa hóa, chuyển hướng middleware, tên cookie, vị trí và phần mở rộng của các khai báo nội dung, tắt log Intlayer trong console, v.v. Để biết danh sách đầy đủ các tham số có sẵn, hãy xem [tài liệu cấu hình](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/configuration.md).
|
|
139
174
|
|
|
140
|
-
|
|
175
|
+
</Step>
|
|
176
|
+
|
|
177
|
+
<Step number={3} title="Tích hợp Intlayer vào cấu hình Astro của bạn">
|
|
141
178
|
|
|
142
179
|
Thêm plugin `intlayer` vào cấu hình Astro của bạn. Không cần tích hợp thêm framework UI nào cho Vanilla JS.
|
|
143
180
|
|
|
@@ -155,7 +192,9 @@ export default defineConfig({
|
|
|
155
192
|
|
|
156
193
|
> Plugin tích hợp `intlayer()` được sử dụng để tích hợp Intlayer với Astro. Nó đảm bảo việc tạo các file khai báo nội dung và theo dõi chúng trong chế độ phát triển. Nó xác định các biến môi trường Intlayer bên trong ứng dụng Astro và cung cấp các alias để tối ưu hóa hiệu suất.
|
|
157
194
|
|
|
158
|
-
|
|
195
|
+
</Step>
|
|
196
|
+
|
|
197
|
+
<Step number={4} title="Khai báo nội dung của bạn">
|
|
159
198
|
|
|
160
199
|
Tạo và quản lý các khai báo nội dung của bạn để lưu trữ các bản dịch:
|
|
161
200
|
|
|
@@ -193,7 +232,9 @@ export default appContent;
|
|
|
193
232
|
|
|
194
233
|
> Để biết thêm thông tin, hãy xem [tài liệu khai báo nội dung](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/dictionary/content_file.md).
|
|
195
234
|
|
|
196
|
-
|
|
235
|
+
</Step>
|
|
236
|
+
|
|
237
|
+
<Step number={5} title="Sử dụng nội dung trong Astro">
|
|
197
238
|
|
|
198
239
|
Với Vanilla JS, tất cả các quá trình render phía máy chủ (SSR) diễn ra trực tiếp trong các file `.astro` bằng cách sử dụng `getIntlayer`. Sau đó, ở phía client, khối `<script>` khởi tạo thư viện `vanilla-intlayer` để cho phép chuyển đổi ngôn ngữ.
|
|
199
240
|
|
|
@@ -302,7 +343,9 @@ const { greeting, description, switchLocale } = getIntlayer("app", locale);
|
|
|
302
343
|
> - **`prefix-all`:** Tất cả các URL đều có tiền tố ngôn ngữ. Bạn có thể sử dụng `[locale]` tiêu chuẩn nếu không cần xử lý root riêng biệt.
|
|
303
344
|
> - **`search-param` hoặc `no-prefix`:** Không yêu cầu các thư mục ngôn ngữ. Ngôn ngữ được quản lý qua tham số truy vấn hoặc cookie.
|
|
304
345
|
|
|
305
|
-
|
|
346
|
+
</Step>
|
|
347
|
+
|
|
348
|
+
<Step number={6} title="Thêm bộ chuyển đổi ngôn ngữ">
|
|
306
349
|
|
|
307
350
|
Trong Astro với Vanilla JS, bộ chuyển đổi ngôn ngữ được tạo trên máy chủ dưới dạng các liên kết thông thường và được kích hoạt ở phía client thông qua khối `<script>`. Khi người dùng nhấp vào liên kết ngôn ngữ, `vanilla-intlayer` sẽ thiết lập cookie ngôn ngữ thông qua `setLocale` trước khi điều hướng đến URL bản địa hóa.
|
|
308
351
|
|
|
@@ -343,7 +386,9 @@ Trong Astro với Vanilla JS, bộ chuyển đổi ngôn ngữ được tạo tr
|
|
|
343
386
|
> **Lưu ý về Progressive Enhancement:**
|
|
344
387
|
> Các liên kết trong bộ chuyển đổi ngôn ngữ sẽ hoạt động như mã `<a>` tiêu chuẩn ngay cả khi không có JavaScript. Khi có JavaScript, lệnh gọi `setLocale` sẽ cập nhật cookie trước khi chuyển hướng, đảm bảo middleware xử lý đúng lựa chọn ngôn ngữ.
|
|
345
388
|
|
|
346
|
-
|
|
389
|
+
</Step>
|
|
390
|
+
|
|
391
|
+
<Step number={7} title="Sitemap và Robots.txt">
|
|
347
392
|
|
|
348
393
|
Intlayer cung cấp các tiện ích để tự động tạo sơ đồ trang web (sitemap) bản địa hóa và file robots.txt của bạn.
|
|
349
394
|
|
|
@@ -451,7 +496,9 @@ Tiện ích này sẽ cung cấp:
|
|
|
451
496
|
|
|
452
497
|
---
|
|
453
498
|
|
|
454
|
-
|
|
499
|
+
</Step>
|
|
500
|
+
|
|
501
|
+
<Step number={1} title="Trích xuất nội dung các thành phần của bạn" isOptional={true}>
|
|
455
502
|
|
|
456
503
|
Nếu bạn có một cơ sở mã hiện có, việc chuyển đổi hàng nghìn tệp có thể tốn nhiều thời gian.
|
|
457
504
|
|
|
@@ -552,3 +599,7 @@ bun run build # Or bun run dev
|
|
|
552
599
|
### Tìm hiểu sâu hơn
|
|
553
600
|
|
|
554
601
|
Nếu bạn muốn tìm hiểu thêm, bạn cũng có thể triển khai [Visual Editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_visual_editor.md) hoặc sử dụng [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_CMS.md) để quản lý nội dung bên ngoài.
|
|
602
|
+
|
|
603
|
+
</Step>
|
|
604
|
+
|
|
605
|
+
</Steps>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-24
|
|
3
|
-
updatedAt: 2026-05-
|
|
4
|
-
title: Astro + Vue i18n -
|
|
5
|
-
description:
|
|
3
|
+
updatedAt: 2026-05-31
|
|
4
|
+
title: Astro + Vue i18n - Hướng dẫn đầy đủ để dịch Astro + Vue
|
|
5
|
+
description: Giải pháp tốt nhất cho kích thước bundle, SEO, hiệu suất & khả năng bảo trì. Làm cho Astro and Vue trang web của bạn đa ngôn ngữ vào năm 2026, dịch thuật LLM, Agent Skills & MCP.
|
|
6
6
|
keywords:
|
|
7
7
|
- đa ngôn ngữ
|
|
8
8
|
- tài liệu
|
|
@@ -58,16 +58,47 @@ history:
|
|
|
58
58
|
|
|
59
59
|
<TOC/>
|
|
60
60
|
|
|
61
|
-
## Intlayer
|
|
61
|
+
## Tại sao Intlayer thay thế các lựa chọn thay thế?
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
So với các giải pháp chính như `astro-i18n` hay `i18next`, Intlayer là giải pháp đi kèm với các tính năng tối ưu hóa tích hợp như:
|
|
64
64
|
|
|
65
|
-
|
|
65
|
+
<AccordionGroup>
|
|
66
|
+
<Accordion header="Bảo hiểm đầy đủ của Astro">
|
|
66
67
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
Intlayer được tối ưu hóa để hoạt động hoàn hảo với Astro bằng cách cung cấp **định tuyến đa ngôn ngữ**, **sơ đồ trang web** và tất cả các tính năng cần thiết để mở rộng quy mô quốc tế hóa (i18n).
|
|
69
|
+
|
|
70
|
+
</Accordion>
|
|
71
|
+
<Accordion header="Kích thước bundle">
|
|
72
|
+
|
|
73
|
+
Thay vì tải các tệp JSON lớn vào trang của bạn, hãy chỉ tải nội dung cần thiết. Intlayer giúp **giảm tới 50% kích thước bundle và kích thước trang**.
|
|
74
|
+
|
|
75
|
+
</Accordion>
|
|
76
|
+
<Accordion header="Khả năng bảo trì">
|
|
77
|
+
|
|
78
|
+
Xác định phạm vi nội dung ứng dụng của bạn **tạo điều kiện bảo trì** cho các ứng dụng quy mô lớn. Bạn có thể sao chép hoặc xóa một thư mục tính năng mà không phải lo lắng về việc xem lại toàn bộ cơ sở mã nội dung của mình. Ngoài ra, Intlayer **được nhập đầy đủ** để đảm bảo tính chính xác cho nội dung của bạn.
|
|
79
|
+
|
|
80
|
+
</Accordion>
|
|
81
|
+
<Accordion header="Đại lý AI">
|
|
82
|
+
|
|
83
|
+
Nội dung cùng định vị **giảm ngữ cảnh cần thiết** của Mô hình ngôn ngữ lớn (LLM). Intlayer cũng đi kèm một bộ công cụ, chẳng hạn như **CLI** để kiểm tra các bản dịch bị thiếu,**[LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/lsp.md)**, **[MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/mcp_server.md)** và **[agent Skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/agent_skills.md)**, để giúp trải nghiệm của nhà phát triển (DX) trở nên mượt mà hơn nữa đối với các tác nhân AI.
|
|
84
|
+
|
|
85
|
+
</Accordion>
|
|
86
|
+
<Accordion header="Tự động hóa">
|
|
87
|
+
|
|
88
|
+
Sử dụng tính năng tự động hóa để dịch trong quy trình CI/CD của bạn bằng cách sử dụng LLM mà bạn chọn với chi phí do nhà cung cấp AI của bạn chi trả. Intlayer cũng cung cấp **trình biên dịch** để tự động trích xuất nội dung cũng như [nền tảng web](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md) để giúp **dịch ở chế độ nền**.
|
|
89
|
+
|
|
90
|
+
</Accordion>
|
|
91
|
+
<Accordion header="Hiệu suất">
|
|
92
|
+
|
|
93
|
+
Việc kết nối các tệp JSON lớn với các thành phần có thể dẫn đến các vấn đề về hiệu suất và khả năng phản hồi. Intlayer tối ưu hóa việc tải nội dung của bạn tại thời điểm build.
|
|
94
|
+
|
|
95
|
+
</Accordion>
|
|
96
|
+
<Accordion header="Mở rộng quy mô không có nhà phát triển">
|
|
97
|
+
|
|
98
|
+
Không chỉ là giải pháp i18n, Intlayer còn cung cấp **[trình chỉnh sửa trực quan](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_visual_editor.md)** và **[CMS đầy đủ](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md)** để giúp bạn quản lý nội dung đa ngôn ngữ của mình trong **thời gian thực**, giúp việc cộng tác với người dịch, người viết quảng cáo và các thành viên khác trong nhóm trở nên liền mạch. Nội dung có thể được lưu trữ cục bộ và/hoặc từ xa.
|
|
99
|
+
|
|
100
|
+
</Accordion>
|
|
101
|
+
</AccordionGroup>
|
|
71
102
|
|
|
72
103
|
---
|
|
73
104
|
|
|
@@ -75,7 +106,9 @@ Với Intlayer, bạn có thể:
|
|
|
75
106
|
|
|
76
107
|
Xem [mẫu ứng dụng](https://github.com/aymericzip/intlayer-astro-template) trên GitHub.
|
|
77
108
|
|
|
78
|
-
|
|
109
|
+
<Steps>
|
|
110
|
+
|
|
111
|
+
<Step number={1} title="Cài đặt các phụ thuộc">
|
|
79
112
|
|
|
80
113
|
Cài đặt các gói cần thiết bằng trình quản lý gói ưa thích của bạn:
|
|
81
114
|
|
|
@@ -118,7 +151,9 @@ bun x intlayer init
|
|
|
118
151
|
- **@astrojs/vue**
|
|
119
152
|
Tích hợp chính thức của Astro cho phép sử dụng các Vue component islands.
|
|
120
153
|
|
|
121
|
-
|
|
154
|
+
</Step>
|
|
155
|
+
|
|
156
|
+
<Step number={2} title="Cấu hình dự án của bạn">
|
|
122
157
|
|
|
123
158
|
Tạo một file cấu hình để xác định các ngôn ngữ của ứng dụng:
|
|
124
159
|
|
|
@@ -143,7 +178,9 @@ export default config;
|
|
|
143
178
|
|
|
144
179
|
> Thông qua file cấu hình này, bạn có thể thiết lập các URL bản địa hóa, chuyển hướng middleware, tên cookie, vị trí và phần mở rộng của các khai báo nội dung, tắt log Intlayer trong console, v.v. Để biết danh sách đầy đủ các tham số có sẵn, hãy xem [tài liệu cấu hình](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/configuration.md).
|
|
145
180
|
|
|
146
|
-
|
|
181
|
+
</Step>
|
|
182
|
+
|
|
183
|
+
<Step number={3} title="Tích hợp Intlayer vào cấu hình Astro của bạn">
|
|
147
184
|
|
|
148
185
|
Thêm plugin `intlayer` vào cấu hình Astro và tích hợp Vue của bạn.
|
|
149
186
|
|
|
@@ -164,7 +201,9 @@ export default defineConfig({
|
|
|
164
201
|
|
|
165
202
|
> Tích hợp `vue()` cho phép sử dụng các Vue component islands thông qua `client:only="vue"`.
|
|
166
203
|
|
|
167
|
-
|
|
204
|
+
</Step>
|
|
205
|
+
|
|
206
|
+
<Step number={4} title="Khai báo nội dung của bạn">
|
|
168
207
|
|
|
169
208
|
Tạo và quản lý các khai báo nội dung của bạn để lưu trữ các bản dịch:
|
|
170
209
|
|
|
@@ -190,7 +229,9 @@ export default appContent;
|
|
|
190
229
|
|
|
191
230
|
> Để biết thêm thông tin, hãy xem [tài liệu khai báo nội dung](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/dictionary/content_file.md).
|
|
192
231
|
|
|
193
|
-
|
|
232
|
+
</Step>
|
|
233
|
+
|
|
234
|
+
<Step number={5} title="Sử dụng nội dung trong Astro">
|
|
194
235
|
|
|
195
236
|
Bạn có thể sử dụng các từ điển trực tiếp trong các file `.astro` bằng cách sử dụng các hàm hỗ trợ cốt lõi được xuất từ `intlayer`. Bạn cũng nên thêm metadata cho SEO (như hreflang và liên kết canonical) vào mỗi trang và giới thiệu một Vue island cho nội dung tương tác phía client.
|
|
196
237
|
|
|
@@ -270,7 +311,9 @@ const { title } = getIntlayer("app", locale);
|
|
|
270
311
|
> - **`prefix-all`:** Tất cả các URL đều có tiền tố ngôn ngữ. Bạn có thể sử dụng `[locale]` tiêu chuẩn nếu không cần xử lý root riêng biệt.
|
|
271
312
|
> - **`search-param` hoặc `no-prefix`:** Không yêu cầu các thư mục ngôn ngữ. Ngôn ngữ được quản lý qua tham số truy vấn hoặc cookie.
|
|
272
313
|
|
|
273
|
-
|
|
314
|
+
</Step>
|
|
315
|
+
|
|
316
|
+
<Step number={6} title="Tạo một Vue Island Component">
|
|
274
317
|
|
|
275
318
|
Tạo một thành phần island bao bọc ứng dụng Vue của bạn và nhận ngôn ngữ được máy chủ phát hiện. Bạn phải gọi `installIntlayer` để đăng ký plugin Intlayer vào instance Vue trước khi sử dụng bất kỳ composable nào.
|
|
276
319
|
|
|
@@ -329,7 +372,9 @@ const { title } = useIntlayer("app");
|
|
|
329
372
|
|
|
330
373
|
> Prop `locale` được truyền từ trang Astro (phát hiện phía máy chủ) và được sử dụng để khởi tạo `installIntlayer`, thiết lập ngôn ngữ ban đầu cho tất cả các composable bên trong cây thành phần.
|
|
331
374
|
|
|
332
|
-
|
|
375
|
+
</Step>
|
|
376
|
+
|
|
377
|
+
<Step number={7} title="Thêm bộ chuyển đổi ngôn ngữ">
|
|
333
378
|
|
|
334
379
|
Chức năng chuyển đổi ngôn ngữ được tích hợp trực tiếp vào template của Vue island (xem Bước 6 ở trên). Nó sử dụng composable `useLocale` từ `vue-intlayer` và điều hướng đến URL bản địa hóa khi người dùng chọn ngôn ngữ mới:
|
|
335
380
|
|
|
@@ -377,7 +422,9 @@ const {
|
|
|
377
422
|
> **Lưu ý về tính bền vững:**
|
|
378
423
|
> Việc sử dụng `onLocaleChange` để chuyển hướng qua `window.location.href` đảm bảo rằng một URL ngôn ngữ mới có tiền tố sẽ được truy cập. Điều này cho phép middleware Intlayer thiết lập cookie ngôn ngữ và ghi nhớ lựa chọn của người dùng cho các lần truy cập sau.
|
|
379
424
|
|
|
380
|
-
|
|
425
|
+
</Step>
|
|
426
|
+
|
|
427
|
+
<Step number={7} title="Sitemap và Robots.txt">
|
|
381
428
|
|
|
382
429
|
Intlayer cung cấp các tiện ích để tự động tạo sơ đồ trang web (sitemap) bản địa hóa và file robots.txt của bạn.
|
|
383
430
|
|
|
@@ -485,7 +532,9 @@ Tiện ích này sẽ cung cấp:
|
|
|
485
532
|
|
|
486
533
|
---
|
|
487
534
|
|
|
488
|
-
|
|
535
|
+
</Step>
|
|
536
|
+
|
|
537
|
+
<Step number={1} title="Trích xuất nội dung các thành phần của bạn" isOptional={true}>
|
|
489
538
|
|
|
490
539
|
Nếu bạn có một cơ sở mã hiện có, việc chuyển đổi hàng nghìn tệp có thể tốn nhiều thời gian.
|
|
491
540
|
|
|
@@ -586,3 +635,7 @@ bun run build # Or bun run dev
|
|
|
586
635
|
### Tìm hiểu sâu hơn
|
|
587
636
|
|
|
588
637
|
Nếu bạn muốn tìm hiểu thêm, bạn cũng có thể triển khai [Visual Editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_visual_editor.md) hoặc sử dụng [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_CMS.md) để quản lý nội dung bên ngoài.
|
|
638
|
+
|
|
639
|
+
</Step>
|
|
640
|
+
|
|
641
|
+
</Steps>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2025-08-23
|
|
3
|
-
updatedAt: 2026-05-
|
|
4
|
-
title: Create React App i18n -
|
|
5
|
-
description:
|
|
3
|
+
updatedAt: 2026-05-31
|
|
4
|
+
title: Create React App i18n - Hướng dẫn đầy đủ để dịch React
|
|
5
|
+
description: Giải pháp tốt nhất cho kích thước bundle, SEO, hiệu suất & khả năng bảo trì. Làm cho Create React App trang web của bạn đa ngôn ngữ vào năm 2026, dịch thuật LLM, Agent Skills & MCP.
|
|
6
6
|
keywords:
|
|
7
7
|
- Quốc tế hóa
|
|
8
8
|
- Tài liệu
|
|
@@ -53,7 +53,9 @@ Với Intlayer, bạn có thể:
|
|
|
53
53
|
|
|
54
54
|
## Hướng dẫn từng bước để thiết lập Intlayer trong ứng dụng React
|
|
55
55
|
|
|
56
|
-
|
|
56
|
+
<Steps>
|
|
57
|
+
|
|
58
|
+
<Step number={1} title="Cài đặt các phụ thuộc">
|
|
57
59
|
|
|
58
60
|
Cài đặt các gói cần thiết bằng npm:
|
|
59
61
|
|
|
@@ -89,7 +91,9 @@ Gói cốt lõi cung cấp các công cụ quốc tế hóa cho quản lý cấu
|
|
|
89
91
|
|
|
90
92
|
Bao gồm các lệnh `react-scripts-intlayer` và các plugin để tích hợp Intlayer với ứng dụng dựa trên Create React App. Các plugin này dựa trên [craco](https://craco.js.org/) và bao gồm cấu hình bổ sung cho bộ đóng gói [Webpack](https://webpack.js.org/).
|
|
91
93
|
|
|
92
|
-
|
|
94
|
+
</Step>
|
|
95
|
+
|
|
96
|
+
<Step number={2} title="Cấu hình dự án của bạn">
|
|
93
97
|
|
|
94
98
|
Tạo một file cấu hình để cấu hình các ngôn ngữ cho ứng dụng của bạn:
|
|
95
99
|
|
|
@@ -113,7 +117,9 @@ export default config;
|
|
|
113
117
|
|
|
114
118
|
> Thông qua tệp cấu hình này, bạn có thể thiết lập URL địa phương hóa, chuyển hướng middleware, tên cookie, vị trí và phần mở rộng của các khai báo nội dung của bạn, tắt các log của Intlayer trong console, và nhiều hơn nữa. Để xem danh sách đầy đủ các tham số có sẵn, hãy tham khảo [tài liệu cấu hình](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/configuration.md).
|
|
115
119
|
|
|
116
|
-
|
|
120
|
+
</Step>
|
|
121
|
+
|
|
122
|
+
<Step number={3} title="Tích hợp Intlayer vào Cấu hình CRA của Bạn">
|
|
117
123
|
|
|
118
124
|
Thay đổi các script của bạn để sử dụng react-intlayer
|
|
119
125
|
|
|
@@ -127,7 +133,9 @@ Thay đổi các script của bạn để sử dụng react-intlayer
|
|
|
127
133
|
|
|
128
134
|
> Các script `react-scripts-intlayer` dựa trên [CRACO](https://craco.js.org/). Bạn cũng có thể tự thiết lập dựa trên plugin craco của intlayer. [Xem ví dụ tại đây](https://github.com/aymericzip/intlayer/blob/main/examples/react-app/craco.config.js).
|
|
129
135
|
|
|
130
|
-
|
|
136
|
+
</Step>
|
|
137
|
+
|
|
138
|
+
<Step number={4} title="Khai báo Nội dung của Bạn">
|
|
131
139
|
|
|
132
140
|
Tạo và quản lý các khai báo nội dung để lưu trữ bản dịch:
|
|
133
141
|
|
|
@@ -175,7 +183,9 @@ export default appContent;
|
|
|
175
183
|
|
|
176
184
|
> Nếu tệp nội dung của bạn bao gồm mã TSX, bạn nên cân nhắc nhập `import React from "react";` trong tệp nội dung của bạn.
|
|
177
185
|
|
|
178
|
-
|
|
186
|
+
</Step>
|
|
187
|
+
|
|
188
|
+
<Step number={5} title="Sử dụng Intlayer trong Mã của Bạn">
|
|
179
189
|
|
|
180
190
|
Truy cập các từ điển nội dung của bạn trong toàn bộ ứng dụng:
|
|
181
191
|
|
|
@@ -224,7 +234,9 @@ export default App;
|
|
|
224
234
|
|
|
225
235
|
> Để tìm hiểu thêm về hook `useIntlayer`, hãy tham khảo [tài liệu](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/packages/react-intlayer/useIntlayer.md).
|
|
226
236
|
|
|
227
|
-
|
|
237
|
+
</Step>
|
|
238
|
+
|
|
239
|
+
<Step number={6} title="Thay đổi ngôn ngữ của nội dung" isOptional={true}>
|
|
228
240
|
|
|
229
241
|
Để thay đổi ngôn ngữ của nội dung, bạn có thể sử dụng hàm `setLocale` được cung cấp bởi hook `useLocale`. Hàm này cho phép bạn thiết lập locale của ứng dụng và cập nhật nội dung tương ứng.
|
|
230
242
|
|
|
@@ -245,7 +257,9 @@ const LocaleSwitcher = () => {
|
|
|
245
257
|
|
|
246
258
|
> Để tìm hiểu thêm về hook `useLocale`, hãy tham khảo [tài liệu](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/packages/react-intlayer/useLocale.md).
|
|
247
259
|
|
|
248
|
-
|
|
260
|
+
</Step>
|
|
261
|
+
|
|
262
|
+
<Step number={7} title="Thêm định tuyến theo ngôn ngữ vào ứng dụng của bạn" isOptional={true}>
|
|
249
263
|
|
|
250
264
|
Mục đích của bước này là tạo các đường dẫn duy nhất cho mỗi ngôn ngữ. Điều này hữu ích cho SEO và các URL thân thiện với SEO.
|
|
251
265
|
Ví dụ:
|
|
@@ -390,7 +404,9 @@ const App: FC = () => (
|
|
|
390
404
|
);
|
|
391
405
|
```
|
|
392
406
|
|
|
393
|
-
|
|
407
|
+
</Step>
|
|
408
|
+
|
|
409
|
+
<Step number={8} title="Thay đổi URL khi locale thay đổi" isOptional={true}>
|
|
394
410
|
|
|
395
411
|
Để thay đổi URL khi locale thay đổi, bạn có thể sử dụng prop `onLocaleChange` được cung cấp bởi hook `useLocale`. Đồng thời, bạn có thể sử dụng các hook `useLocation` và `useNavigate` từ `react-router-dom` để cập nhật đường dẫn URL.
|
|
396
412
|
|
|
@@ -470,7 +486,9 @@ const LocaleSwitcher: FC = () => {
|
|
|
470
486
|
> - [`dir` attribute](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dir)
|
|
471
487
|
> - [`aria-current` attribute](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)
|
|
472
488
|
|
|
473
|
-
|
|
489
|
+
</Step>
|
|
490
|
+
|
|
491
|
+
<Step number={9} title="Chuyển đổi Thuộc tính Ngôn ngữ và Hướng của HTML" isOptional={true}>
|
|
474
492
|
|
|
475
493
|
Khi ứng dụng của bạn hỗ trợ nhiều ngôn ngữ, việc cập nhật các thuộc tính `lang` và `dir` của thẻ `<html>` để phù hợp với locale hiện tại là điều rất quan trọng. Việc này đảm bảo:
|
|
476
494
|
|
|
@@ -590,3 +608,7 @@ Tiện ích mở rộng này cung cấp:
|
|
|
590
608
|
### Đi xa hơn
|
|
591
609
|
|
|
592
610
|
Để đi xa hơn, bạn có thể triển khai [trình soạn thảo trực quan](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_visual_editor.md) hoặc tách nội dung của bạn ra bên ngoài bằng cách sử dụng [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_CMS.md).
|
|
611
|
+
|
|
612
|
+
</Step>
|
|
613
|
+
|
|
614
|
+
</Steps>
|