@intlayer/docs 9.5.5 → 9.5.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -1
- package/blog/ar/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/de/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/en/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/en-GB/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/es/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/fr/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/hi/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/id/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/it/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/ja/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/ko/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/pl/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/pt/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/ru/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/tr/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/uk/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/vi/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/blog/zh/transform_existing_vite_react_app_using_compiler.md +4 -2
- package/docs/ar/intlayer_with_astro.md +19 -32
- package/docs/ar/intlayer_with_astro_lit.md +32 -36
- package/docs/ar/intlayer_with_astro_preact.md +32 -36
- package/docs/ar/intlayer_with_astro_react.md +32 -36
- package/docs/ar/intlayer_with_astro_solid.md +32 -36
- package/docs/ar/intlayer_with_astro_svelte.md +32 -36
- package/docs/ar/intlayer_with_astro_vue.md +32 -36
- package/docs/ar/intlayer_with_react_router_v7.md +12 -1
- package/docs/ar/intlayer_with_solid_start.md +14 -7
- package/docs/ar/intlayer_with_svelte_kit.md +12 -1
- package/docs/ar/intlayer_with_tanstack+solid.md +13 -2
- package/docs/ar/intlayer_with_tanstack.md +13 -6
- package/docs/ar/intlayer_with_vite+lit.md +75 -3
- package/docs/ar/intlayer_with_vite+preact.md +27 -19
- package/docs/ar/intlayer_with_vite+react.md +27 -19
- package/docs/ar/intlayer_with_vite+solid.md +27 -19
- package/docs/ar/intlayer_with_vite+svelte.md +27 -19
- package/docs/ar/intlayer_with_vite+vanilla.md +16 -3
- package/docs/ar/intlayer_with_vite+vue.md +27 -19
- package/docs/ar/introduction.md +0 -1
- package/docs/ar/readme.md +0 -1
- package/docs/ar/releases/v8.md +1 -5
- package/docs/bn/intlayer_with_vite+lit.md +75 -3
- package/docs/bn/intlayer_with_vite+vanilla.md +16 -3
- package/docs/bn/introduction.md +0 -1
- package/docs/cs/intlayer_with_vite+lit.md +75 -3
- package/docs/cs/intlayer_with_vite+vanilla.md +16 -3
- package/docs/cs/introduction.md +0 -1
- package/docs/de/intlayer_with_astro.md +12 -25
- package/docs/de/intlayer_with_astro_lit.md +23 -27
- package/docs/de/intlayer_with_astro_preact.md +23 -27
- package/docs/de/intlayer_with_astro_react.md +23 -27
- package/docs/de/intlayer_with_astro_solid.md +23 -27
- package/docs/de/intlayer_with_astro_svelte.md +23 -27
- package/docs/de/intlayer_with_astro_vue.md +23 -27
- package/docs/de/intlayer_with_react_router_v7.md +12 -1
- package/docs/de/intlayer_with_solid_start.md +14 -7
- package/docs/de/intlayer_with_svelte_kit.md +12 -1
- package/docs/de/intlayer_with_tanstack+solid.md +13 -2
- package/docs/de/intlayer_with_tanstack.md +13 -6
- package/docs/de/intlayer_with_vite+lit.md +75 -3
- package/docs/de/intlayer_with_vite+preact.md +16 -3
- package/docs/de/intlayer_with_vite+react.md +16 -3
- package/docs/de/intlayer_with_vite+solid.md +16 -3
- package/docs/de/intlayer_with_vite+svelte.md +16 -3
- package/docs/de/intlayer_with_vite+vanilla.md +16 -3
- package/docs/de/intlayer_with_vite+vue.md +16 -3
- package/docs/de/introduction.md +0 -1
- package/docs/de/readme.md +0 -1
- package/docs/de/releases/v8.md +1 -5
- package/docs/en/intlayer_with_astro.md +5 -20
- package/docs/en/intlayer_with_astro_lit.md +22 -26
- package/docs/en/intlayer_with_astro_preact.md +22 -26
- package/docs/en/intlayer_with_astro_react.md +22 -26
- package/docs/en/intlayer_with_astro_solid.md +22 -26
- package/docs/en/intlayer_with_astro_svelte.md +22 -26
- package/docs/en/intlayer_with_astro_vanilla.md +20 -13
- package/docs/en/intlayer_with_astro_vue.md +22 -26
- package/docs/en/intlayer_with_react_router_v7.md +12 -1
- package/docs/en/intlayer_with_solid_start.md +14 -7
- package/docs/en/intlayer_with_svelte_kit.md +12 -1
- package/docs/en/intlayer_with_tanstack+solid.md +13 -2
- package/docs/en/intlayer_with_tanstack.md +12 -5
- package/docs/en/intlayer_with_vite+lit.md +75 -3
- package/docs/en/intlayer_with_vite+preact.md +16 -3
- package/docs/en/intlayer_with_vite+react.md +16 -3
- package/docs/en/intlayer_with_vite+solid.md +16 -3
- package/docs/en/intlayer_with_vite+svelte.md +16 -3
- package/docs/en/intlayer_with_vite+vanilla.md +16 -3
- package/docs/en/intlayer_with_vite+vue.md +16 -3
- package/docs/en/introduction.md +0 -1
- package/docs/en/readme.md +0 -1
- package/docs/en/releases/v8.md +1 -5
- package/docs/en-GB/intlayer_with_astro.md +12 -25
- package/docs/en-GB/intlayer_with_astro_lit.md +23 -27
- package/docs/en-GB/intlayer_with_astro_preact.md +23 -27
- package/docs/en-GB/intlayer_with_astro_react.md +23 -27
- package/docs/en-GB/intlayer_with_astro_solid.md +23 -27
- package/docs/en-GB/intlayer_with_astro_svelte.md +23 -27
- package/docs/en-GB/intlayer_with_astro_vue.md +23 -27
- package/docs/en-GB/intlayer_with_react_router_v7.md +12 -1
- package/docs/en-GB/intlayer_with_solid_start.md +14 -7
- package/docs/en-GB/intlayer_with_svelte_kit.md +12 -1
- package/docs/en-GB/intlayer_with_tanstack+solid.md +13 -2
- package/docs/en-GB/intlayer_with_tanstack.md +13 -6
- package/docs/en-GB/intlayer_with_vite+lit.md +75 -3
- package/docs/en-GB/intlayer_with_vite+preact.md +16 -3
- package/docs/en-GB/intlayer_with_vite+react.md +16 -3
- package/docs/en-GB/intlayer_with_vite+solid.md +25 -15
- package/docs/en-GB/intlayer_with_vite+svelte.md +16 -3
- package/docs/en-GB/intlayer_with_vite+vanilla.md +16 -3
- package/docs/en-GB/intlayer_with_vite+vue.md +16 -3
- package/docs/en-GB/introduction.md +0 -1
- package/docs/en-GB/readme.md +0 -1
- package/docs/en-GB/releases/v8.md +1 -5
- package/docs/es/intlayer_with_astro.md +12 -25
- package/docs/es/intlayer_with_astro_lit.md +23 -27
- package/docs/es/intlayer_with_astro_preact.md +23 -27
- package/docs/es/intlayer_with_astro_react.md +23 -27
- package/docs/es/intlayer_with_astro_solid.md +23 -27
- package/docs/es/intlayer_with_astro_svelte.md +23 -27
- package/docs/es/intlayer_with_astro_vue.md +23 -27
- package/docs/es/intlayer_with_react_router_v7.md +12 -1
- package/docs/es/intlayer_with_solid_start.md +14 -7
- package/docs/es/intlayer_with_svelte_kit.md +12 -1
- package/docs/es/intlayer_with_tanstack+solid.md +13 -2
- package/docs/es/intlayer_with_tanstack.md +13 -6
- package/docs/es/intlayer_with_vite+lit.md +75 -3
- package/docs/es/intlayer_with_vite+preact.md +16 -3
- package/docs/es/intlayer_with_vite+react.md +16 -3
- package/docs/es/intlayer_with_vite+solid.md +16 -3
- package/docs/es/intlayer_with_vite+svelte.md +16 -3
- package/docs/es/intlayer_with_vite+vanilla.md +16 -3
- package/docs/es/intlayer_with_vite+vue.md +16 -3
- package/docs/es/introduction.md +0 -1
- package/docs/es/readme.md +0 -1
- package/docs/es/releases/v8.md +1 -5
- package/docs/fr/intlayer_with_astro.md +13 -26
- package/docs/fr/intlayer_with_astro_lit.md +24 -28
- package/docs/fr/intlayer_with_astro_preact.md +24 -28
- package/docs/fr/intlayer_with_astro_react.md +24 -28
- package/docs/fr/intlayer_with_astro_solid.md +24 -28
- package/docs/fr/intlayer_with_astro_svelte.md +24 -28
- package/docs/fr/intlayer_with_astro_vue.md +24 -28
- package/docs/fr/intlayer_with_react_router_v7.md +15 -4
- package/docs/fr/intlayer_with_solid_start.md +14 -7
- package/docs/fr/intlayer_with_svelte_kit.md +15 -4
- package/docs/fr/intlayer_with_tanstack+solid.md +15 -4
- package/docs/fr/intlayer_with_tanstack.md +13 -6
- package/docs/fr/intlayer_with_vite+lit.md +75 -3
- package/docs/fr/intlayer_with_vite+preact.md +19 -6
- package/docs/fr/intlayer_with_vite+react.md +19 -6
- package/docs/fr/intlayer_with_vite+solid.md +19 -6
- package/docs/fr/intlayer_with_vite+svelte.md +19 -6
- package/docs/fr/intlayer_with_vite+vanilla.md +19 -6
- package/docs/fr/intlayer_with_vite+vue.md +19 -6
- package/docs/fr/introduction.md +0 -1
- package/docs/fr/readme.md +0 -1
- package/docs/fr/releases/v8.md +1 -5
- package/docs/hi/intlayer_with_astro.md +15 -31
- package/docs/hi/intlayer_with_astro_lit.md +26 -33
- package/docs/hi/intlayer_with_astro_preact.md +26 -33
- package/docs/hi/intlayer_with_astro_react.md +26 -33
- package/docs/hi/intlayer_with_astro_solid.md +26 -33
- package/docs/hi/intlayer_with_astro_svelte.md +26 -33
- package/docs/hi/intlayer_with_astro_vue.md +26 -33
- package/docs/hi/intlayer_with_react_router_v7.md +20 -12
- package/docs/hi/intlayer_with_solid_start.md +14 -7
- package/docs/hi/intlayer_with_svelte_kit.md +20 -12
- package/docs/hi/intlayer_with_tanstack+solid.md +13 -2
- package/docs/hi/intlayer_with_tanstack.md +21 -17
- package/docs/hi/intlayer_with_vite+lit.md +75 -3
- package/docs/hi/intlayer_with_vite+preact.md +24 -14
- package/docs/hi/intlayer_with_vite+react.md +24 -14
- package/docs/hi/intlayer_with_vite+solid.md +24 -14
- package/docs/hi/intlayer_with_vite+svelte.md +24 -14
- package/docs/hi/intlayer_with_vite+vanilla.md +16 -3
- package/docs/hi/intlayer_with_vite+vue.md +24 -14
- package/docs/hi/introduction.md +0 -1
- package/docs/hi/readme.md +0 -1
- package/docs/hi/releases/v8.md +1 -5
- package/docs/id/intlayer_with_astro.md +12 -25
- package/docs/id/intlayer_with_astro_lit.md +23 -27
- package/docs/id/intlayer_with_astro_preact.md +23 -27
- package/docs/id/intlayer_with_astro_react.md +23 -27
- package/docs/id/intlayer_with_astro_solid.md +23 -27
- package/docs/id/intlayer_with_astro_svelte.md +23 -27
- package/docs/id/intlayer_with_astro_vue.md +23 -27
- package/docs/id/intlayer_with_react_router_v7.md +12 -1
- package/docs/id/intlayer_with_solid_start.md +14 -7
- package/docs/id/intlayer_with_svelte_kit.md +12 -1
- package/docs/id/intlayer_with_tanstack+solid.md +13 -2
- package/docs/id/intlayer_with_tanstack.md +13 -6
- package/docs/id/intlayer_with_vite+lit.md +75 -3
- package/docs/id/intlayer_with_vite+preact.md +16 -3
- package/docs/id/intlayer_with_vite+react.md +16 -3
- package/docs/id/intlayer_with_vite+solid.md +16 -3
- package/docs/id/intlayer_with_vite+svelte.md +16 -3
- package/docs/id/intlayer_with_vite+vanilla.md +16 -3
- package/docs/id/intlayer_with_vite+vue.md +16 -3
- package/docs/id/introduction.md +0 -1
- package/docs/id/readme.md +0 -1
- package/docs/id/releases/v8.md +1 -5
- package/docs/it/intlayer_with_astro.md +12 -25
- package/docs/it/intlayer_with_astro_lit.md +23 -27
- package/docs/it/intlayer_with_astro_preact.md +23 -27
- package/docs/it/intlayer_with_astro_react.md +23 -27
- package/docs/it/intlayer_with_astro_solid.md +23 -27
- package/docs/it/intlayer_with_astro_svelte.md +23 -27
- package/docs/it/intlayer_with_astro_vue.md +23 -27
- package/docs/it/intlayer_with_react_router_v7.md +12 -1
- package/docs/it/intlayer_with_solid_start.md +14 -7
- package/docs/it/intlayer_with_svelte_kit.md +12 -1
- package/docs/it/intlayer_with_tanstack+solid.md +13 -2
- package/docs/it/intlayer_with_tanstack.md +13 -6
- package/docs/it/intlayer_with_vite+lit.md +75 -3
- package/docs/it/intlayer_with_vite+preact.md +16 -3
- package/docs/it/intlayer_with_vite+react.md +16 -3
- package/docs/it/intlayer_with_vite+solid.md +16 -3
- package/docs/it/intlayer_with_vite+svelte.md +16 -3
- package/docs/it/intlayer_with_vite+vanilla.md +16 -3
- package/docs/it/intlayer_with_vite+vue.md +16 -3
- package/docs/it/introduction.md +0 -1
- package/docs/it/readme.md +0 -1
- package/docs/it/releases/v8.md +1 -5
- package/docs/ja/intlayer_with_astro.md +12 -25
- package/docs/ja/intlayer_with_astro_lit.md +23 -27
- package/docs/ja/intlayer_with_astro_preact.md +23 -27
- package/docs/ja/intlayer_with_astro_react.md +23 -27
- package/docs/ja/intlayer_with_astro_solid.md +23 -27
- package/docs/ja/intlayer_with_astro_svelte.md +23 -27
- package/docs/ja/intlayer_with_astro_vue.md +23 -27
- package/docs/ja/intlayer_with_react_router_v7.md +12 -1
- package/docs/ja/intlayer_with_solid_start.md +14 -7
- package/docs/ja/intlayer_with_svelte_kit.md +21 -15
- package/docs/ja/intlayer_with_tanstack+solid.md +13 -2
- package/docs/ja/intlayer_with_tanstack.md +13 -6
- package/docs/ja/intlayer_with_vite+lit.md +75 -3
- package/docs/ja/intlayer_with_vite+preact.md +16 -3
- package/docs/ja/intlayer_with_vite+react.md +16 -3
- package/docs/ja/intlayer_with_vite+solid.md +16 -3
- package/docs/ja/intlayer_with_vite+svelte.md +16 -3
- package/docs/ja/intlayer_with_vite+vanilla.md +16 -3
- package/docs/ja/intlayer_with_vite+vue.md +16 -3
- package/docs/ja/introduction.md +0 -1
- package/docs/ja/readme.md +0 -1
- package/docs/ja/releases/v8.md +1 -5
- package/docs/ko/intlayer_with_astro.md +6 -21
- package/docs/ko/intlayer_with_astro_lit.md +23 -27
- package/docs/ko/intlayer_with_astro_preact.md +23 -27
- package/docs/ko/intlayer_with_astro_react.md +23 -27
- package/docs/ko/intlayer_with_astro_solid.md +23 -27
- package/docs/ko/intlayer_with_astro_svelte.md +23 -27
- package/docs/ko/intlayer_with_astro_vue.md +23 -27
- package/docs/ko/intlayer_with_react_router_v7.md +12 -1
- package/docs/ko/intlayer_with_solid_start.md +14 -7
- package/docs/ko/intlayer_with_svelte_kit.md +12 -1
- package/docs/ko/intlayer_with_tanstack+solid.md +13 -2
- package/docs/ko/intlayer_with_tanstack.md +13 -6
- package/docs/ko/intlayer_with_vite+lit.md +75 -3
- package/docs/ko/intlayer_with_vite+preact.md +16 -3
- package/docs/ko/intlayer_with_vite+react.md +16 -3
- package/docs/ko/intlayer_with_vite+solid.md +26 -16
- package/docs/ko/intlayer_with_vite+svelte.md +16 -3
- package/docs/ko/intlayer_with_vite+vanilla.md +16 -3
- package/docs/ko/intlayer_with_vite+vue.md +16 -3
- package/docs/ko/introduction.md +0 -1
- package/docs/ko/readme.md +0 -1
- package/docs/ko/releases/v8.md +1 -5
- package/docs/nl/intlayer_with_vite+lit.md +75 -3
- package/docs/nl/intlayer_with_vite+vanilla.md +16 -3
- package/docs/nl/introduction.md +0 -1
- package/docs/pl/intlayer_with_astro.md +6 -21
- package/docs/pl/intlayer_with_astro_lit.md +23 -27
- package/docs/pl/intlayer_with_astro_preact.md +23 -27
- package/docs/pl/intlayer_with_astro_react.md +23 -27
- package/docs/pl/intlayer_with_astro_solid.md +23 -27
- package/docs/pl/intlayer_with_astro_svelte.md +23 -27
- package/docs/pl/intlayer_with_astro_vue.md +23 -27
- package/docs/pl/intlayer_with_react_router_v7.md +12 -1
- package/docs/pl/intlayer_with_solid_start.md +14 -7
- package/docs/pl/intlayer_with_svelte_kit.md +12 -1
- package/docs/pl/intlayer_with_tanstack+solid.md +13 -2
- package/docs/pl/intlayer_with_tanstack.md +13 -6
- package/docs/pl/intlayer_with_vite+lit.md +75 -3
- package/docs/pl/intlayer_with_vite+preact.md +16 -3
- package/docs/pl/intlayer_with_vite+react.md +16 -3
- package/docs/pl/intlayer_with_vite+solid.md +16 -3
- package/docs/pl/intlayer_with_vite+svelte.md +16 -3
- package/docs/pl/intlayer_with_vite+vanilla.md +16 -3
- package/docs/pl/intlayer_with_vite+vue.md +16 -3
- package/docs/pl/introduction.md +0 -1
- package/docs/pl/readme.md +0 -1
- package/docs/pl/releases/v8.md +1 -5
- package/docs/pt/intlayer_with_astro.md +6 -21
- package/docs/pt/intlayer_with_astro_lit.md +23 -27
- package/docs/pt/intlayer_with_astro_preact.md +23 -27
- package/docs/pt/intlayer_with_astro_react.md +23 -27
- package/docs/pt/intlayer_with_astro_solid.md +23 -27
- package/docs/pt/intlayer_with_astro_svelte.md +23 -27
- package/docs/pt/intlayer_with_astro_vue.md +23 -27
- package/docs/pt/intlayer_with_react_router_v7.md +12 -1
- package/docs/pt/intlayer_with_solid_start.md +14 -7
- package/docs/pt/intlayer_with_svelte_kit.md +12 -1
- package/docs/pt/intlayer_with_tanstack+solid.md +13 -2
- package/docs/pt/intlayer_with_tanstack.md +13 -6
- package/docs/pt/intlayer_with_vite+lit.md +75 -3
- package/docs/pt/intlayer_with_vite+preact.md +16 -3
- package/docs/pt/intlayer_with_vite+react.md +16 -3
- package/docs/pt/intlayer_with_vite+solid.md +16 -3
- package/docs/pt/intlayer_with_vite+svelte.md +16 -3
- package/docs/pt/intlayer_with_vite+vanilla.md +16 -3
- package/docs/pt/intlayer_with_vite+vue.md +16 -3
- package/docs/pt/introduction.md +0 -1
- package/docs/pt/readme.md +0 -1
- package/docs/pt/releases/v8.md +1 -5
- package/docs/ru/intlayer_with_astro.md +12 -25
- package/docs/ru/intlayer_with_astro_lit.md +23 -27
- package/docs/ru/intlayer_with_astro_preact.md +23 -27
- package/docs/ru/intlayer_with_astro_react.md +23 -27
- package/docs/ru/intlayer_with_astro_solid.md +23 -27
- package/docs/ru/intlayer_with_astro_svelte.md +23 -27
- package/docs/ru/intlayer_with_astro_vue.md +23 -27
- package/docs/ru/intlayer_with_react_router_v7.md +12 -1
- package/docs/ru/intlayer_with_solid_start.md +14 -7
- package/docs/ru/intlayer_with_svelte_kit.md +12 -1
- package/docs/ru/intlayer_with_tanstack+solid.md +13 -2
- package/docs/ru/intlayer_with_tanstack.md +13 -6
- package/docs/ru/intlayer_with_vite+lit.md +75 -3
- package/docs/ru/intlayer_with_vite+preact.md +16 -3
- package/docs/ru/intlayer_with_vite+react.md +16 -3
- package/docs/ru/intlayer_with_vite+solid.md +16 -3
- package/docs/ru/intlayer_with_vite+svelte.md +16 -3
- package/docs/ru/intlayer_with_vite+vanilla.md +16 -3
- package/docs/ru/intlayer_with_vite+vue.md +16 -3
- package/docs/ru/introduction.md +0 -1
- package/docs/ru/readme.md +0 -1
- package/docs/ru/releases/v8.md +1 -5
- package/docs/tr/intlayer_with_astro.md +12 -25
- package/docs/tr/intlayer_with_astro_lit.md +24 -28
- package/docs/tr/intlayer_with_astro_preact.md +24 -28
- package/docs/tr/intlayer_with_astro_react.md +24 -28
- package/docs/tr/intlayer_with_astro_solid.md +24 -28
- package/docs/tr/intlayer_with_astro_svelte.md +24 -28
- package/docs/tr/intlayer_with_astro_vue.md +24 -28
- package/docs/tr/intlayer_with_react_router_v7.md +12 -1
- package/docs/tr/intlayer_with_solid_start.md +14 -7
- package/docs/tr/intlayer_with_svelte_kit.md +12 -1
- package/docs/tr/intlayer_with_tanstack+solid.md +13 -2
- package/docs/tr/intlayer_with_tanstack.md +13 -6
- package/docs/tr/intlayer_with_vite+lit.md +75 -3
- package/docs/tr/intlayer_with_vite+preact.md +16 -3
- package/docs/tr/intlayer_with_vite+react.md +16 -3
- package/docs/tr/intlayer_with_vite+solid.md +16 -3
- package/docs/tr/intlayer_with_vite+svelte.md +16 -3
- package/docs/tr/intlayer_with_vite+vanilla.md +16 -3
- package/docs/tr/intlayer_with_vite+vue.md +16 -3
- package/docs/tr/introduction.md +0 -1
- package/docs/tr/readme.md +0 -1
- package/docs/tr/releases/v8.md +1 -5
- package/docs/uk/intlayer_with_astro.md +12 -25
- package/docs/uk/intlayer_with_astro_lit.md +23 -27
- package/docs/uk/intlayer_with_astro_preact.md +23 -27
- package/docs/uk/intlayer_with_astro_react.md +23 -27
- package/docs/uk/intlayer_with_astro_solid.md +23 -27
- package/docs/uk/intlayer_with_astro_svelte.md +23 -27
- package/docs/uk/intlayer_with_astro_vue.md +23 -27
- package/docs/uk/intlayer_with_react_router_v7.md +12 -1
- package/docs/uk/intlayer_with_solid_start.md +14 -7
- package/docs/uk/intlayer_with_svelte_kit.md +12 -1
- package/docs/uk/intlayer_with_tanstack+solid.md +13 -2
- package/docs/uk/intlayer_with_tanstack.md +13 -6
- package/docs/uk/intlayer_with_vite+lit.md +75 -3
- package/docs/uk/intlayer_with_vite+preact.md +16 -3
- package/docs/uk/intlayer_with_vite+react.md +16 -3
- package/docs/uk/intlayer_with_vite+solid.md +16 -3
- package/docs/uk/intlayer_with_vite+svelte.md +16 -3
- package/docs/uk/intlayer_with_vite+vanilla.md +16 -3
- package/docs/uk/intlayer_with_vite+vue.md +16 -3
- package/docs/uk/introduction.md +0 -1
- package/docs/uk/readme.md +0 -1
- package/docs/uk/releases/v8.md +1 -5
- package/docs/ur/intlayer_with_vite+lit.md +75 -3
- package/docs/ur/intlayer_with_vite+vanilla.md +16 -3
- package/docs/ur/introduction.md +0 -1
- package/docs/vi/intlayer_with_astro.md +12 -25
- package/docs/vi/intlayer_with_astro_lit.md +23 -27
- package/docs/vi/intlayer_with_astro_preact.md +23 -27
- package/docs/vi/intlayer_with_astro_react.md +23 -27
- package/docs/vi/intlayer_with_astro_solid.md +23 -27
- package/docs/vi/intlayer_with_astro_svelte.md +23 -27
- package/docs/vi/intlayer_with_astro_vue.md +23 -27
- package/docs/vi/intlayer_with_react_router_v7.md +12 -1
- package/docs/vi/intlayer_with_solid_start.md +14 -7
- package/docs/vi/intlayer_with_svelte_kit.md +12 -1
- package/docs/vi/intlayer_with_tanstack+solid.md +13 -2
- package/docs/vi/intlayer_with_tanstack.md +13 -6
- package/docs/vi/intlayer_with_vite+lit.md +75 -3
- package/docs/vi/intlayer_with_vite+preact.md +16 -3
- package/docs/vi/intlayer_with_vite+react.md +16 -3
- package/docs/vi/intlayer_with_vite+solid.md +16 -3
- package/docs/vi/intlayer_with_vite+svelte.md +16 -3
- package/docs/vi/intlayer_with_vite+vanilla.md +16 -3
- package/docs/vi/intlayer_with_vite+vue.md +16 -3
- package/docs/vi/introduction.md +0 -1
- package/docs/vi/readme.md +0 -1
- package/docs/vi/releases/v8.md +1 -5
- package/docs/zh/intlayer_with_astro.md +6 -21
- package/docs/zh/intlayer_with_astro_lit.md +23 -27
- package/docs/zh/intlayer_with_astro_preact.md +23 -27
- package/docs/zh/intlayer_with_astro_react.md +23 -27
- package/docs/zh/intlayer_with_astro_solid.md +23 -27
- package/docs/zh/intlayer_with_astro_svelte.md +23 -27
- package/docs/zh/intlayer_with_astro_vue.md +23 -27
- package/docs/zh/intlayer_with_react_router_v7.md +12 -1
- package/docs/zh/intlayer_with_solid_start.md +14 -7
- package/docs/zh/intlayer_with_svelte_kit.md +12 -1
- package/docs/zh/intlayer_with_tanstack+solid.md +13 -2
- package/docs/zh/intlayer_with_tanstack.md +13 -6
- package/docs/zh/intlayer_with_vite+lit.md +75 -3
- package/docs/zh/intlayer_with_vite+preact.md +16 -3
- package/docs/zh/intlayer_with_vite+react.md +16 -3
- package/docs/zh/intlayer_with_vite+solid.md +16 -3
- package/docs/zh/intlayer_with_vite+svelte.md +16 -3
- package/docs/zh/intlayer_with_vite+vanilla.md +16 -3
- package/docs/zh/intlayer_with_vite+vue.md +16 -3
- package/docs/zh/introduction.md +0 -1
- package/docs/zh/readme.md +0 -1
- package/docs/zh/releases/v8.md +1 -5
- package/docs/zh-TW/introduction.md +0 -1
- package/package.json +6 -6
- package/docs/ar/intlayer_with_astro_vanilla.md +0 -709
- package/docs/de/intlayer_with_astro_vanilla.md +0 -705
- package/docs/en-GB/intlayer_with_astro_vanilla.md +0 -709
- package/docs/es/intlayer_with_astro_vanilla.md +0 -701
- package/docs/fr/intlayer_with_astro_vanilla.md +0 -701
- package/docs/hi/intlayer_with_astro_vanilla.md +0 -720
- package/docs/id/intlayer_with_astro_vanilla.md +0 -705
- package/docs/it/intlayer_with_astro_vanilla.md +0 -705
- package/docs/ja/intlayer_with_astro_vanilla.md +0 -708
- package/docs/ko/intlayer_with_astro_vanilla.md +0 -720
- package/docs/pl/intlayer_with_astro_vanilla.md +0 -705
- package/docs/pt/intlayer_with_astro_vanilla.md +0 -705
- package/docs/ru/intlayer_with_astro_vanilla.md +0 -716
- package/docs/tr/intlayer_with_astro_vanilla.md +0 -705
- package/docs/uk/intlayer_with_astro_vanilla.md +0 -705
- package/docs/vi/intlayer_with_astro_vanilla.md +0 -705
- package/docs/zh/intlayer_with_astro_vanilla.md +0 -704
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-24
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "Astro + Lit i18n - Guía completa para traducir tu aplicación"
|
|
5
5
|
description: "Sin más i18next. La guía 2026 para crear una aplicación Astro + Lit multilingüe (i18n). Traduce con agentes de IA y optimiza el tamaño del bundle, SEO y rendimiento."
|
|
6
6
|
keywords:
|
|
@@ -20,6 +20,9 @@ slugs:
|
|
|
20
20
|
applicationTemplate: https://github.com/aymericzip/intlayer-astro-template
|
|
21
21
|
applicationShowcase: https://intlayer-astro-template.vercel.app
|
|
22
22
|
history:
|
|
23
|
+
- version: 9.5.5
|
|
24
|
+
date: 2026-09-19
|
|
25
|
+
changes: "Uso de los hooks useIntlayer / useLocale de astro-intlayer en la página de Astro"
|
|
23
26
|
- version: 8.9.0
|
|
24
27
|
date: 2026-05-04
|
|
25
28
|
changes: "Actualizar el uso de la API useIntlayer de Solid para el acceso directo a las propiedades"
|
|
@@ -151,7 +154,7 @@ bun add intlayer astro-intlayer lit lit-intlayer @astrojs/lit
|
|
|
151
154
|
El paquete core que proporciona herramientas de i18n para la gestión de la configuración, traducciones, [declaración de contenidos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/content_file.md), transpilación y [comandos CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/index.md).
|
|
152
155
|
|
|
153
156
|
- **astro-intlayer**
|
|
154
|
-
Incluye el plugin de integración de Astro para
|
|
157
|
+
Incluye el plugin de integración de Astro para integrar Intlayer con el [empaquetador Vite](https://vite.dev/guide/why.html#why-bundle-for-production), un middleware que resuelve el idioma de cada solicitud en `Astro.locals.intlayer`, y los hooks `useIntlayer` / `useDictionary` / `useLocale`. La misma ruta de importación resuelve a la implementación de servidor en tu frontmatter `.astro` y a la de cliente (respaldada por `vanilla-intlayer`) en bloques `<script>`.
|
|
155
158
|
|
|
156
159
|
- **lit**
|
|
157
160
|
El paquete core de Lit para construir Web Components rápidos y ligeros.
|
|
@@ -243,19 +246,21 @@ export default litDemoContent;
|
|
|
243
246
|
</Step>
|
|
244
247
|
<Step number={5} title="Usar el contenido en Astro">
|
|
245
248
|
|
|
246
|
-
|
|
249
|
+
Consume tus diccionarios en archivos `.astro` con los hooks exportados por `astro-intlayer`. Comparten las firmas de `react-intlayer`: `useIntlayer("key")` devuelve el contenido de un diccionario y `useLocale()` el idioma actual, sin necesidad de pasar argumentos.
|
|
250
|
+
|
|
251
|
+
El idioma proviene del middleware `astro-intlayer`, que la integración registra automáticamente antes de tu propio `src/middleware.ts`. Lo resuelve para cada solicitud, a partir del prefijo de URL, luego del idioma guardado por el cliente (cookie o encabezado), luego de `Accept-Language`, y lo almacena en `Astro.locals.intlayer`. Las páginas pre-renderizadas solo usan la URL, ya que se renderizan una vez para cada visitante.
|
|
252
|
+
|
|
253
|
+
Los elementos personalizados de Lit se importan mediante un `<script>` del cliente y se colocan en el body.
|
|
247
254
|
|
|
248
255
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
249
256
|
---
|
|
257
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
250
258
|
import {
|
|
251
|
-
getIntlayer,
|
|
252
|
-
getLocaleFromPath,
|
|
253
259
|
getLocalizedUrl,
|
|
254
|
-
getHTMLTextDir,
|
|
255
260
|
getPrefix,
|
|
256
261
|
localeMap,
|
|
257
262
|
defaultLocale,
|
|
258
|
-
|
|
263
|
+
getHTMLTextDir,
|
|
259
264
|
} from "intlayer";
|
|
260
265
|
|
|
261
266
|
export const getStaticPaths = () => {
|
|
@@ -264,8 +269,11 @@ export const getStaticPaths = () => {
|
|
|
264
269
|
}));
|
|
265
270
|
};
|
|
266
271
|
|
|
267
|
-
|
|
268
|
-
const {
|
|
272
|
+
// Idioma resuelto por el middleware (ej. /es/about -> 'es')
|
|
273
|
+
const { locale } = useLocale();
|
|
274
|
+
|
|
275
|
+
// Contenido del diccionario 'lit-demo' para ese idioma
|
|
276
|
+
const { greeting } = useIntlayer("lit-demo");
|
|
269
277
|
---
|
|
270
278
|
|
|
271
279
|
<!doctype html>
|
|
@@ -324,6 +332,8 @@ const { greeting } = getIntlayer("lit-demo", locale);
|
|
|
324
332
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
325
333
|
> ```
|
|
326
334
|
|
|
335
|
+
> `Astro.locals.intlayer` también expone `locale`, `defaultLocale` y `availableLocales` a tus propios middlewares y endpoints. Pasa un idioma o un selector como segundo argumento (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) para anular el idioma de la solicitud en una llamada.
|
|
336
|
+
|
|
327
337
|
> **Nota sobre la configuración de rutas:**
|
|
328
338
|
> La estructura de directorios que utilices depende del ajuste `middleware.routing` en `intlayer.config.ts`:
|
|
329
339
|
>
|
|
@@ -480,10 +490,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
480
490
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
481
491
|
];
|
|
482
492
|
|
|
483
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
484
|
-
|
|
485
493
|
export const GET: APIRoute = async ({ site }) => {
|
|
486
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
494
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
495
|
+
siteUrl: "https://example.com",
|
|
496
|
+
});
|
|
487
497
|
|
|
488
498
|
return new Response(xmlOutput, {
|
|
489
499
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -583,21 +593,7 @@ bun x intlayer extract
|
|
|
583
593
|
</Tab>
|
|
584
594
|
<Tab value='Compilador Babel'>
|
|
585
595
|
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
Actualiza tu archivo `vite.config.ts` para incluir el plugin `intlayerCompiler` :
|
|
589
|
-
|
|
590
|
-
```ts fileName="vite.config.ts"
|
|
591
|
-
import { defineConfig } from "vite";
|
|
592
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
593
|
-
|
|
594
|
-
export default defineConfig({
|
|
595
|
-
plugins: [
|
|
596
|
-
intlayer(),
|
|
597
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
598
|
-
],
|
|
599
|
-
});
|
|
600
|
-
```
|
|
596
|
+
Compila tu aplicación para transformar tus componentes y extraer el contenido
|
|
601
597
|
|
|
602
598
|
```bash packageManager="npm"
|
|
603
599
|
npm run build # O npm run dev
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-24
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "Astro + Preact i18n - Guía completa para traducir tu aplicación"
|
|
5
5
|
description: "Sin más i18next. La guía 2026 para crear una aplicación Astro + Preact multilingüe (i18n). Traduce con agentes de IA y optimiza el tamaño del bundle, SEO y rendimiento."
|
|
6
6
|
keywords:
|
|
@@ -19,6 +19,9 @@ slugs:
|
|
|
19
19
|
applicationTemplate: https://github.com/aymericzip/intlayer-astro-template
|
|
20
20
|
applicationShowcase: https://intlayer-astro-template.vercel.app
|
|
21
21
|
history:
|
|
22
|
+
- version: 9.5.5
|
|
23
|
+
date: 2026-09-19
|
|
24
|
+
changes: "Uso de los hooks useIntlayer / useLocale de astro-intlayer en la página de Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Actualizar el uso de la API useIntlayer de Solid para el acceso directo a las propiedades"
|
|
@@ -150,7 +153,7 @@ bun add intlayer astro-intlayer preact preact-intlayer @astrojs/preact
|
|
|
150
153
|
El paquete core que proporciona herramientas de i18n para la gestión de la configuración, traducciones, [declaración de contenidos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/content_file.md), transpilación y [comandos CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/index.md).
|
|
151
154
|
|
|
152
155
|
- **astro-intlayer**
|
|
153
|
-
Incluye el plugin de integración de Astro para
|
|
156
|
+
Incluye el plugin de integración de Astro para integrar Intlayer con el [empaquetador Vite](https://vite.dev/guide/why.html#why-bundle-for-production), un middleware que resuelve el idioma de cada solicitud en `Astro.locals.intlayer`, y los hooks `useIntlayer` / `useDictionary` / `useLocale`. La misma ruta de importación resuelve a la implementación de servidor en tu frontmatter `.astro` y a la de cliente (respaldada por `vanilla-intlayer`) en bloques `<script>`.
|
|
154
157
|
|
|
155
158
|
- **preact**
|
|
156
159
|
El paquete core de Preact - una alternativa rápida y ligera a React.
|
|
@@ -241,19 +244,21 @@ export default appContent;
|
|
|
241
244
|
</Step>
|
|
242
245
|
<Step number={5} title="Usar el contenido en Astro">
|
|
243
246
|
|
|
244
|
-
|
|
247
|
+
Consume tus diccionarios en archivos `.astro` con los hooks exportados por `astro-intlayer`. Comparten las firmas de `react-intlayer`: `useIntlayer("key")` devuelve el contenido de un diccionario y `useLocale()` el idioma actual, sin necesidad de pasar argumentos.
|
|
248
|
+
|
|
249
|
+
El idioma proviene del middleware `astro-intlayer`, que la integración registra automáticamente antes de tu propio `src/middleware.ts`. Lo resuelve para cada solicitud, a partir del prefijo de URL, luego del idioma guardado por el cliente (cookie o encabezado), luego de `Accept-Language`, y lo almacena en `Astro.locals.intlayer`. Las páginas pre-renderizadas solo usan la URL, ya que se renderizan una vez para cada visitante.
|
|
250
|
+
|
|
251
|
+
También deberías añadir metadatos SEO (como hreflang y enlaces canónicos) a cada página e introducir una isla de Preact para el contenido interactivo del lado del cliente.
|
|
245
252
|
|
|
246
253
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
247
254
|
---
|
|
255
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
248
256
|
import {
|
|
249
|
-
getIntlayer,
|
|
250
|
-
getLocaleFromPath,
|
|
251
257
|
getLocalizedUrl,
|
|
252
|
-
getHTMLTextDir,
|
|
253
258
|
getPrefix,
|
|
254
259
|
localeMap,
|
|
255
260
|
defaultLocale,
|
|
256
|
-
|
|
261
|
+
getHTMLTextDir,
|
|
257
262
|
} from "intlayer";
|
|
258
263
|
import { PreactIsland } from "../../components/preact/PreactIsland";
|
|
259
264
|
|
|
@@ -263,8 +268,11 @@ export const getStaticPaths = () => {
|
|
|
263
268
|
}));
|
|
264
269
|
};
|
|
265
270
|
|
|
266
|
-
|
|
267
|
-
const {
|
|
271
|
+
// Idioma resuelto por el middleware (ej. /es/about -> 'es')
|
|
272
|
+
const { locale } = useLocale();
|
|
273
|
+
|
|
274
|
+
// Contenido del diccionario 'app' para ese idioma
|
|
275
|
+
const { title } = useIntlayer("app");
|
|
268
276
|
---
|
|
269
277
|
|
|
270
278
|
<!doctype html>
|
|
@@ -320,6 +328,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
320
328
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
321
329
|
> ```
|
|
322
330
|
|
|
331
|
+
> `Astro.locals.intlayer` también expone `locale`, `defaultLocale` y `availableLocales` a tus propios middlewares y endpoints. Pasa un idioma o un selector como segundo argumento (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) para anular el idioma de la solicitud en una llamada.
|
|
332
|
+
|
|
323
333
|
> **Nota sobre la configuración de rutas:**
|
|
324
334
|
> La estructura de directorios que utilices depende del ajuste `middleware.routing` en `intlayer.config.ts`:
|
|
325
335
|
>
|
|
@@ -436,10 +446,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
436
446
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
437
447
|
];
|
|
438
448
|
|
|
439
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
440
|
-
|
|
441
449
|
export const GET: APIRoute = async ({ site }) => {
|
|
442
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
450
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
451
|
+
siteUrl: "https://example.com",
|
|
452
|
+
});
|
|
443
453
|
|
|
444
454
|
return new Response(xmlOutput, {
|
|
445
455
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -539,21 +549,7 @@ bun x intlayer extract
|
|
|
539
549
|
</Tab>
|
|
540
550
|
<Tab value='Compilador Babel'>
|
|
541
551
|
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
Actualiza tu archivo `vite.config.ts` para incluir el plugin `intlayerCompiler` :
|
|
545
|
-
|
|
546
|
-
```ts fileName="vite.config.ts"
|
|
547
|
-
import { defineConfig } from "vite";
|
|
548
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
549
|
-
|
|
550
|
-
export default defineConfig({
|
|
551
|
-
plugins: [
|
|
552
|
-
intlayer(),
|
|
553
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
554
|
-
],
|
|
555
|
-
});
|
|
556
|
-
```
|
|
552
|
+
Compila tu aplicación para transformar tus componentes y extraer el contenido
|
|
557
553
|
|
|
558
554
|
```bash packageManager="npm"
|
|
559
555
|
npm run build # O npm run dev
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2024-03-07
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "Astro + React i18n - Guía completa para traducir tu aplicación"
|
|
5
5
|
description: "Sin más i18next. La guía 2026 para crear una aplicación Astro + React multilingüe (i18n). Traduce con agentes de IA y optimiza el tamaño del bundle, SEO y rendimiento."
|
|
6
6
|
keywords:
|
|
@@ -19,6 +19,9 @@ slugs:
|
|
|
19
19
|
applicationTemplate: https://github.com/aymericzip/intlayer-astro-template
|
|
20
20
|
applicationShowcase: https://intlayer-astro-template.vercel.app
|
|
21
21
|
history:
|
|
22
|
+
- version: 9.5.5
|
|
23
|
+
date: 2026-09-19
|
|
24
|
+
changes: "Uso de los hooks useIntlayer / useLocale de astro-intlayer en la página de Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Actualizar el uso de la API useIntlayer de Solid para el acceso directo a las propiedades"
|
|
@@ -153,7 +156,7 @@ bun add intlayer astro-intlayer react react-dom react-intlayer @astrojs/react
|
|
|
153
156
|
El paquete core que proporciona herramientas de i18n para la gestión de la configuración, traducciones, [declaración de contenidos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/content_file.md), transpilación y [comandos CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/index.md).
|
|
154
157
|
|
|
155
158
|
- **astro-intlayer**
|
|
156
|
-
Incluye el plugin de integración de Astro para
|
|
159
|
+
Incluye el plugin de integración de Astro para integrar Intlayer con el [empaquetador Vite](https://vite.dev/guide/why.html#why-bundle-for-production), un middleware que resuelve el idioma de cada solicitud en `Astro.locals.intlayer`, y los hooks `useIntlayer` / `useDictionary` / `useLocale`. La misma ruta de importación resuelve a la implementación de servidor en tu frontmatter `.astro` y a la de cliente (respaldada por `vanilla-intlayer`) en bloques `<script>`.
|
|
157
160
|
|
|
158
161
|
- **react**, **react-dom**
|
|
159
162
|
Paquetes core de React necesarios para renderizar componentes de React en el navegador.
|
|
@@ -241,19 +244,21 @@ export default appContent;
|
|
|
241
244
|
</Step>
|
|
242
245
|
<Step number={5} title="Usar el contenido en Astro">
|
|
243
246
|
|
|
244
|
-
|
|
247
|
+
Consume tus diccionarios en archivos `.astro` con los hooks exportados por `astro-intlayer`. Comparten las firmas de `react-intlayer`: `useIntlayer("key")` devuelve el contenido de un diccionario y `useLocale()` el idioma actual, sin necesidad de pasar argumentos.
|
|
248
|
+
|
|
249
|
+
El idioma proviene del middleware `astro-intlayer`, que la integración registra automáticamente antes de tu propio `src/middleware.ts`. Lo resuelve para cada solicitud, a partir del prefijo de URL, luego del idioma guardado por el cliente (cookie o encabezado), luego de `Accept-Language`, y lo almacena en `Astro.locals.intlayer`. Las páginas pre-renderizadas solo usan la URL, ya que se renderizan una vez para cada visitante.
|
|
250
|
+
|
|
251
|
+
También deberías añadir metadatos SEO (como hreflang y enlaces canónicos) a cada página e introducir una isla de React para el contenido interactivo del lado del cliente.
|
|
245
252
|
|
|
246
253
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
247
254
|
---
|
|
255
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
248
256
|
import {
|
|
249
|
-
getIntlayer,
|
|
250
|
-
getLocaleFromPath,
|
|
251
257
|
getLocalizedUrl,
|
|
252
|
-
getHTMLTextDir,
|
|
253
258
|
getPrefix,
|
|
254
259
|
localeMap,
|
|
255
260
|
defaultLocale,
|
|
256
|
-
|
|
261
|
+
getHTMLTextDir,
|
|
257
262
|
} from "intlayer";
|
|
258
263
|
import { ReactIsland } from "../../components/react/ReactIsland";
|
|
259
264
|
|
|
@@ -263,8 +268,11 @@ export const getStaticPaths = () => {
|
|
|
263
268
|
}));
|
|
264
269
|
};
|
|
265
270
|
|
|
266
|
-
|
|
267
|
-
const {
|
|
271
|
+
// Idioma resuelto por el middleware (ej. /es/about -> 'es')
|
|
272
|
+
const { locale } = useLocale();
|
|
273
|
+
|
|
274
|
+
// Contenido del diccionario 'app' para ese idioma
|
|
275
|
+
const { title } = useIntlayer("app");
|
|
268
276
|
---
|
|
269
277
|
|
|
270
278
|
<!doctype html>
|
|
@@ -320,6 +328,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
320
328
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
321
329
|
> ```
|
|
322
330
|
|
|
331
|
+
> `Astro.locals.intlayer` también expone `locale`, `defaultLocale` y `availableLocales` a tus propios middlewares y endpoints. Pasa un idioma o un selector como segundo argumento (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) para anular el idioma de la solicitud en una llamada.
|
|
332
|
+
|
|
323
333
|
> **Nota sobre la configuración de rutas:**
|
|
324
334
|
> La estructura de directorios que utilices depende del ajuste `middleware.routing` en `intlayer.config.ts`:
|
|
325
335
|
>
|
|
@@ -432,10 +442,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
432
442
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
433
443
|
];
|
|
434
444
|
|
|
435
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
436
|
-
|
|
437
445
|
export const GET: APIRoute = async ({ site }) => {
|
|
438
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
446
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
447
|
+
siteUrl: "https://example.com",
|
|
448
|
+
});
|
|
439
449
|
|
|
440
450
|
return new Response(xmlOutput, {
|
|
441
451
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -535,21 +545,7 @@ bun x intlayer extract
|
|
|
535
545
|
</Tab>
|
|
536
546
|
<Tab value='Compilador Babel'>
|
|
537
547
|
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
Actualiza tu archivo `vite.config.ts` para incluir el plugin `intlayerCompiler` :
|
|
541
|
-
|
|
542
|
-
```ts fileName="vite.config.ts"
|
|
543
|
-
import { defineConfig } from "vite";
|
|
544
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
545
|
-
|
|
546
|
-
export default defineConfig({
|
|
547
|
-
plugins: [
|
|
548
|
-
intlayer(),
|
|
549
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
550
|
-
],
|
|
551
|
-
});
|
|
552
|
-
```
|
|
548
|
+
Compila tu aplicación para transformar tus componentes y extraer el contenido
|
|
553
549
|
|
|
554
550
|
```bash packageManager="npm"
|
|
555
551
|
npm run build # O npm run dev
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-24
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "Astro + Solid i18n - Guía completa para traducir tu aplicación"
|
|
5
5
|
description: "Sin más i18next. La guía 2026 para crear una aplicación Astro + Solid multilingüe (i18n). Traduce con agentes de IA y optimiza el tamaño del bundle, SEO y rendimiento."
|
|
6
6
|
keywords:
|
|
@@ -19,6 +19,9 @@ slugs:
|
|
|
19
19
|
applicationTemplate: https://github.com/aymericzip/intlayer-astro-template
|
|
20
20
|
applicationShowcase: https://intlayer-astro-template.vercel.app
|
|
21
21
|
history:
|
|
22
|
+
- version: 9.5.5
|
|
23
|
+
date: 2026-09-19
|
|
24
|
+
changes: "Uso de los hooks useIntlayer / useLocale de astro-intlayer en la página de Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Actualizar el uso de la API useIntlayer de Solid para el acceso directo a las propiedades"
|
|
@@ -150,7 +153,7 @@ bun add intlayer astro-intlayer solid-js solid-intlayer @astrojs/solid-js
|
|
|
150
153
|
El paquete core que proporciona herramientas de i18n para la gestión de la configuración, traducciones, [declaración de contenidos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/content_file.md), transpilación y [comandos CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/index.md).
|
|
151
154
|
|
|
152
155
|
- **astro-intlayer**
|
|
153
|
-
Incluye el plugin de integración de Astro para
|
|
156
|
+
Incluye el plugin de integración de Astro para integrar Intlayer con el [empaquetador Vite](https://vite.dev/guide/why.html#why-bundle-for-production), un middleware que resuelve el idioma de cada solicitud en `Astro.locals.intlayer`, y los hooks `useIntlayer` / `useDictionary` / `useLocale`. La misma ruta de importación resuelve a la implementación de servidor en tu frontmatter `.astro` y a la de cliente (respaldada por `vanilla-intlayer`) en bloques `<script>`.
|
|
154
157
|
|
|
155
158
|
- **solid-js**
|
|
156
159
|
El paquete core de Solid.
|
|
@@ -237,19 +240,21 @@ export default appContent;
|
|
|
237
240
|
</Step>
|
|
238
241
|
<Step number={5} title="Usar el contenido en Astro">
|
|
239
242
|
|
|
240
|
-
|
|
243
|
+
Consume tus diccionarios en archivos `.astro` con los hooks exportados por `astro-intlayer`. Comparten las firmas de `react-intlayer`: `useIntlayer("key")` devuelve el contenido de un diccionario y `useLocale()` el idioma actual, sin necesidad de pasar argumentos.
|
|
244
|
+
|
|
245
|
+
El idioma proviene del middleware `astro-intlayer`, que la integración registra automáticamente antes de tu propio `src/middleware.ts`. Lo resuelve para cada solicitud, a partir del prefijo de URL, luego del idioma guardado por el cliente (cookie o encabezado), luego de `Accept-Language`, y lo almacena en `Astro.locals.intlayer`. Las páginas pre-renderizadas solo usan la URL, ya que se renderizan una vez para cada visitante.
|
|
246
|
+
|
|
247
|
+
También deberías añadir metadatos SEO (como hreflang y enlaces canónicos) a cada página e introducir una isla de Solid para el contenido interactivo del lado del cliente.
|
|
241
248
|
|
|
242
249
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
243
250
|
---
|
|
251
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
244
252
|
import {
|
|
245
|
-
getIntlayer,
|
|
246
|
-
getLocaleFromPath,
|
|
247
253
|
getLocalizedUrl,
|
|
248
|
-
getHTMLTextDir,
|
|
249
254
|
getPrefix,
|
|
250
255
|
localeMap,
|
|
251
256
|
defaultLocale,
|
|
252
|
-
|
|
257
|
+
getHTMLTextDir,
|
|
253
258
|
} from "intlayer";
|
|
254
259
|
import { SolidIsland } from "../../components/solid/SolidIsland";
|
|
255
260
|
|
|
@@ -259,8 +264,11 @@ export const getStaticPaths = () => {
|
|
|
259
264
|
}));
|
|
260
265
|
};
|
|
261
266
|
|
|
262
|
-
|
|
263
|
-
const {
|
|
267
|
+
// Idioma resuelto por el middleware (ej. /es/about -> 'es')
|
|
268
|
+
const { locale } = useLocale();
|
|
269
|
+
|
|
270
|
+
// Contenido del diccionario 'app' para ese idioma
|
|
271
|
+
const { title } = useIntlayer("app");
|
|
264
272
|
---
|
|
265
273
|
|
|
266
274
|
<!doctype html>
|
|
@@ -316,6 +324,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
316
324
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
317
325
|
> ```
|
|
318
326
|
|
|
327
|
+
> `Astro.locals.intlayer` también expone `locale`, `defaultLocale` y `availableLocales` a tus propios middlewares y endpoints. Pasa un idioma o un selector como segundo argumento (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) para anular el idioma de la solicitud en una llamada.
|
|
328
|
+
|
|
319
329
|
> **Nota sobre la configuración de rutas:**
|
|
320
330
|
> La estructura de directorios que utilices depende del ajuste `middleware.routing` en `intlayer.config.ts`:
|
|
321
331
|
>
|
|
@@ -432,10 +442,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
432
442
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
433
443
|
];
|
|
434
444
|
|
|
435
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
436
|
-
|
|
437
445
|
export const GET: APIRoute = async ({ site }) => {
|
|
438
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
446
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
447
|
+
siteUrl: "https://example.com",
|
|
448
|
+
});
|
|
439
449
|
|
|
440
450
|
return new Response(xmlOutput, {
|
|
441
451
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -535,21 +545,7 @@ bun x intlayer extract
|
|
|
535
545
|
</Tab>
|
|
536
546
|
<Tab value='Compilador Babel'>
|
|
537
547
|
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
Actualiza tu archivo `vite.config.ts` para incluir el plugin `intlayerCompiler` :
|
|
541
|
-
|
|
542
|
-
```ts fileName="vite.config.ts"
|
|
543
|
-
import { defineConfig } from "vite";
|
|
544
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
545
|
-
|
|
546
|
-
export default defineConfig({
|
|
547
|
-
plugins: [
|
|
548
|
-
intlayer(),
|
|
549
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
550
|
-
],
|
|
551
|
-
});
|
|
552
|
-
```
|
|
548
|
+
Compila tu aplicación para transformar tus componentes y extraer el contenido
|
|
553
549
|
|
|
554
550
|
```bash packageManager="npm"
|
|
555
551
|
npm run build # O npm run dev
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-04-24
|
|
3
|
-
updatedAt: 2026-
|
|
3
|
+
updatedAt: 2026-09-20
|
|
4
4
|
title: "Astro + Svelte i18n - Guía completa para traducir tu aplicación"
|
|
5
5
|
description: "Sin más i18next. La guía 2026 para crear una aplicación Astro + Svelte multilingüe (i18n). Traduce con agentes de IA y optimiza el tamaño del bundle, SEO y rendimiento."
|
|
6
6
|
keywords:
|
|
@@ -19,6 +19,9 @@ slugs:
|
|
|
19
19
|
applicationTemplate: https://github.com/aymericzip/intlayer-astro-template
|
|
20
20
|
applicationShowcase: https://intlayer-astro-template.vercel.app
|
|
21
21
|
history:
|
|
22
|
+
- version: 9.5.5
|
|
23
|
+
date: 2026-09-19
|
|
24
|
+
changes: "Uso de los hooks useIntlayer / useLocale de astro-intlayer en la página de Astro"
|
|
22
25
|
- version: 8.9.0
|
|
23
26
|
date: 2026-05-04
|
|
24
27
|
changes: "Actualizar el uso de la API useIntlayer de Solid para el acceso directo a las propiedades"
|
|
@@ -150,7 +153,7 @@ bun add intlayer astro-intlayer svelte svelte-intlayer @astrojs/svelte
|
|
|
150
153
|
El paquete core que proporciona herramientas de i18n para la gestión de la configuración, traducciones, [declaración de contenidos](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/dictionary/content_file.md), transpilación y [comandos CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/cli/index.md).
|
|
151
154
|
|
|
152
155
|
- **astro-intlayer**
|
|
153
|
-
Incluye el plugin de integración de Astro para
|
|
156
|
+
Incluye el plugin de integración de Astro para integrar Intlayer con el [empaquetador Vite](https://vite.dev/guide/why.html#why-bundle-for-production), un middleware que resuelve el idioma de cada solicitud en `Astro.locals.intlayer`, y los hooks `useIntlayer` / `useDictionary` / `useLocale`. La misma ruta de importación resuelve a la implementación de servidor en tu frontmatter `.astro` y a la de cliente (respaldada por `vanilla-intlayer`) en bloques `<script>`.
|
|
154
157
|
|
|
155
158
|
- **svelte**
|
|
156
159
|
El paquete core de Svelte.
|
|
@@ -237,19 +240,21 @@ export default appContent;
|
|
|
237
240
|
</Step>
|
|
238
241
|
<Step number={5} title="Usar el contenido en Astro">
|
|
239
242
|
|
|
240
|
-
|
|
243
|
+
Consume tus diccionarios en archivos `.astro` con los hooks exportados por `astro-intlayer`. Comparten las firmas de `react-intlayer`: `useIntlayer("key")` devuelve el contenido de un diccionario y `useLocale()` el idioma actual, sin necesidad de pasar argumentos.
|
|
244
|
+
|
|
245
|
+
El idioma proviene del middleware `astro-intlayer`, que la integración registra automáticamente antes de tu propio `src/middleware.ts`. Lo resuelve para cada solicitud, a partir del prefijo de URL, luego del idioma guardado por el cliente (cookie o encabezado), luego de `Accept-Language`, y lo almacena en `Astro.locals.intlayer`. Las páginas pre-renderizadas solo usan la URL, ya que se renderizan una vez para cada visitante.
|
|
246
|
+
|
|
247
|
+
También deberías añadir metadatos SEO (como hreflang y enlaces canónicos) a cada página e introducir una isla de Svelte para el contenido interactivo del lado del cliente.
|
|
241
248
|
|
|
242
249
|
```astro fileName="src/pages/[...locale]/index.astro"
|
|
243
250
|
---
|
|
251
|
+
import { useIntlayer, useLocale } from "astro-intlayer";
|
|
244
252
|
import {
|
|
245
|
-
getIntlayer,
|
|
246
|
-
getLocaleFromPath,
|
|
247
253
|
getLocalizedUrl,
|
|
248
|
-
getHTMLTextDir,
|
|
249
254
|
getPrefix,
|
|
250
255
|
localeMap,
|
|
251
256
|
defaultLocale,
|
|
252
|
-
|
|
257
|
+
getHTMLTextDir,
|
|
253
258
|
} from "intlayer";
|
|
254
259
|
import SvelteIsland from "../../components/svelte/SvelteIsland.svelte";
|
|
255
260
|
|
|
@@ -259,8 +264,11 @@ export const getStaticPaths = () => {
|
|
|
259
264
|
}));
|
|
260
265
|
};
|
|
261
266
|
|
|
262
|
-
|
|
263
|
-
const {
|
|
267
|
+
// Idioma resuelto por el middleware (ej. /es/about -> 'es')
|
|
268
|
+
const { locale } = useLocale();
|
|
269
|
+
|
|
270
|
+
// Contenido del diccionario 'app' para ese idioma
|
|
271
|
+
const { title } = useIntlayer("app");
|
|
264
272
|
---
|
|
265
273
|
|
|
266
274
|
<!doctype html>
|
|
@@ -316,6 +324,8 @@ const { title } = getIntlayer("app", locale);
|
|
|
316
324
|
> <img src={String(content.image.src)} alt={String(content.image)} />
|
|
317
325
|
> ```
|
|
318
326
|
|
|
327
|
+
> `Astro.locals.intlayer` también expone `locale`, `defaultLocale` y `availableLocales` a tus propios middlewares y endpoints. Pasa un idioma o un selector como segundo argumento (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) para anular el idioma de la solicitud en una llamada.
|
|
328
|
+
|
|
319
329
|
> **Nota sobre la configuración de rutas:**
|
|
320
330
|
> La estructura de directorios que utilices depende del ajuste `middleware.routing` en `intlayer.config.ts`:
|
|
321
331
|
>
|
|
@@ -436,10 +446,10 @@ const pathList: SitemapUrlEntry[] = [
|
|
|
436
446
|
{ path: "/about", changefreq: "monthly", priority: 0.7 },
|
|
437
447
|
];
|
|
438
448
|
|
|
439
|
-
const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
|
|
440
|
-
|
|
441
449
|
export const GET: APIRoute = async ({ site }) => {
|
|
442
|
-
const xmlOutput = generateSitemap(pathList, {
|
|
450
|
+
const xmlOutput = generateSitemap(pathList, {
|
|
451
|
+
siteUrl: "https://example.com",
|
|
452
|
+
});
|
|
443
453
|
|
|
444
454
|
return new Response(xmlOutput, {
|
|
445
455
|
headers: { "Content-Type": "application/xml" },
|
|
@@ -539,21 +549,7 @@ bun x intlayer extract
|
|
|
539
549
|
</Tab>
|
|
540
550
|
<Tab value='Compilador Babel'>
|
|
541
551
|
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
Actualiza tu archivo `vite.config.ts` para incluir el plugin `intlayerCompiler` :
|
|
545
|
-
|
|
546
|
-
```ts fileName="vite.config.ts"
|
|
547
|
-
import { defineConfig } from "vite";
|
|
548
|
-
import { intlayer, intlayerCompiler } from "vite-intlayer";
|
|
549
|
-
|
|
550
|
-
export default defineConfig({
|
|
551
|
-
plugins: [
|
|
552
|
-
intlayer(),
|
|
553
|
-
intlayerCompiler(), // Adds the compiler plugin
|
|
554
|
-
],
|
|
555
|
-
});
|
|
556
|
-
```
|
|
552
|
+
Compila tu aplicación para transformar tus componentes y extraer el contenido
|
|
557
553
|
|
|
558
554
|
```bash packageManager="npm"
|
|
559
555
|
npm run build # O npm run dev
|