@intlayer/docs 9.0.0-canary.10 → 9.0.0-canary.12
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/internationalization_and_SEO.md +6 -0
- package/blog/ar/intlayer_with_i18next.md +8 -4
- package/blog/ar/intlayer_with_next-i18next.md +8 -4
- package/blog/ar/intlayer_with_next-intl.md +8 -4
- package/blog/ar/intlayer_with_react-i18next.md +8 -4
- package/blog/ar/intlayer_with_react-intl.md +8 -4
- package/blog/ar/intlayer_with_vue-i18n.md +8 -4
- package/blog/ar/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/de/internationalization_and_SEO.md +6 -0
- package/blog/de/intlayer_with_i18next.md +8 -4
- package/blog/de/intlayer_with_next-i18next.md +8 -4
- package/blog/de/intlayer_with_next-intl.md +8 -4
- package/blog/de/intlayer_with_react-i18next.md +8 -4
- package/blog/de/intlayer_with_react-intl.md +8 -4
- package/blog/de/intlayer_with_vue-i18n.md +8 -4
- package/blog/de/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/en/internationalization_and_SEO.md +6 -0
- package/blog/en/intlayer_with_i18next.md +8 -4
- package/blog/en/intlayer_with_next-i18next.md +8 -4
- package/blog/en/intlayer_with_next-intl.md +8 -4
- package/blog/en/intlayer_with_react-i18next.md +8 -4
- package/blog/en/intlayer_with_react-intl.md +8 -4
- package/blog/en/intlayer_with_vue-i18n.md +8 -4
- package/blog/en/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/en-GB/internationalization_and_SEO.md +6 -0
- package/blog/en-GB/intlayer_with_i18next.md +8 -4
- package/blog/en-GB/intlayer_with_next-i18next.md +8 -4
- package/blog/en-GB/intlayer_with_next-intl.md +8 -4
- package/blog/en-GB/intlayer_with_react-i18next.md +8 -4
- package/blog/en-GB/intlayer_with_react-intl.md +8 -4
- package/blog/en-GB/intlayer_with_vue-i18n.md +8 -4
- package/blog/en-GB/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/es/internationalization_and_SEO.md +6 -0
- package/blog/es/intlayer_with_i18next.md +8 -4
- package/blog/es/intlayer_with_next-i18next.md +8 -4
- package/blog/es/intlayer_with_next-intl.md +8 -4
- package/blog/es/intlayer_with_react-i18next.md +8 -4
- package/blog/es/intlayer_with_react-intl.md +8 -4
- package/blog/es/intlayer_with_vue-i18n.md +8 -4
- package/blog/es/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/fr/internationalization_and_SEO.md +6 -0
- package/blog/fr/intlayer_with_i18next.md +8 -4
- package/blog/fr/intlayer_with_next-i18next.md +8 -4
- package/blog/fr/intlayer_with_next-intl.md +8 -4
- package/blog/fr/intlayer_with_react-i18next.md +8 -4
- package/blog/fr/intlayer_with_react-intl.md +8 -4
- package/blog/fr/intlayer_with_vue-i18n.md +8 -4
- package/blog/fr/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/hi/internationalization_and_SEO.md +6 -0
- package/blog/hi/intlayer_with_i18next.md +8 -4
- package/blog/hi/intlayer_with_next-i18next.md +8 -4
- package/blog/hi/intlayer_with_next-intl.md +8 -4
- package/blog/hi/intlayer_with_react-i18next.md +8 -4
- package/blog/hi/intlayer_with_react-intl.md +8 -4
- package/blog/hi/intlayer_with_vue-i18n.md +8 -4
- package/blog/hi/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/id/internationalization_and_SEO.md +6 -0
- package/blog/id/intlayer_with_i18next.md +8 -4
- package/blog/id/intlayer_with_next-i18next.md +8 -4
- package/blog/id/intlayer_with_next-intl.md +8 -4
- package/blog/id/intlayer_with_react-i18next.md +8 -4
- package/blog/id/intlayer_with_react-intl.md +8 -4
- package/blog/id/intlayer_with_vue-i18n.md +8 -4
- package/blog/id/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/it/internationalization_and_SEO.md +6 -0
- package/blog/it/intlayer_with_i18next.md +8 -4
- package/blog/it/intlayer_with_next-i18next.md +8 -4
- package/blog/it/intlayer_with_next-intl.md +8 -4
- package/blog/it/intlayer_with_react-i18next.md +8 -4
- package/blog/it/intlayer_with_react-intl.md +8 -4
- package/blog/it/intlayer_with_vue-i18n.md +8 -4
- package/blog/it/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/ja/internationalization_and_SEO.md +6 -0
- package/blog/ja/intlayer_with_i18next.md +8 -4
- package/blog/ja/intlayer_with_next-i18next.md +8 -4
- package/blog/ja/intlayer_with_next-intl.md +8 -4
- package/blog/ja/intlayer_with_react-i18next.md +8 -4
- package/blog/ja/intlayer_with_react-intl.md +8 -4
- package/blog/ja/intlayer_with_vue-i18n.md +8 -4
- package/blog/ja/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/ko/internationalization_and_SEO.md +6 -0
- package/blog/ko/intlayer_with_i18next.md +8 -4
- package/blog/ko/intlayer_with_next-i18next.md +8 -4
- package/blog/ko/intlayer_with_next-intl.md +8 -4
- package/blog/ko/intlayer_with_react-i18next.md +8 -4
- package/blog/ko/intlayer_with_react-intl.md +8 -4
- package/blog/ko/intlayer_with_vue-i18n.md +8 -4
- package/blog/ko/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/pl/internationalization_and_SEO.md +6 -0
- package/blog/pl/intlayer_with_i18next.md +8 -4
- package/blog/pl/intlayer_with_next-i18next.md +8 -4
- package/blog/pl/intlayer_with_next-intl.md +8 -4
- package/blog/pl/intlayer_with_react-i18next.md +8 -4
- package/blog/pl/intlayer_with_react-intl.md +8 -4
- package/blog/pl/intlayer_with_vue-i18n.md +8 -4
- package/blog/pl/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/pt/internationalization_and_SEO.md +6 -0
- package/blog/pt/intlayer_with_i18next.md +8 -4
- package/blog/pt/intlayer_with_next-i18next.md +8 -4
- package/blog/pt/intlayer_with_next-intl.md +8 -4
- package/blog/pt/intlayer_with_react-i18next.md +8 -4
- package/blog/pt/intlayer_with_react-intl.md +8 -4
- package/blog/pt/intlayer_with_vue-i18n.md +8 -4
- package/blog/pt/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/ru/internationalization_and_SEO.md +6 -0
- package/blog/ru/intlayer_with_i18next.md +8 -4
- package/blog/ru/intlayer_with_next-i18next.md +8 -4
- package/blog/ru/intlayer_with_next-intl.md +8 -4
- package/blog/ru/intlayer_with_react-i18next.md +8 -4
- package/blog/ru/intlayer_with_react-intl.md +8 -4
- package/blog/ru/intlayer_with_vue-i18n.md +8 -4
- package/blog/ru/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/tr/internationalization_and_SEO.md +6 -0
- package/blog/tr/intlayer_with_i18next.md +8 -4
- package/blog/tr/intlayer_with_next-i18next.md +8 -4
- package/blog/tr/intlayer_with_next-intl.md +8 -4
- package/blog/tr/intlayer_with_react-i18next.md +8 -4
- package/blog/tr/intlayer_with_react-intl.md +8 -4
- package/blog/tr/intlayer_with_vue-i18n.md +8 -4
- package/blog/tr/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/uk/internationalization_and_SEO.md +6 -0
- package/blog/uk/intlayer_with_i18next.md +8 -4
- package/blog/uk/intlayer_with_next-i18next.md +8 -4
- package/blog/uk/intlayer_with_next-intl.md +8 -4
- package/blog/uk/intlayer_with_react-i18next.md +8 -4
- package/blog/uk/intlayer_with_react-intl.md +8 -4
- package/blog/uk/intlayer_with_vue-i18n.md +8 -4
- package/blog/uk/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/vi/internationalization_and_SEO.md +6 -0
- package/blog/vi/intlayer_with_i18next.md +8 -4
- package/blog/vi/intlayer_with_next-i18next.md +8 -4
- package/blog/vi/intlayer_with_next-intl.md +8 -4
- package/blog/vi/intlayer_with_react-i18next.md +8 -4
- package/blog/vi/intlayer_with_react-intl.md +8 -4
- package/blog/vi/intlayer_with_vue-i18n.md +8 -4
- package/blog/vi/nextjs-multilingual-seo-comparison.md +6 -0
- package/blog/zh/internationalization_and_SEO.md +6 -0
- package/blog/zh/nextjs-multilingual-seo-comparison.md +6 -0
- package/dist/cjs/generated/docs.entry.cjs +20 -0
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +20 -0
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +1 -0
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/bundle_optimization.md +16 -0
- package/docs/ar/cli/scan.md +2 -2
- package/docs/ar/how_works_intlayer.md +2 -2
- package/docs/ar/intlayer_CMS.md +16 -1
- package/docs/ar/intlayer_with_adonisjs.md +8 -4
- package/docs/ar/intlayer_with_analog.md +8 -4
- package/docs/ar/intlayer_with_angular_19.md +8 -4
- package/docs/ar/intlayer_with_angular_21.md +8 -4
- package/docs/ar/intlayer_with_astro_lit.md +11 -7
- package/docs/ar/intlayer_with_astro_preact.md +8 -4
- package/docs/ar/intlayer_with_astro_react.md +8 -4
- package/docs/ar/intlayer_with_astro_solid.md +8 -4
- package/docs/ar/intlayer_with_astro_svelte.md +8 -4
- package/docs/ar/intlayer_with_astro_vanilla.md +8 -4
- package/docs/ar/intlayer_with_astro_vue.md +8 -4
- package/docs/ar/intlayer_with_create_react_app.md +8 -4
- package/docs/ar/intlayer_with_express.md +8 -4
- package/docs/ar/intlayer_with_fastify.md +8 -4
- package/docs/ar/intlayer_with_hono.md +8 -4
- package/docs/ar/intlayer_with_lynx+react.md +8 -4
- package/docs/ar/intlayer_with_nestjs.md +8 -4
- package/docs/ar/intlayer_with_next-i18next.md +8 -4
- package/docs/ar/intlayer_with_nextjs_14.md +8 -4
- package/docs/ar/intlayer_with_nextjs_15.md +10 -8
- package/docs/ar/intlayer_with_nextjs_16.md +10 -8
- package/docs/ar/intlayer_with_nextjs_compiler.md +9 -7
- package/docs/ar/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/ar/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/ar/intlayer_with_nuxt.md +9 -5
- package/docs/ar/intlayer_with_react_native+expo.md +8 -4
- package/docs/ar/intlayer_with_react_router_v7.md +9 -5
- package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +9 -5
- package/docs/ar/intlayer_with_svelte_kit.md +8 -4
- package/docs/ar/intlayer_with_tanstack+solid.md +9 -5
- package/docs/ar/intlayer_with_tanstack.md +10 -7
- package/docs/ar/intlayer_with_vite+lit.md +8 -4
- package/docs/ar/intlayer_with_vite+preact.md +9 -5
- package/docs/ar/intlayer_with_vite+react.md +9 -5
- package/docs/ar/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/ar/intlayer_with_vite+solid.md +9 -5
- package/docs/ar/intlayer_with_vite+svelte.md +8 -4
- package/docs/ar/intlayer_with_vite+vanilla.md +8 -4
- package/docs/ar/intlayer_with_vite+vue.md +9 -5
- package/docs/ar/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/ar/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/ar/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/ar/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/ar/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/ar/releases/v9.md +58 -19
- package/docs/ar/self_hosting.md +350 -0
- package/docs/bn/bundle_optimization.md +16 -0
- package/docs/bn/cli/scan.md +2 -2
- package/docs/bn/intlayer_CMS.md +570 -0
- package/docs/bn/intlayer_with_angular_21.md +8 -4
- package/docs/bn/intlayer_with_fastify.md +8 -4
- package/docs/bn/intlayer_with_hono.md +8 -4
- package/docs/bn/intlayer_with_vite+lit.md +8 -4
- package/docs/bn/intlayer_with_vite+vanilla.md +8 -4
- package/docs/bn/releases/v9.md +340 -0
- package/docs/cs/bundle_optimization.md +16 -0
- package/docs/cs/cli/scan.md +2 -2
- package/docs/cs/intlayer_with_angular_21.md +8 -4
- package/docs/cs/intlayer_with_fastify.md +8 -4
- package/docs/cs/intlayer_with_hono.md +8 -4
- package/docs/cs/intlayer_with_vite+lit.md +8 -4
- package/docs/cs/intlayer_with_vite+vanilla.md +8 -4
- package/docs/cs/releases/v9.md +340 -0
- package/docs/de/bundle_optimization.md +16 -0
- package/docs/de/cli/scan.md +2 -2
- package/docs/de/how_works_intlayer.md +2 -2
- package/docs/de/intlayer_CMS.md +117 -1
- package/docs/de/intlayer_with_adonisjs.md +8 -4
- package/docs/de/intlayer_with_analog.md +8 -4
- package/docs/de/intlayer_with_angular_19.md +8 -4
- package/docs/de/intlayer_with_angular_21.md +8 -4
- package/docs/de/intlayer_with_astro_lit.md +11 -7
- package/docs/de/intlayer_with_astro_preact.md +8 -4
- package/docs/de/intlayer_with_astro_react.md +8 -4
- package/docs/de/intlayer_with_astro_solid.md +8 -4
- package/docs/de/intlayer_with_astro_svelte.md +8 -4
- package/docs/de/intlayer_with_astro_vanilla.md +8 -4
- package/docs/de/intlayer_with_astro_vue.md +8 -4
- package/docs/de/intlayer_with_create_react_app.md +8 -4
- package/docs/de/intlayer_with_express.md +8 -4
- package/docs/de/intlayer_with_fastify.md +8 -4
- package/docs/de/intlayer_with_hono.md +8 -4
- package/docs/de/intlayer_with_lynx+react.md +8 -4
- package/docs/de/intlayer_with_nestjs.md +8 -4
- package/docs/de/intlayer_with_next-i18next.md +8 -4
- package/docs/de/intlayer_with_nextjs_14.md +8 -4
- package/docs/de/intlayer_with_nextjs_15.md +10 -8
- package/docs/de/intlayer_with_nextjs_16.md +10 -8
- package/docs/de/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/de/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/de/intlayer_with_nuxt.md +9 -5
- package/docs/de/intlayer_with_react_native+expo.md +8 -4
- package/docs/de/intlayer_with_react_router_v7.md +9 -5
- package/docs/de/intlayer_with_svelte_kit.md +8 -4
- package/docs/de/intlayer_with_tanstack+solid.md +9 -5
- package/docs/de/intlayer_with_tanstack.md +10 -7
- package/docs/de/intlayer_with_vite+lit.md +8 -4
- package/docs/de/intlayer_with_vite+preact.md +9 -5
- package/docs/de/intlayer_with_vite+react.md +9 -5
- package/docs/de/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/de/intlayer_with_vite+solid.md +9 -5
- package/docs/de/intlayer_with_vite+vanilla.md +8 -4
- package/docs/de/intlayer_with_vite+vue.md +9 -5
- package/docs/de/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/de/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/de/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/de/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/de/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/de/releases/v9.md +61 -19
- package/docs/de/self_hosting.md +350 -0
- package/docs/en/bundle_optimization.md +16 -0
- package/docs/en/cli/scan.md +2 -2
- package/docs/en/how_works_intlayer.md +2 -2
- package/docs/en/intlayer_CMS.md +171 -1
- package/docs/en/intlayer_with_adonisjs.md +8 -4
- package/docs/en/intlayer_with_analog.md +8 -4
- package/docs/en/intlayer_with_angular_19.md +8 -4
- package/docs/en/intlayer_with_angular_21.md +8 -4
- package/docs/en/intlayer_with_astro.md +8 -4
- package/docs/en/intlayer_with_astro_lit.md +11 -7
- package/docs/en/intlayer_with_astro_preact.md +8 -4
- package/docs/en/intlayer_with_astro_react.md +8 -4
- package/docs/en/intlayer_with_astro_solid.md +8 -4
- package/docs/en/intlayer_with_astro_svelte.md +8 -4
- package/docs/en/intlayer_with_astro_vanilla.md +8 -4
- package/docs/en/intlayer_with_astro_vue.md +8 -4
- package/docs/en/intlayer_with_create_react_app.md +8 -4
- package/docs/en/intlayer_with_express.md +8 -4
- package/docs/en/intlayer_with_fastify.md +8 -4
- package/docs/en/intlayer_with_hono.md +8 -4
- package/docs/en/intlayer_with_lynx+react.md +8 -4
- package/docs/en/intlayer_with_nestjs.md +8 -4
- package/docs/en/intlayer_with_next-i18next.md +8 -4
- package/docs/en/intlayer_with_nextjs_14.md +8 -4
- package/docs/en/intlayer_with_nextjs_15.md +9 -7
- package/docs/en/intlayer_with_nextjs_16.md +10 -8
- package/docs/en/intlayer_with_nextjs_compiler.md +10 -8
- package/docs/en/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/en/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/en/intlayer_with_nuxt.md +9 -5
- package/docs/en/intlayer_with_react_native+expo.md +8 -4
- package/docs/en/intlayer_with_react_router_v7.md +9 -5
- package/docs/en/intlayer_with_svelte_kit.md +8 -4
- package/docs/en/intlayer_with_tanstack+solid.md +9 -5
- package/docs/en/intlayer_with_tanstack.md +10 -7
- package/docs/en/intlayer_with_vite+lit.md +8 -4
- package/docs/en/intlayer_with_vite+preact.md +9 -5
- package/docs/en/intlayer_with_vite+react.md +9 -5
- package/docs/en/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/en/intlayer_with_vite+solid.md +9 -5
- package/docs/en/intlayer_with_vite+svelte.md +8 -4
- package/docs/en/intlayer_with_vite+vanilla.md +8 -4
- package/docs/en/intlayer_with_vite+vue.md +9 -5
- package/docs/en/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/en/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/en/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/en/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/en/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/en/releases/v9.md +45 -20
- package/docs/en/self_hosting.md +292 -0
- package/docs/en-GB/bundle_optimization.md +16 -0
- package/docs/en-GB/cli/scan.md +2 -2
- package/docs/en-GB/how_works_intlayer.md +2 -2
- package/docs/en-GB/intlayer_CMS.md +16 -1
- package/docs/en-GB/intlayer_with_adonisjs.md +8 -4
- package/docs/en-GB/intlayer_with_analog.md +8 -4
- package/docs/en-GB/intlayer_with_angular_19.md +8 -4
- package/docs/en-GB/intlayer_with_angular_21.md +8 -4
- package/docs/en-GB/intlayer_with_astro_lit.md +11 -7
- package/docs/en-GB/intlayer_with_astro_preact.md +8 -4
- package/docs/en-GB/intlayer_with_astro_react.md +8 -4
- package/docs/en-GB/intlayer_with_astro_solid.md +8 -4
- package/docs/en-GB/intlayer_with_astro_svelte.md +8 -4
- package/docs/en-GB/intlayer_with_astro_vanilla.md +8 -4
- package/docs/en-GB/intlayer_with_astro_vue.md +8 -4
- package/docs/en-GB/intlayer_with_create_react_app.md +16 -8
- package/docs/en-GB/intlayer_with_express.md +8 -4
- package/docs/en-GB/intlayer_with_fastify.md +8 -4
- package/docs/en-GB/intlayer_with_hono.md +8 -4
- package/docs/en-GB/intlayer_with_lynx+react.md +16 -8
- package/docs/en-GB/intlayer_with_nestjs.md +8 -4
- package/docs/en-GB/intlayer_with_next-i18next.md +8 -4
- package/docs/en-GB/intlayer_with_nextjs_14.md +8 -4
- package/docs/en-GB/intlayer_with_nextjs_15.md +10 -8
- package/docs/en-GB/intlayer_with_nextjs_16.md +10 -8
- package/docs/en-GB/intlayer_with_nextjs_compiler.md +9 -7
- package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/en-GB/intlayer_with_nuxt.md +9 -5
- package/docs/en-GB/intlayer_with_react_native+expo.md +8 -4
- package/docs/en-GB/intlayer_with_react_router_v7.md +9 -5
- package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +9 -5
- package/docs/en-GB/intlayer_with_svelte_kit.md +8 -4
- package/docs/en-GB/intlayer_with_tanstack+solid.md +9 -5
- package/docs/en-GB/intlayer_with_tanstack.md +10 -7
- package/docs/en-GB/intlayer_with_vite+lit.md +8 -4
- package/docs/en-GB/intlayer_with_vite+preact.md +9 -5
- package/docs/en-GB/intlayer_with_vite+react.md +9 -5
- package/docs/en-GB/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/en-GB/intlayer_with_vite+solid.md +9 -5
- package/docs/en-GB/intlayer_with_vite+svelte.md +8 -4
- package/docs/en-GB/intlayer_with_vite+vanilla.md +8 -4
- package/docs/en-GB/intlayer_with_vite+vue.md +9 -5
- package/docs/en-GB/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/en-GB/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/en-GB/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/en-GB/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/en-GB/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/en-GB/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/en-GB/releases/v9.md +47 -20
- package/docs/en-GB/self_hosting.md +350 -0
- package/docs/es/bundle_optimization.md +16 -0
- package/docs/es/cli/scan.md +2 -2
- package/docs/es/how_works_intlayer.md +2 -2
- package/docs/es/intlayer_CMS.md +117 -1
- package/docs/es/intlayer_with_adonisjs.md +8 -4
- package/docs/es/intlayer_with_analog.md +8 -4
- package/docs/es/intlayer_with_angular_19.md +8 -4
- package/docs/es/intlayer_with_angular_21.md +8 -4
- package/docs/es/intlayer_with_astro_lit.md +11 -7
- package/docs/es/intlayer_with_astro_preact.md +8 -4
- package/docs/es/intlayer_with_astro_react.md +8 -4
- package/docs/es/intlayer_with_astro_solid.md +8 -4
- package/docs/es/intlayer_with_astro_svelte.md +8 -4
- package/docs/es/intlayer_with_astro_vanilla.md +8 -4
- package/docs/es/intlayer_with_astro_vue.md +8 -4
- package/docs/es/intlayer_with_create_react_app.md +8 -4
- package/docs/es/intlayer_with_express.md +8 -4
- package/docs/es/intlayer_with_fastify.md +8 -4
- package/docs/es/intlayer_with_hono.md +8 -4
- package/docs/es/intlayer_with_lynx+react.md +8 -4
- package/docs/es/intlayer_with_nestjs.md +8 -4
- package/docs/es/intlayer_with_next-i18next.md +8 -4
- package/docs/es/intlayer_with_nextjs_14.md +8 -4
- package/docs/es/intlayer_with_nextjs_15.md +10 -8
- package/docs/es/intlayer_with_nextjs_16.md +10 -8
- package/docs/es/intlayer_with_nextjs_compiler.md +9 -7
- package/docs/es/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/es/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/es/intlayer_with_nuxt.md +9 -5
- package/docs/es/intlayer_with_react_native+expo.md +8 -4
- package/docs/es/intlayer_with_react_router_v7.md +9 -5
- package/docs/es/intlayer_with_svelte_kit.md +8 -4
- package/docs/es/intlayer_with_tanstack+solid.md +9 -5
- package/docs/es/intlayer_with_tanstack.md +10 -7
- package/docs/es/intlayer_with_vite+lit.md +8 -4
- package/docs/es/intlayer_with_vite+preact.md +9 -5
- package/docs/es/intlayer_with_vite+react.md +9 -5
- package/docs/es/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/es/intlayer_with_vite+solid.md +9 -5
- package/docs/es/intlayer_with_vite+svelte.md +8 -4
- package/docs/es/intlayer_with_vite+vanilla.md +8 -4
- package/docs/es/intlayer_with_vite+vue.md +9 -5
- package/docs/es/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/es/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/es/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/es/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/es/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/es/releases/v9.md +61 -19
- package/docs/es/self_hosting.md +350 -0
- package/docs/fr/bundle_optimization.md +16 -0
- package/docs/fr/cli/scan.md +2 -2
- package/docs/fr/how_works_intlayer.md +2 -2
- package/docs/fr/intlayer_CMS.md +117 -1
- package/docs/fr/intlayer_with_adonisjs.md +8 -4
- package/docs/fr/intlayer_with_analog.md +8 -4
- package/docs/fr/intlayer_with_angular_19.md +8 -4
- package/docs/fr/intlayer_with_angular_21.md +8 -4
- package/docs/fr/intlayer_with_astro_lit.md +11 -7
- package/docs/fr/intlayer_with_astro_preact.md +8 -4
- package/docs/fr/intlayer_with_astro_react.md +8 -4
- package/docs/fr/intlayer_with_astro_solid.md +8 -4
- package/docs/fr/intlayer_with_astro_svelte.md +8 -4
- package/docs/fr/intlayer_with_astro_vanilla.md +8 -4
- package/docs/fr/intlayer_with_astro_vue.md +8 -4
- package/docs/fr/intlayer_with_create_react_app.md +8 -4
- package/docs/fr/intlayer_with_express.md +8 -4
- package/docs/fr/intlayer_with_fastify.md +8 -4
- package/docs/fr/intlayer_with_hono.md +8 -4
- package/docs/fr/intlayer_with_lynx+react.md +8 -4
- package/docs/fr/intlayer_with_nestjs.md +8 -4
- package/docs/fr/intlayer_with_next-i18next.md +8 -4
- package/docs/fr/intlayer_with_nextjs_14.md +8 -4
- package/docs/fr/intlayer_with_nextjs_15.md +10 -8
- package/docs/fr/intlayer_with_nextjs_16.md +10 -8
- package/docs/fr/intlayer_with_nextjs_compiler.md +9 -7
- package/docs/fr/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/fr/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/fr/intlayer_with_nuxt.md +9 -5
- package/docs/fr/intlayer_with_react_native+expo.md +8 -4
- package/docs/fr/intlayer_with_react_router_v7.md +9 -5
- package/docs/fr/intlayer_with_svelte_kit.md +8 -4
- package/docs/fr/intlayer_with_tanstack+solid.md +9 -5
- package/docs/fr/intlayer_with_tanstack.md +10 -7
- package/docs/fr/intlayer_with_vite+lit.md +8 -4
- package/docs/fr/intlayer_with_vite+preact.md +9 -5
- package/docs/fr/intlayer_with_vite+react.md +9 -5
- package/docs/fr/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/fr/intlayer_with_vite+solid.md +9 -5
- package/docs/fr/intlayer_with_vite+svelte.md +8 -4
- package/docs/fr/intlayer_with_vite+vanilla.md +8 -4
- package/docs/fr/intlayer_with_vite+vue.md +9 -5
- package/docs/fr/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/fr/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/fr/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/fr/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/fr/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/fr/releases/v9.md +61 -19
- package/docs/fr/self_hosting.md +350 -0
- package/docs/hi/bundle_optimization.md +16 -0
- package/docs/hi/cli/scan.md +2 -2
- package/docs/hi/how_works_intlayer.md +2 -2
- package/docs/hi/intlayer_CMS.md +16 -1
- package/docs/hi/intlayer_with_adonisjs.md +8 -4
- package/docs/hi/intlayer_with_analog.md +8 -4
- package/docs/hi/intlayer_with_angular_19.md +8 -4
- package/docs/hi/intlayer_with_angular_21.md +8 -4
- package/docs/hi/intlayer_with_astro_vue.md +8 -4
- package/docs/hi/intlayer_with_create_react_app.md +8 -4
- package/docs/hi/intlayer_with_express.md +8 -4
- package/docs/hi/intlayer_with_fastify.md +8 -4
- package/docs/hi/intlayer_with_hono.md +8 -4
- package/docs/hi/intlayer_with_lynx+react.md +8 -4
- package/docs/hi/intlayer_with_nestjs.md +8 -4
- package/docs/hi/intlayer_with_next-i18next.md +8 -4
- package/docs/hi/intlayer_with_nextjs_14.md +8 -4
- package/docs/hi/intlayer_with_nextjs_15.md +10 -8
- package/docs/hi/intlayer_with_nextjs_16.md +10 -8
- package/docs/hi/intlayer_with_nextjs_compiler.md +8 -4
- package/docs/hi/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/hi/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/hi/intlayer_with_nuxt.md +9 -5
- package/docs/hi/intlayer_with_react_native+expo.md +8 -4
- package/docs/hi/intlayer_with_react_router_v7.md +9 -5
- package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +9 -5
- package/docs/hi/intlayer_with_svelte_kit.md +8 -4
- package/docs/hi/intlayer_with_tanstack+solid.md +9 -5
- package/docs/hi/intlayer_with_tanstack.md +10 -7
- package/docs/hi/intlayer_with_vite+lit.md +8 -4
- package/docs/hi/intlayer_with_vite+preact.md +9 -5
- package/docs/hi/intlayer_with_vite+react.md +9 -5
- package/docs/hi/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/hi/intlayer_with_vite+solid.md +9 -5
- package/docs/hi/intlayer_with_vite+svelte.md +8 -4
- package/docs/hi/intlayer_with_vite+vanilla.md +8 -4
- package/docs/hi/intlayer_with_vite+vue.md +9 -5
- package/docs/hi/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/hi/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/hi/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/hi/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/hi/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/hi/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/hi/packages/intlayer/index.md +8 -4
- package/docs/hi/releases/v9.md +59 -19
- package/docs/hi/self_hosting.md +350 -0
- package/docs/id/bundle_optimization.md +16 -0
- package/docs/id/cli/scan.md +2 -2
- package/docs/id/how_works_intlayer.md +2 -2
- package/docs/id/intlayer_with_adonisjs.md +8 -4
- package/docs/id/intlayer_with_analog.md +8 -4
- package/docs/id/intlayer_with_angular_19.md +8 -4
- package/docs/id/intlayer_with_angular_21.md +8 -4
- package/docs/id/intlayer_with_astro_lit.md +11 -7
- package/docs/id/intlayer_with_astro_preact.md +8 -4
- package/docs/id/intlayer_with_astro_react.md +8 -4
- package/docs/id/intlayer_with_astro_solid.md +8 -4
- package/docs/id/intlayer_with_astro_svelte.md +8 -4
- package/docs/id/intlayer_with_astro_vanilla.md +8 -4
- package/docs/id/intlayer_with_astro_vue.md +8 -4
- package/docs/id/intlayer_with_create_react_app.md +8 -4
- package/docs/id/intlayer_with_express.md +8 -4
- package/docs/id/intlayer_with_fastify.md +8 -4
- package/docs/id/intlayer_with_hono.md +8 -4
- package/docs/id/intlayer_with_lynx+react.md +8 -4
- package/docs/id/intlayer_with_nestjs.md +8 -4
- package/docs/id/intlayer_with_next-i18next.md +8 -4
- package/docs/id/intlayer_with_nextjs_14.md +8 -4
- package/docs/id/intlayer_with_nextjs_15.md +9 -7
- package/docs/id/intlayer_with_nextjs_16.md +10 -8
- package/docs/id/intlayer_with_nextjs_compiler.md +8 -4
- package/docs/id/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/id/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/id/intlayer_with_nuxt.md +9 -5
- package/docs/id/intlayer_with_react_native+expo.md +8 -4
- package/docs/id/intlayer_with_react_router_v7.md +9 -5
- package/docs/id/intlayer_with_svelte_kit.md +8 -4
- package/docs/id/intlayer_with_tanstack+solid.md +9 -5
- package/docs/id/intlayer_with_tanstack.md +10 -7
- package/docs/id/intlayer_with_vite+lit.md +8 -4
- package/docs/id/intlayer_with_vite+preact.md +9 -5
- package/docs/id/intlayer_with_vite+react.md +9 -5
- package/docs/id/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/id/intlayer_with_vite+solid.md +9 -5
- package/docs/id/intlayer_with_vite+svelte.md +8 -4
- package/docs/id/intlayer_with_vite+vanilla.md +8 -4
- package/docs/id/intlayer_with_vite+vue.md +9 -5
- package/docs/id/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/id/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/id/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/id/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/id/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/id/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/id/releases/v9.md +31 -19
- package/docs/id/self_hosting.md +350 -0
- package/docs/it/bundle_optimization.md +16 -0
- package/docs/it/cli/scan.md +2 -2
- package/docs/it/how_works_intlayer.md +2 -2
- package/docs/it/intlayer_CMS.md +117 -1
- package/docs/it/intlayer_with_adonisjs.md +8 -4
- package/docs/it/intlayer_with_analog.md +8 -4
- package/docs/it/intlayer_with_angular_19.md +8 -4
- package/docs/it/intlayer_with_angular_21.md +8 -4
- package/docs/it/intlayer_with_astro_lit.md +11 -7
- package/docs/it/intlayer_with_astro_preact.md +8 -4
- package/docs/it/intlayer_with_astro_react.md +8 -4
- package/docs/it/intlayer_with_astro_solid.md +8 -4
- package/docs/it/intlayer_with_astro_svelte.md +8 -4
- package/docs/it/intlayer_with_astro_vanilla.md +8 -4
- package/docs/it/intlayer_with_astro_vue.md +8 -4
- package/docs/it/intlayer_with_create_react_app.md +8 -4
- package/docs/it/intlayer_with_express.md +8 -4
- package/docs/it/intlayer_with_fastify.md +8 -4
- package/docs/it/intlayer_with_hono.md +8 -4
- package/docs/it/intlayer_with_lynx+react.md +8 -4
- package/docs/it/intlayer_with_nestjs.md +8 -4
- package/docs/it/intlayer_with_next-i18next.md +8 -4
- package/docs/it/intlayer_with_nextjs_14.md +8 -4
- package/docs/it/intlayer_with_nextjs_15.md +10 -8
- package/docs/it/intlayer_with_nextjs_16.md +10 -8
- package/docs/it/intlayer_with_nextjs_compiler.md +9 -7
- package/docs/it/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/it/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/it/intlayer_with_nuxt.md +9 -5
- package/docs/it/intlayer_with_react_native+expo.md +8 -4
- package/docs/it/intlayer_with_react_router_v7.md +9 -5
- package/docs/it/intlayer_with_svelte_kit.md +8 -4
- package/docs/it/intlayer_with_tanstack+solid.md +9 -5
- package/docs/it/intlayer_with_tanstack.md +10 -7
- package/docs/it/intlayer_with_vite+lit.md +8 -4
- package/docs/it/intlayer_with_vite+preact.md +9 -5
- package/docs/it/intlayer_with_vite+react.md +10 -6
- package/docs/it/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/it/intlayer_with_vite+solid.md +9 -5
- package/docs/it/intlayer_with_vite+svelte.md +8 -4
- package/docs/it/intlayer_with_vite+vanilla.md +8 -4
- package/docs/it/intlayer_with_vite+vue.md +9 -5
- package/docs/it/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/it/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/it/migration_from_next-intl_to_intlayer.md +8 -4
- package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/it/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/it/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/it/releases/v9.md +61 -19
- package/docs/it/self_hosting.md +350 -0
- package/docs/ja/bundle_optimization.md +16 -0
- package/docs/ja/cli/scan.md +2 -2
- package/docs/ja/how_works_intlayer.md +2 -2
- package/docs/ja/intlayer_CMS.md +191 -10
- package/docs/ja/intlayer_with_adonisjs.md +8 -4
- package/docs/ja/intlayer_with_analog.md +8 -4
- package/docs/ja/intlayer_with_angular_19.md +8 -4
- package/docs/ja/intlayer_with_angular_21.md +8 -4
- package/docs/ja/intlayer_with_astro_lit.md +11 -7
- package/docs/ja/intlayer_with_astro_preact.md +8 -4
- package/docs/ja/intlayer_with_astro_react.md +8 -4
- package/docs/ja/intlayer_with_astro_solid.md +8 -4
- package/docs/ja/intlayer_with_astro_svelte.md +8 -4
- package/docs/ja/intlayer_with_astro_vanilla.md +8 -4
- package/docs/ja/intlayer_with_astro_vue.md +8 -4
- package/docs/ja/intlayer_with_create_react_app.md +8 -4
- package/docs/ja/intlayer_with_express.md +8 -4
- package/docs/ja/intlayer_with_fastify.md +8 -4
- package/docs/ja/intlayer_with_hono.md +8 -4
- package/docs/ja/intlayer_with_lynx+react.md +8 -4
- package/docs/ja/intlayer_with_nestjs.md +8 -4
- package/docs/ja/intlayer_with_next-i18next.md +8 -4
- package/docs/ja/intlayer_with_nextjs_14.md +8 -4
- package/docs/ja/intlayer_with_nextjs_15.md +10 -8
- package/docs/ja/intlayer_with_nextjs_16.md +10 -8
- package/docs/ja/intlayer_with_nextjs_compiler.md +8 -4
- package/docs/ja/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/ja/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/ja/intlayer_with_nuxt.md +9 -5
- package/docs/ja/intlayer_with_react_native+expo.md +8 -4
- package/docs/ja/intlayer_with_tanstack+solid.md +9 -5
- package/docs/ja/intlayer_with_tanstack.md +10 -7
- package/docs/ja/intlayer_with_vite+lit.md +8 -4
- package/docs/ja/intlayer_with_vite+preact.md +9 -5
- package/docs/ja/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/ja/intlayer_with_vite+solid.md +9 -5
- package/docs/ja/intlayer_with_vite+svelte.md +8 -4
- package/docs/ja/intlayer_with_vite+vanilla.md +8 -4
- package/docs/ja/intlayer_with_vite+vue.md +9 -5
- package/docs/ja/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/ja/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/ja/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/ja/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/ja/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/ja/releases/v9.md +31 -19
- package/docs/ja/self_hosting.md +350 -0
- package/docs/ko/bundle_optimization.md +16 -0
- package/docs/ko/cli/scan.md +2 -2
- package/docs/ko/how_works_intlayer.md +2 -2
- package/docs/ko/intlayer_CMS.md +189 -6
- package/docs/ko/intlayer_with_adonisjs.md +8 -4
- package/docs/ko/intlayer_with_analog.md +8 -4
- package/docs/ko/intlayer_with_angular_19.md +8 -4
- package/docs/ko/intlayer_with_angular_21.md +8 -4
- package/docs/ko/intlayer_with_astro_vue.md +8 -4
- package/docs/ko/intlayer_with_create_react_app.md +8 -4
- package/docs/ko/intlayer_with_express.md +8 -4
- package/docs/ko/intlayer_with_fastify.md +8 -4
- package/docs/ko/intlayer_with_hono.md +8 -4
- package/docs/ko/intlayer_with_nestjs.md +8 -4
- package/docs/ko/intlayer_with_next-i18next.md +8 -4
- package/docs/ko/intlayer_with_nextjs_15.md +10 -8
- package/docs/ko/intlayer_with_nextjs_16.md +10 -8
- package/docs/ko/intlayer_with_nextjs_compiler.md +9 -7
- package/docs/ko/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/ko/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/ko/intlayer_with_nuxt.md +9 -5
- package/docs/ko/intlayer_with_react_native+expo.md +8 -4
- package/docs/ko/intlayer_with_react_router_v7.md +9 -5
- package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +9 -5
- package/docs/ko/intlayer_with_svelte_kit.md +8 -4
- package/docs/ko/intlayer_with_tanstack+solid.md +9 -5
- package/docs/ko/intlayer_with_tanstack.md +10 -7
- package/docs/ko/intlayer_with_vite+lit.md +8 -4
- package/docs/ko/intlayer_with_vite+preact.md +9 -5
- package/docs/ko/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/ko/intlayer_with_vite+solid.md +9 -5
- package/docs/ko/intlayer_with_vite+svelte.md +8 -4
- package/docs/ko/intlayer_with_vite+vanilla.md +8 -4
- package/docs/ko/intlayer_with_vite+vue.md +9 -5
- package/docs/ko/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/ko/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/ko/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/ko/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/ko/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/ko/releases/v9.md +30 -19
- package/docs/ko/self_hosting.md +350 -0
- package/docs/nl/bundle_optimization.md +16 -0
- package/docs/nl/cli/scan.md +2 -2
- package/docs/nl/intlayer_with_angular_21.md +8 -4
- package/docs/nl/intlayer_with_fastify.md +8 -4
- package/docs/nl/intlayer_with_hono.md +8 -4
- package/docs/nl/intlayer_with_vite+lit.md +8 -4
- package/docs/nl/intlayer_with_vite+vanilla.md +8 -4
- package/docs/nl/releases/v9.md +340 -0
- package/docs/pl/bundle_optimization.md +16 -0
- package/docs/pl/cli/scan.md +2 -2
- package/docs/pl/how_works_intlayer.md +2 -2
- package/docs/pl/intlayer_CMS.md +16 -1
- package/docs/pl/intlayer_with_adonisjs.md +8 -4
- package/docs/pl/intlayer_with_analog.md +8 -4
- package/docs/pl/intlayer_with_angular_19.md +8 -4
- package/docs/pl/intlayer_with_angular_21.md +8 -4
- package/docs/pl/intlayer_with_astro_lit.md +11 -7
- package/docs/pl/intlayer_with_astro_preact.md +8 -4
- package/docs/pl/intlayer_with_astro_react.md +8 -4
- package/docs/pl/intlayer_with_astro_solid.md +8 -4
- package/docs/pl/intlayer_with_astro_svelte.md +8 -4
- package/docs/pl/intlayer_with_astro_vanilla.md +8 -4
- package/docs/pl/intlayer_with_astro_vue.md +8 -4
- package/docs/pl/intlayer_with_create_react_app.md +8 -4
- package/docs/pl/intlayer_with_express.md +8 -4
- package/docs/pl/intlayer_with_fastify.md +8 -4
- package/docs/pl/intlayer_with_hono.md +8 -4
- package/docs/pl/intlayer_with_lynx+react.md +8 -4
- package/docs/pl/intlayer_with_nestjs.md +8 -4
- package/docs/pl/intlayer_with_next-i18next.md +8 -4
- package/docs/pl/intlayer_with_nextjs_14.md +8 -4
- package/docs/pl/intlayer_with_nextjs_15.md +9 -7
- package/docs/pl/intlayer_with_nextjs_16.md +10 -8
- package/docs/pl/intlayer_with_nextjs_compiler.md +8 -4
- package/docs/pl/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/pl/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/pl/intlayer_with_nuxt.md +9 -5
- package/docs/pl/intlayer_with_react_native+expo.md +8 -4
- package/docs/pl/intlayer_with_react_router_v7.md +9 -5
- package/docs/pl/intlayer_with_svelte_kit.md +8 -4
- package/docs/pl/intlayer_with_tanstack+solid.md +9 -5
- package/docs/pl/intlayer_with_tanstack.md +10 -7
- package/docs/pl/intlayer_with_vite+lit.md +8 -4
- package/docs/pl/intlayer_with_vite+preact.md +9 -5
- package/docs/pl/intlayer_with_vite+react.md +9 -5
- package/docs/pl/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/pl/intlayer_with_vite+solid.md +9 -5
- package/docs/pl/intlayer_with_vite+svelte.md +8 -4
- package/docs/pl/intlayer_with_vite+vanilla.md +8 -4
- package/docs/pl/intlayer_with_vite+vue.md +9 -5
- package/docs/pl/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/pl/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/pl/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/pl/releases/v9.md +58 -19
- package/docs/pl/self_hosting.md +350 -0
- package/docs/pt/bundle_optimization.md +16 -0
- package/docs/pt/cli/scan.md +2 -2
- package/docs/pt/how_works_intlayer.md +2 -2
- package/docs/pt/intlayer_CMS.md +117 -1
- package/docs/pt/intlayer_with_adonisjs.md +8 -4
- package/docs/pt/intlayer_with_analog.md +8 -4
- package/docs/pt/intlayer_with_angular_19.md +8 -4
- package/docs/pt/intlayer_with_angular_21.md +8 -4
- package/docs/pt/intlayer_with_astro_lit.md +11 -7
- package/docs/pt/intlayer_with_astro_preact.md +8 -4
- package/docs/pt/intlayer_with_astro_react.md +8 -4
- package/docs/pt/intlayer_with_astro_solid.md +8 -4
- package/docs/pt/intlayer_with_astro_svelte.md +8 -4
- package/docs/pt/intlayer_with_astro_vanilla.md +8 -4
- package/docs/pt/intlayer_with_astro_vue.md +8 -4
- package/docs/pt/intlayer_with_create_react_app.md +8 -4
- package/docs/pt/intlayer_with_express.md +8 -4
- package/docs/pt/intlayer_with_fastify.md +8 -4
- package/docs/pt/intlayer_with_hono.md +8 -4
- package/docs/pt/intlayer_with_lynx+react.md +8 -4
- package/docs/pt/intlayer_with_nestjs.md +8 -4
- package/docs/pt/intlayer_with_next-i18next.md +8 -4
- package/docs/pt/intlayer_with_nextjs_14.md +8 -4
- package/docs/pt/intlayer_with_nextjs_15.md +10 -8
- package/docs/pt/intlayer_with_nextjs_16.md +10 -8
- package/docs/pt/intlayer_with_nextjs_compiler.md +9 -7
- package/docs/pt/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/pt/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/pt/intlayer_with_nuxt.md +9 -5
- package/docs/pt/intlayer_with_react_native+expo.md +8 -4
- package/docs/pt/intlayer_with_react_router_v7.md +9 -5
- package/docs/pt/intlayer_with_svelte_kit.md +8 -4
- package/docs/pt/intlayer_with_tanstack+solid.md +9 -5
- package/docs/pt/intlayer_with_tanstack.md +10 -7
- package/docs/pt/intlayer_with_vite+lit.md +8 -4
- package/docs/pt/intlayer_with_vite+preact.md +9 -5
- package/docs/pt/intlayer_with_vite+react.md +9 -5
- package/docs/pt/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/pt/intlayer_with_vite+solid.md +9 -5
- package/docs/pt/intlayer_with_vite+svelte.md +8 -4
- package/docs/pt/intlayer_with_vite+vanilla.md +8 -4
- package/docs/pt/intlayer_with_vite+vue.md +9 -5
- package/docs/pt/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/pt/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/pt/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/pt/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/pt/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/pt/releases/v9.md +61 -19
- package/docs/pt/self_hosting.md +350 -0
- package/docs/ru/bundle_optimization.md +16 -0
- package/docs/ru/cli/scan.md +2 -2
- package/docs/ru/how_works_intlayer.md +2 -2
- package/docs/ru/intlayer_CMS.md +196 -15
- package/docs/ru/intlayer_with_adonisjs.md +8 -4
- package/docs/ru/intlayer_with_analog.md +8 -4
- package/docs/ru/intlayer_with_angular_19.md +8 -4
- package/docs/ru/intlayer_with_angular_21.md +8 -4
- package/docs/ru/intlayer_with_astro_vue.md +8 -4
- package/docs/ru/intlayer_with_create_react_app.md +8 -4
- package/docs/ru/intlayer_with_express.md +8 -4
- package/docs/ru/intlayer_with_fastify.md +8 -4
- package/docs/ru/intlayer_with_hono.md +8 -4
- package/docs/ru/intlayer_with_lynx+react.md +8 -4
- package/docs/ru/intlayer_with_nestjs.md +8 -4
- package/docs/ru/intlayer_with_next-i18next.md +8 -4
- package/docs/ru/intlayer_with_nextjs_14.md +8 -4
- package/docs/ru/intlayer_with_nextjs_15.md +10 -8
- package/docs/ru/intlayer_with_nextjs_16.md +10 -8
- package/docs/ru/intlayer_with_nextjs_compiler.md +9 -7
- package/docs/ru/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/ru/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/ru/intlayer_with_nuxt.md +9 -5
- package/docs/ru/intlayer_with_react_native+expo.md +8 -4
- package/docs/ru/intlayer_with_react_router_v7.md +9 -5
- package/docs/ru/intlayer_with_svelte_kit.md +8 -4
- package/docs/ru/intlayer_with_tanstack+solid.md +9 -5
- package/docs/ru/intlayer_with_tanstack.md +10 -7
- package/docs/ru/intlayer_with_vite+lit.md +8 -4
- package/docs/ru/intlayer_with_vite+preact.md +9 -5
- package/docs/ru/intlayer_with_vite+react.md +9 -5
- package/docs/ru/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/ru/intlayer_with_vite+solid.md +9 -5
- package/docs/ru/intlayer_with_vite+svelte.md +8 -4
- package/docs/ru/intlayer_with_vite+vanilla.md +8 -4
- package/docs/ru/intlayer_with_vite+vue.md +9 -5
- package/docs/ru/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/ru/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/ru/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/ru/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/ru/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/ru/releases/v9.md +59 -19
- package/docs/ru/self_hosting.md +350 -0
- package/docs/tr/bundle_optimization.md +16 -0
- package/docs/tr/cli/scan.md +2 -2
- package/docs/tr/how_works_intlayer.md +2 -2
- package/docs/tr/intlayer_CMS.md +16 -1
- package/docs/tr/intlayer_with_adonisjs.md +8 -4
- package/docs/tr/intlayer_with_analog.md +8 -4
- package/docs/tr/intlayer_with_angular_19.md +8 -4
- package/docs/tr/intlayer_with_angular_21.md +8 -4
- package/docs/tr/intlayer_with_astro_lit.md +11 -7
- package/docs/tr/intlayer_with_astro_preact.md +8 -4
- package/docs/tr/intlayer_with_astro_react.md +8 -4
- package/docs/tr/intlayer_with_astro_solid.md +8 -4
- package/docs/tr/intlayer_with_astro_svelte.md +8 -4
- package/docs/tr/intlayer_with_astro_vanilla.md +8 -4
- package/docs/tr/intlayer_with_astro_vue.md +8 -4
- package/docs/tr/intlayer_with_create_react_app.md +8 -4
- package/docs/tr/intlayer_with_express.md +8 -4
- package/docs/tr/intlayer_with_fastify.md +8 -4
- package/docs/tr/intlayer_with_hono.md +8 -4
- package/docs/tr/intlayer_with_lynx+react.md +8 -4
- package/docs/tr/intlayer_with_nestjs.md +8 -4
- package/docs/tr/intlayer_with_next-i18next.md +8 -4
- package/docs/tr/intlayer_with_nextjs_14.md +8 -4
- package/docs/tr/intlayer_with_nextjs_15.md +10 -8
- package/docs/tr/intlayer_with_nextjs_16.md +10 -8
- package/docs/tr/intlayer_with_nextjs_compiler.md +8 -4
- package/docs/tr/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/tr/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/tr/intlayer_with_nuxt.md +9 -5
- package/docs/tr/intlayer_with_react_native+expo.md +8 -4
- package/docs/tr/intlayer_with_react_router_v7.md +9 -5
- package/docs/tr/intlayer_with_svelte_kit.md +8 -4
- package/docs/tr/intlayer_with_tanstack+solid.md +9 -5
- package/docs/tr/intlayer_with_tanstack.md +10 -7
- package/docs/tr/intlayer_with_vite+lit.md +8 -4
- package/docs/tr/intlayer_with_vite+preact.md +9 -5
- package/docs/tr/intlayer_with_vite+react.md +9 -5
- package/docs/tr/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/tr/intlayer_with_vite+solid.md +9 -5
- package/docs/tr/intlayer_with_vite+svelte.md +8 -4
- package/docs/tr/intlayer_with_vite+vanilla.md +8 -4
- package/docs/tr/intlayer_with_vite+vue.md +9 -5
- package/docs/tr/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/tr/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/tr/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/tr/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/tr/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/tr/releases/v9.md +46 -19
- package/docs/tr/self_hosting.md +350 -0
- package/docs/uk/bundle_optimization.md +16 -0
- package/docs/uk/cli/scan.md +2 -2
- package/docs/uk/how_works_intlayer.md +2 -2
- package/docs/uk/intlayer_CMS.md +16 -1
- package/docs/uk/intlayer_with_adonisjs.md +8 -4
- package/docs/uk/intlayer_with_analog.md +8 -4
- package/docs/uk/intlayer_with_angular_19.md +8 -4
- package/docs/uk/intlayer_with_angular_21.md +8 -4
- package/docs/uk/intlayer_with_astro_lit.md +11 -7
- package/docs/uk/intlayer_with_astro_preact.md +8 -4
- package/docs/uk/intlayer_with_astro_react.md +8 -4
- package/docs/uk/intlayer_with_astro_solid.md +8 -4
- package/docs/uk/intlayer_with_astro_svelte.md +8 -4
- package/docs/uk/intlayer_with_astro_vanilla.md +8 -4
- package/docs/uk/intlayer_with_astro_vue.md +8 -4
- package/docs/uk/intlayer_with_create_react_app.md +8 -4
- package/docs/uk/intlayer_with_express.md +8 -4
- package/docs/uk/intlayer_with_fastify.md +8 -4
- package/docs/uk/intlayer_with_hono.md +8 -4
- package/docs/uk/intlayer_with_lynx+react.md +8 -4
- package/docs/uk/intlayer_with_nestjs.md +8 -4
- package/docs/uk/intlayer_with_next-i18next.md +8 -4
- package/docs/uk/intlayer_with_nextjs_14.md +8 -4
- package/docs/uk/intlayer_with_nextjs_15.md +10 -8
- package/docs/uk/intlayer_with_nextjs_16.md +10 -8
- package/docs/uk/intlayer_with_nextjs_compiler.md +8 -4
- package/docs/uk/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/uk/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/uk/intlayer_with_nuxt.md +9 -5
- package/docs/uk/intlayer_with_react_native+expo.md +8 -4
- package/docs/uk/intlayer_with_react_router_v7.md +9 -5
- package/docs/uk/intlayer_with_svelte_kit.md +8 -4
- package/docs/uk/intlayer_with_tanstack+solid.md +9 -5
- package/docs/uk/intlayer_with_tanstack.md +10 -7
- package/docs/uk/intlayer_with_vite+lit.md +8 -4
- package/docs/uk/intlayer_with_vite+preact.md +9 -5
- package/docs/uk/intlayer_with_vite+react.md +9 -5
- package/docs/uk/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/uk/intlayer_with_vite+solid.md +9 -5
- package/docs/uk/intlayer_with_vite+svelte.md +8 -4
- package/docs/uk/intlayer_with_vite+vanilla.md +8 -4
- package/docs/uk/intlayer_with_vite+vue.md +9 -5
- package/docs/uk/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/uk/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/uk/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/uk/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/uk/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/uk/releases/v9.md +58 -19
- package/docs/uk/self_hosting.md +350 -0
- package/docs/ur/bundle_optimization.md +16 -0
- package/docs/ur/cli/scan.md +2 -2
- package/docs/ur/intlayer_with_angular_21.md +8 -4
- package/docs/ur/intlayer_with_fastify.md +8 -4
- package/docs/ur/intlayer_with_hono.md +8 -4
- package/docs/ur/intlayer_with_vite+lit.md +8 -4
- package/docs/ur/intlayer_with_vite+vanilla.md +8 -4
- package/docs/vi/bundle_optimization.md +16 -0
- package/docs/vi/cli/scan.md +2 -2
- package/docs/vi/how_works_intlayer.md +2 -2
- package/docs/vi/intlayer_with_adonisjs.md +8 -4
- package/docs/vi/intlayer_with_analog.md +8 -4
- package/docs/vi/intlayer_with_angular_19.md +8 -4
- package/docs/vi/intlayer_with_angular_21.md +8 -4
- package/docs/vi/intlayer_with_astro_lit.md +11 -7
- package/docs/vi/intlayer_with_astro_preact.md +8 -4
- package/docs/vi/intlayer_with_astro_react.md +8 -4
- package/docs/vi/intlayer_with_astro_solid.md +8 -4
- package/docs/vi/intlayer_with_astro_svelte.md +8 -4
- package/docs/vi/intlayer_with_astro_vanilla.md +8 -4
- package/docs/vi/intlayer_with_astro_vue.md +8 -4
- package/docs/vi/intlayer_with_create_react_app.md +8 -4
- package/docs/vi/intlayer_with_express.md +8 -4
- package/docs/vi/intlayer_with_fastify.md +8 -4
- package/docs/vi/intlayer_with_hono.md +8 -4
- package/docs/vi/intlayer_with_lynx+react.md +8 -4
- package/docs/vi/intlayer_with_nestjs.md +8 -4
- package/docs/vi/intlayer_with_next-i18next.md +8 -4
- package/docs/vi/intlayer_with_nextjs_14.md +8 -4
- package/docs/vi/intlayer_with_nextjs_15.md +9 -7
- package/docs/vi/intlayer_with_nextjs_16.md +10 -8
- package/docs/vi/intlayer_with_nextjs_compiler.md +8 -4
- package/docs/vi/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/vi/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/vi/intlayer_with_nuxt.md +9 -5
- package/docs/vi/intlayer_with_react_native+expo.md +8 -4
- package/docs/vi/intlayer_with_react_router_v7.md +9 -5
- package/docs/vi/intlayer_with_svelte_kit.md +8 -4
- package/docs/vi/intlayer_with_tanstack+solid.md +9 -5
- package/docs/vi/intlayer_with_tanstack.md +10 -7
- package/docs/vi/intlayer_with_vite+lit.md +8 -4
- package/docs/vi/intlayer_with_vite+preact.md +9 -5
- package/docs/vi/intlayer_with_vite+react.md +9 -5
- package/docs/vi/intlayer_with_vite+react_compiler.md +9 -5
- package/docs/vi/intlayer_with_vite+solid.md +9 -5
- package/docs/vi/intlayer_with_vite+svelte.md +8 -4
- package/docs/vi/intlayer_with_vite+vanilla.md +8 -4
- package/docs/vi/intlayer_with_vite+vue.md +9 -5
- package/docs/vi/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/vi/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/vi/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/vi/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/vi/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/vi/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/vi/releases/v9.md +31 -19
- package/docs/vi/self_hosting.md +350 -0
- package/docs/zh/bundle_optimization.md +16 -0
- package/docs/zh/cli/scan.md +2 -2
- package/docs/zh/how_works_intlayer.md +2 -2
- package/docs/zh/intlayer_with_adonisjs.md +8 -4
- package/docs/zh/intlayer_with_angular_21.md +8 -4
- package/docs/zh/intlayer_with_astro.md +8 -4
- package/docs/zh/intlayer_with_astro_lit.md +11 -7
- package/docs/zh/intlayer_with_astro_preact.md +8 -4
- package/docs/zh/intlayer_with_astro_react.md +8 -4
- package/docs/zh/intlayer_with_astro_solid.md +8 -4
- package/docs/zh/intlayer_with_astro_svelte.md +8 -4
- package/docs/zh/intlayer_with_astro_vanilla.md +8 -4
- package/docs/zh/intlayer_with_astro_vue.md +8 -4
- package/docs/zh/intlayer_with_create_react_app.md +8 -4
- package/docs/zh/intlayer_with_express.md +8 -4
- package/docs/zh/intlayer_with_fastify.md +8 -4
- package/docs/zh/intlayer_with_hono.md +8 -4
- package/docs/zh/intlayer_with_nestjs.md +8 -4
- package/docs/zh/intlayer_with_next-i18next.md +8 -4
- package/docs/zh/intlayer_with_nextjs_14.md +8 -4
- package/docs/zh/intlayer_with_nextjs_15.md +10 -8
- package/docs/zh/intlayer_with_nextjs_16.md +10 -8
- package/docs/zh/intlayer_with_nextjs_compiler.md +9 -7
- package/docs/zh/intlayer_with_nextjs_no_locale_path.md +10 -8
- package/docs/zh/intlayer_with_nextjs_page_router.md +8 -4
- package/docs/zh/intlayer_with_react_native+expo.md +8 -4
- package/docs/zh/intlayer_with_react_router_v7.md +9 -5
- package/docs/zh/intlayer_with_vite+solid.md +9 -5
- package/docs/zh/intlayer_with_vite+svelte.md +8 -4
- package/docs/zh/intlayer_with_vite+vue.md +9 -5
- package/docs/zh/migration_from_i18next_to_intlayer.md +8 -4
- package/docs/zh/migration_from_next-i18next_to_intlayer.md +8 -4
- package/docs/zh/migration_from_next-intl_to_intlayer.md +9 -7
- package/docs/zh/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
- package/docs/zh/migration_from_react-i18next_to_intlayer.md +9 -7
- package/docs/zh/migration_from_vue-i18n_to_intlayer.md +8 -4
- package/docs/zh/releases/v9.md +31 -19
- package/docs/zh/self_hosting.md +350 -0
- package/docs/zh-TW/bundle_optimization.md +16 -0
- package/docs/zh-TW/intlayer_with_angular_21.md +8 -4
- package/package.json +6 -6
- package/src/generated/docs.entry.ts +20 -0
|
@@ -101,19 +101,23 @@ Intlayer також є рішенням з **найактивнішим розв
|
|
|
101
101
|
Встановіть основні пакети Intlayer та адаптери сумісності:
|
|
102
102
|
|
|
103
103
|
```bash packageManager="npm"
|
|
104
|
-
npx intlayer
|
|
104
|
+
npx intlayer@canary init --interactive # v9
|
|
105
|
+
# npx intlayer init # v8
|
|
105
106
|
```
|
|
106
107
|
|
|
107
108
|
```bash packageManager="pnpm"
|
|
108
|
-
pnpm dlx intlayer
|
|
109
|
+
pnpm dlx intlayer@canary init --interactive # v9
|
|
110
|
+
# pnpm dlx intlayer init # v8
|
|
109
111
|
```
|
|
110
112
|
|
|
111
113
|
```bash packageManager="yarn"
|
|
112
|
-
yarn dlx intlayer
|
|
114
|
+
yarn dlx intlayer@canary init --interactive # v9
|
|
115
|
+
# yarn dlx intlayer init # v8
|
|
113
116
|
```
|
|
114
117
|
|
|
115
118
|
```bash packageManager="bun"
|
|
116
|
-
bunx intlayer
|
|
119
|
+
bunx intlayer@canary init --interactive # v9
|
|
120
|
+
# bunx intlayer init # v8
|
|
117
121
|
```
|
|
118
122
|
|
|
119
123
|
> флаг `--interactive` необов'язковий. Використовуйте `intlayer-cli init`, якщо ви AI-агент.
|
|
@@ -209,9 +213,7 @@ import { createNextI18nPlugin } from "@intlayer/next-i18next/plugin";
|
|
|
209
213
|
|
|
210
214
|
const withIntlayer = createNextI18nPlugin();
|
|
211
215
|
|
|
212
|
-
const nextConfig: NextConfig = {
|
|
213
|
-
/* ваші параметри */
|
|
214
|
-
};
|
|
216
|
+
const nextConfig: NextConfig = {/* ваші параметри */};
|
|
215
217
|
|
|
216
218
|
export default withIntlayer(nextConfig);
|
|
217
219
|
```
|
|
@@ -100,19 +100,23 @@ Intlayer також є рішенням з **найбільш активним
|
|
|
100
100
|
Встановіть основні пакети Intlayer та адаптер сумісності:
|
|
101
101
|
|
|
102
102
|
```bash packageManager="npm"
|
|
103
|
-
npx intlayer
|
|
103
|
+
npx intlayer@canary init --interactive # v9
|
|
104
|
+
# npx intlayer init # v8
|
|
104
105
|
```
|
|
105
106
|
|
|
106
107
|
```bash packageManager="pnpm"
|
|
107
|
-
pnpm dlx intlayer
|
|
108
|
+
pnpm dlx intlayer@canary init --interactive # v9
|
|
109
|
+
# pnpm dlx intlayer init # v8
|
|
108
110
|
```
|
|
109
111
|
|
|
110
112
|
```bash packageManager="yarn"
|
|
111
|
-
yarn dlx intlayer
|
|
113
|
+
yarn dlx intlayer@canary init --interactive # v9
|
|
114
|
+
# yarn dlx intlayer init # v8
|
|
112
115
|
```
|
|
113
116
|
|
|
114
117
|
```bash packageManager="bun"
|
|
115
|
-
bunx intlayer
|
|
118
|
+
bunx intlayer@canary init --interactive # v9
|
|
119
|
+
# bunx intlayer init # v8
|
|
116
120
|
```
|
|
117
121
|
|
|
118
122
|
> прапор `--interactive` є опціональним. Використовуйте `intlayer-cli init`, якщо ви AI агент.
|
package/docs/uk/releases/v9.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
createdAt: 2026-06-14
|
|
3
|
-
updatedAt: 2026-06-
|
|
3
|
+
updatedAt: 2026-06-30
|
|
4
4
|
title: Новий Intlayer v9 - Що нового?
|
|
5
5
|
description: Дізнайтеся, що нового в Intlayer v9. Представляємо сумісні пакети швидкої заміни (drop-in) для популярних бібліотек i18n та підтримку Collections та Variants.
|
|
6
6
|
keywords:
|
|
@@ -9,6 +9,8 @@ keywords:
|
|
|
9
9
|
- Міграція
|
|
10
10
|
- Колекції
|
|
11
11
|
- Варіанти
|
|
12
|
+
- Self-Hosting
|
|
13
|
+
- Docker
|
|
12
14
|
- i18next
|
|
13
15
|
- next-intl
|
|
14
16
|
- vue-i18n
|
|
@@ -202,24 +204,6 @@ const product = useIntlayer("product-copy", {
|
|
|
202
204
|
|
|
203
205
|
---
|
|
204
206
|
|
|
205
|
-
## Динамічне завантаження та оптимізація розміру бандла
|
|
206
|
-
|
|
207
|
-
Щоб зберегти розмір бандлів надзвичайно малим, Intlayer v9 підтримує динамічне ліниве завантаження (lazy loading).
|
|
208
|
-
|
|
209
|
-
У вашій конфігурації встановіть `importMode` у `'dynamic'` або `'fetch'`:
|
|
210
|
-
|
|
211
|
-
```ts fileName="intlayer.config.ts"
|
|
212
|
-
export default {
|
|
213
|
-
dictionary: {
|
|
214
|
-
importMode: "dynamic", // "static" | "dynamic" | "fetch"
|
|
215
|
-
},
|
|
216
|
-
};
|
|
217
|
-
```
|
|
218
|
-
|
|
219
|
-
Під час збірки `@intlayer/swc` та `@intlayer/babel` сканують ваші файли та замінюють виклики `useIntlayer` / `getIntlayer` на tree-shakeable обгортки (`useDictionary` / `useDictionaryDynamic`). Завантажується лише контент, необхідний для вибраного елемента колекції, варіанта або локалі, що запобігає потраплянню невикористовуваних перекладів у ваш продакшн-бандл.
|
|
220
|
-
|
|
221
|
-
---
|
|
222
|
-
|
|
223
207
|
## Vite Plugin: Bundled Compiler & Proxy
|
|
224
208
|
|
|
225
209
|
Плагін Vite `intlayer()` тепер об'єднує **компілятор** та **проксі для маршрутизації локалей** безпосередньо, тому більшості проектів потрібен лише один плагін у `vite.config.ts`:
|
|
@@ -299,6 +283,59 @@ npm install intlayer react-native-intlayer
|
|
|
299
283
|
|
|
300
284
|
---
|
|
301
285
|
|
|
286
|
+
## CMS SDK: використовуйте Intlayer як headless базу даних контенту
|
|
287
|
+
|
|
288
|
+
Intlayer v9 містить акуратний SDK з автоматичною автентифікацією в `@intlayer/api` для програмної взаємодії з CMS — отримувати проєкти, отримувати словники, а також надсилати чи оновлювати їх із власного сервера, скриптів або CI. Автентифікація (OAuth2 `client_credentials`) виконується та оновлюється за вас.
|
|
289
|
+
|
|
290
|
+
SDK розділено на **два окремі імпорти**, тож ваш бандл містить лише ті домени, які ви справді використовуєте:
|
|
291
|
+
|
|
292
|
+
1. `createIntlayerCMS` — легкий **автентифікатор**, який зберігає облікові дані та керований токен (клієнти доменів не включаються).
|
|
293
|
+
2. `dictionaryEndpoint`, `projectEndpoint`, … — **прив'язки ендпоінтів** для кожного домену, кожна імпортується зі свого підшляху.
|
|
294
|
+
|
|
295
|
+
```ts fileName="cms.ts"
|
|
296
|
+
import { createIntlayerCMS } from "@intlayer/api";
|
|
297
|
+
import { dictionaryEndpoint } from "@intlayer/api/dictionary";
|
|
298
|
+
|
|
299
|
+
// Конфігурація необов'язкова: облікові дані беруться з INTLAYER_CLIENT_ID /
|
|
300
|
+
// INTLAYER_CLIENT_SECRET, що розв'язуються через `@intlayer/config/built`.
|
|
301
|
+
const cms = createIntlayerCMS();
|
|
302
|
+
|
|
303
|
+
// Читання
|
|
304
|
+
const { data: dictionaries } = await dictionaryEndpoint(cms).getDictionaries();
|
|
305
|
+
|
|
306
|
+
// Запис — використовуйте CMS як базу даних
|
|
307
|
+
await dictionaryEndpoint(cms).pushDictionaries([myDictionary]);
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
> Безпека: облікові дані CMS надають доступ до запису вашого контенту. Завжди створюйте автентифікатор лише **на стороні сервера** — ніколи не передавайте `clientId` / `clientSecret` у браузер.
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
## Самостійне розгортання (Self-Hosting)
|
|
315
|
+
|
|
316
|
+
Intlayer v9 постачається з першокласною підтримкою запуску власного екземпляра Intlayer однією командою — обліковий запис Intlayer Cloud не потрібен.
|
|
317
|
+
|
|
318
|
+
```sh
|
|
319
|
+
curl -fsSL https://intlayer.org/install.sh | sh
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
Встановлювач завантажує `docker-compose.yml` та `.env`, автоматично генерує необхідні секрети та запускає `docker compose up -d`. Все — дашборд, API, база даних, сховище об'єктів та транзакційна електронна пошта — працює локально у контейнерах.
|
|
323
|
+
|
|
324
|
+
### Включені сервіси
|
|
325
|
+
|
|
326
|
+
| Сервіс | Призначення |
|
|
327
|
+
| ----------------------------------------- | ------------------------------------------------------------------------------ |
|
|
328
|
+
| **app** (TanStack Start) | UI дашборду на порту `3000` |
|
|
329
|
+
| **backend** (Fastify/Bun) | REST API на порту `3100` |
|
|
330
|
+
| **MongoDB 7** (одновузловий набір реплік) | Основна база даних |
|
|
331
|
+
| **Redis 7** | Черги завдань та кешування |
|
|
332
|
+
| **MinIO** | S3-сумісне сховище об'єктів (аватари, знімки екрана) |
|
|
333
|
+
| **Mailpit** | Локальний SMTP-приймач + веб-інтерфейс для транзакційної пошти на порту `8025` |
|
|
334
|
+
|
|
335
|
+
Chromium (що використовується для генерації знімків екрана через Puppeteer) вбудований у образ бекенду — додатковий контейнер не потрібен.
|
|
336
|
+
|
|
337
|
+
---
|
|
338
|
+
|
|
302
339
|
## Примітки щодо міграції з v8
|
|
303
340
|
|
|
304
341
|
Якщо ви оновлюєтеся з v8, зверніть увагу, що v9 не містить критичних змін (breaking changes). Проте ось ключові зміни:
|
|
@@ -314,3 +351,5 @@ npm install intlayer react-native-intlayer
|
|
|
314
351
|
- [Посібник з пакетів адаптерів сумісності (Compat Adapter Packages)](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/compat/index.md)
|
|
315
352
|
- [Динамічні словники - Collections та Variants](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/dynamic_dictionaries/index.md)
|
|
316
353
|
- [Довідник з конфігурації](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/configuration.md)
|
|
354
|
+
- [CMS SDK — програмний доступ через @intlayer/api](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/intlayer_CMS.md)
|
|
355
|
+
- [Посібник із самостійного розгортання](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/self_hosting.md)
|
|
@@ -0,0 +1,350 @@
|
|
|
1
|
+
---
|
|
2
|
+
createdAt: 2026-06-30
|
|
3
|
+
updatedAt: 2026-06-30
|
|
4
|
+
title: Розгортання Intlayer на власному сервері
|
|
5
|
+
description: Запустіть повний екземпляр Intlayer на власній інфраструктурі за допомогою однієї команди. Обліковий запис Intlayer Cloud не потрібен.
|
|
6
|
+
keywords:
|
|
7
|
+
- Самостійне розгортання
|
|
8
|
+
- Docker
|
|
9
|
+
- Docker Compose
|
|
10
|
+
- Intlayer
|
|
11
|
+
- CMS
|
|
12
|
+
- Встановлення
|
|
13
|
+
- Інфраструктура
|
|
14
|
+
slugs:
|
|
15
|
+
- doc
|
|
16
|
+
- self-hosting
|
|
17
|
+
author: aymericzip
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# Розгортання Intlayer на власному сервері
|
|
21
|
+
|
|
22
|
+
Intlayer може повністю працювати на вашій власній інфраструктурі — обліковий запис Intlayer Cloud не потрібен. Одна команда запускає готовий до виробництва стек:
|
|
23
|
+
|
|
24
|
+
```sh
|
|
25
|
+
curl -fsSL https://intlayer.org/install.sh | sh
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Інсталятор завантажує `docker-compose.yml` та `.env`, автоматично генерує необхідні секрети та запускає всі контейнери за допомогою `docker compose up -d`.
|
|
29
|
+
|
|
30
|
+
## Зміст
|
|
31
|
+
|
|
32
|
+
<TOC/>
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Архітектура
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
┌─────────────────────────────┐
|
|
40
|
+
browser ──────▶ │ app (TanStack Start) :3000│ ──┐
|
|
41
|
+
└─────────────────────────────┘ │ VITE_BACKEND_URL
|
|
42
|
+
┌─────────────────────────────┐ │
|
|
43
|
+
│ backend (Fastify/Bun) :3100│ ◀─┘
|
|
44
|
+
└──────────────┬──────────────┘
|
|
45
|
+
┌──────────┬─────────┼──────────┬───────────┐
|
|
46
|
+
▼ ▼ ▼ ▼ ▼
|
|
47
|
+
mongo:27017 redis:6379 minio:9000 mailpit:1025 Chromium
|
|
48
|
+
(1-node RS) (S3 API) (SMTP) (in-image)
|
|
49
|
+
minio:9001 mailpit:8025
|
|
50
|
+
(console) (web UI)
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Chromium (використовується для генерації скріншотів Puppeteer) вбудований в образ бекенду — окремий контейнер не потрібен.
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## Передумови
|
|
58
|
+
|
|
59
|
+
- **Docker** ≥ 24 та **Docker Compose** ≥ v2. Якщо чогось бракує, інсталятор виводить посилання на встановлення та завершує роботу.
|
|
60
|
+
- Порти `3000`, `3100`, `8025`, `9000` та `9001` доступні на хості.
|
|
61
|
+
- Хост Linux або macOS (або WSL2 на Windows).
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Швидкий старт
|
|
66
|
+
|
|
67
|
+
```sh
|
|
68
|
+
curl -fsSL https://intlayer.org/install.sh | sh
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Що робить інсталятор:
|
|
72
|
+
|
|
73
|
+
1. Перевіряє наявність `docker` та `docker compose`.
|
|
74
|
+
2. Завантажує `docker-compose.yml` та `.env.example` до `./intlayer/`.
|
|
75
|
+
3. Якщо файл `.env` не існує, копіює приклад та генерує випадкові секрети для `BETTER_AUTH_SECRET`, `S3_ACCESS_KEY_ID` та `S3_SECRET_ACCESS_KEY` за допомогою `openssl rand`.
|
|
76
|
+
4. Запускає `docker compose pull` + `docker compose up -d`.
|
|
77
|
+
5. Виводить URL-адреси: дашборд `:3000`, API `:3100`, інтерфейс електронної пошти `:8025`, консоль MinIO `:9001`.
|
|
78
|
+
|
|
79
|
+
Після запуску стека відкрийте **http://localhost:3000** та створіть свій перший обліковий запис.
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Сервіси
|
|
84
|
+
|
|
85
|
+
| Сервіс | Образ | Порт(и) хосту | Призначення |
|
|
86
|
+
| ----------- | ----------------------------------- | ------------------------------------- | ---------------------------------------------------------- |
|
|
87
|
+
| **app** | зібрано з `apps/app/Dockerfile` | `3000` | Панель приладів TanStack Start (інтерфейс CMS) |
|
|
88
|
+
| **backend** | зібрано з `apps/backend/Dockerfile` | `3100` | REST API Fastify (кінцева точка `/health`) |
|
|
89
|
+
| **mongo** | `mongo:7` | внутрішній | Однонодовий реплікасет (`rs0`) |
|
|
90
|
+
| **redis** | `redis:7-alpine` | внутрішній | Черги завдань (BullMQ) та кешування (ioredis) |
|
|
91
|
+
| **minio** | `minio/minio` | `9000` (S3), `9001` (консоль) | Об'єктне сховище, сумісне з S3, для аватарів та скріншотів |
|
|
92
|
+
| **mailpit** | `axllent/mailpit` | `1025` (SMTP), `8025` (веб-інтерфейс) | Локальний приймач транзакційних електронних листів |
|
|
93
|
+
|
|
94
|
+
Внутрішні порти (mongo, redis) за замовчуванням не доступні з хосту.
|
|
95
|
+
|
|
96
|
+
> Порт MinIO `9000` має бути доступним для браузера, оскільки завантажені ресурси (аватари, скріншоти) завантажуються безпосередньо з `S3_PUBLIC_URL=http://localhost:9000/intlayer`.
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Змінні середовища
|
|
101
|
+
|
|
102
|
+
Інсталятор генерує готовий до використання файл `.env`. Таблиця нижче описує кожну змінну.
|
|
103
|
+
|
|
104
|
+
### Обов'язкові (автоматично генеруються або запитуються)
|
|
105
|
+
|
|
106
|
+
| Змінна | Приклад | Опис |
|
|
107
|
+
| ---------------------- | ----------------------------------------------- | ------------------------------------------------------- |
|
|
108
|
+
| `NODE_ENV` | `production` | Середовище виконання |
|
|
109
|
+
| `PORT` | `3100` | Порт прослуховування бекенду |
|
|
110
|
+
| `BACKEND_URL` | `http://localhost:3100` | Публічна URL-адреса API бекенду |
|
|
111
|
+
| `APP_URL` | `http://localhost:3000` | Публічна URL-адреса дашборду |
|
|
112
|
+
| `DOMAIN` | `localhost` | Домен для cookie |
|
|
113
|
+
| `MONGODB_URI` | `mongodb://mongo:27017/intlayer?replicaSet=rs0` | Повний URI підключення до MongoDB |
|
|
114
|
+
| `REDIS_URL` | `redis://redis:6379` | URL підключення до Redis |
|
|
115
|
+
| `BETTER_AUTH_SECRET` | _(згенеровано)_ | 32-байтовий секрет для підпису сесії |
|
|
116
|
+
| `MAIL_PROVIDER` | `smtp` | Транспорт пошти: `smtp` або `resend` |
|
|
117
|
+
| `MAIL_SMTP_HOST` | `mailpit` | Ім'я хосту SMTP (ім'я контейнера Mailpit) |
|
|
118
|
+
| `MAIL_SMTP_PORT` | `1025` | Порт SMTP |
|
|
119
|
+
| `MAIL_FROM` | `Intlayer <no-reply@localhost>` | Адреса відправника |
|
|
120
|
+
| `S3_ENDPOINT` | `http://minio:9000` | Кінцева точка, сумісна з S3 |
|
|
121
|
+
| `S3_PUBLIC_URL` | `http://localhost:9000/intlayer` | Публічна URL-адреса для завантаження ресурсів браузером |
|
|
122
|
+
| `S3_BUCKET_NAME` | `intlayer` | Ім'я кошика |
|
|
123
|
+
| `S3_ACCESS_KEY_ID` | _(згенеровано)_ | Ключ доступу MinIO |
|
|
124
|
+
| `S3_SECRET_ACCESS_KEY` | _(згенеровано)_ | Секретний ключ MinIO |
|
|
125
|
+
| `VITE_BACKEND_URL` | `http://localhost:3100` | URL-адреса бекенду, вбудована в дашборд під час збірки |
|
|
126
|
+
| `VITE_DOMAIN` | `localhost` | Домен, вбудований в дашборд під час збірки |
|
|
127
|
+
|
|
128
|
+
### Необов'язкові (функції погіршуються, якщо відсутні)
|
|
129
|
+
|
|
130
|
+
| Змінна | Функція |
|
|
131
|
+
| -------------------------------------------------------- | ----------------------------------------------------------------------------------- |
|
|
132
|
+
| `OPENAI_API_KEY` | Переклад та аудит контенту за допомогою ШІ |
|
|
133
|
+
| `STRIPE_SECRET_KEY`, `STRIPE_WEBHOOK_SECRET`, `STRIPE_*` | Управління рахунками та підписками |
|
|
134
|
+
| `RESEND_API_KEY` | Транзакційна електронна пошта через Resend (перевизначає Mailpit, якщо встановлено) |
|
|
135
|
+
| `GITHUB_CLIENT_ID`, `GITHUB_CLIENT_SECRET` | Вхід через GitHub OAuth |
|
|
136
|
+
| `GOOGLE_CLIENT_ID`, `GOOGLE_CLIENT_SECRET` | Вхід через Google OAuth |
|
|
137
|
+
| `GITLAB_CLIENT_ID`, `GITLAB_CLIENT_SECRET` | Вхід через GitLab OAuth |
|
|
138
|
+
| `MICROSOFT_CLIENT_ID`, `MICROSOFT_CLIENT_SECRET` | Вхід через Microsoft OAuth |
|
|
139
|
+
| `LINKEDIN_CLIENT_ID`, `LINKEDIN_CLIENT_SECRET` | Вхід через LinkedIn OAuth |
|
|
140
|
+
| `ATLASSIAN_CLIENT_ID`, `ATLASSIAN_CLIENT_SECRET` | Вхід через Atlassian OAuth |
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Підключення вашого проекту Intlayer
|
|
145
|
+
|
|
146
|
+
Після запуску стека направте свій проект на самостійно розгорнутий бекенд та дашборд замість `intlayer.org`.
|
|
147
|
+
|
|
148
|
+
### Конфігурація проекту
|
|
149
|
+
|
|
150
|
+
```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
|
|
151
|
+
import type { IntlayerConfig } from "intlayer";
|
|
152
|
+
|
|
153
|
+
const config: IntlayerConfig = {
|
|
154
|
+
editor: {
|
|
155
|
+
clientId: process.env.INTLAYER_CLIENT_ID,
|
|
156
|
+
clientSecret: process.env.INTLAYER_CLIENT_SECRET,
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* URL самостійно розгорнутого дашборду CMS.
|
|
160
|
+
* За замовчуванням: https://app.intlayer.org
|
|
161
|
+
*/
|
|
162
|
+
cmsURL: process.env.INTLAYER_CMS_URL, // наприклад, http://localhost:3000
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* URL самостійно розгорнутого бекенд API.
|
|
166
|
+
* За замовчуванням: https://back.intlayer.org
|
|
167
|
+
*/
|
|
168
|
+
backendURL: process.env.INTLAYER_BACKEND_URL, // наприклад, http://localhost:3100
|
|
169
|
+
},
|
|
170
|
+
};
|
|
171
|
+
|
|
172
|
+
export default config;
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
Встановіть змінні середовища у файлі `.env` вашого проекту:
|
|
176
|
+
|
|
177
|
+
```sh
|
|
178
|
+
INTLAYER_CMS_URL=http://localhost:3000
|
|
179
|
+
INTLAYER_BACKEND_URL=http://localhost:3100
|
|
180
|
+
INTLAYER_CLIENT_ID=<ваш-client-id>
|
|
181
|
+
INTLAYER_CLIENT_SECRET=<ваш-client-secret>
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
Створіть облікові дані доступу у вашому самостійно розгорнутому дашборді в розділі **Проекти → Ключі доступу** за адресою `http://localhost:3000/projects`.
|
|
185
|
+
|
|
186
|
+
### SDK `@intlayer/api`
|
|
187
|
+
|
|
188
|
+
При програмному використанні SDK `@intlayer/api` передайте `backendURL` явно:
|
|
189
|
+
|
|
190
|
+
```typescript fileName="cms.ts" codeFormat="typescript"
|
|
191
|
+
import { createIntlayerCMS } from "@intlayer/api";
|
|
192
|
+
import { dictionaryEndpoint } from "@intlayer/api/dictionary";
|
|
193
|
+
|
|
194
|
+
const cms = createIntlayerCMS({
|
|
195
|
+
editor: {
|
|
196
|
+
clientId: process.env.INTLAYER_CLIENT_ID,
|
|
197
|
+
clientSecret: process.env.INTLAYER_CLIENT_SECRET,
|
|
198
|
+
backendURL: process.env.INTLAYER_BACKEND_URL, // http://localhost:3100
|
|
199
|
+
},
|
|
200
|
+
});
|
|
201
|
+
|
|
202
|
+
const { data: dictionaries } = await dictionaryEndpoint(cms).getDictionaries();
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
## Оновлення
|
|
208
|
+
|
|
209
|
+
Повторний запуск інсталятора на існуючому розгортанні виконує послідовне оновлення:
|
|
210
|
+
|
|
211
|
+
```sh
|
|
212
|
+
curl -fsSL https://intlayer.org/install.sh | sh
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
Це завантажує останні образи та перезапускає контейнери за допомогою `docker compose pull && docker compose up -d`. Існуючі томи (`mongo-data`, `redis-data`, `minio-data`) зберігаються — без втрати даних.
|
|
216
|
+
|
|
217
|
+
Щоб оновити вручну з каталогу `./intlayer/`:
|
|
218
|
+
|
|
219
|
+
```sh
|
|
220
|
+
docker compose pull
|
|
221
|
+
docker compose up -d
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## Резервне копіювання та відновлення
|
|
227
|
+
|
|
228
|
+
Всі постійні дані зберігаються в трьох іменованих томах Docker.
|
|
229
|
+
|
|
230
|
+
### Резервне копіювання
|
|
231
|
+
|
|
232
|
+
```sh
|
|
233
|
+
docker run --rm \
|
|
234
|
+
-v intlayer_mongo-data:/data \
|
|
235
|
+
-v "$(pwd)":/backup \
|
|
236
|
+
busybox tar czf /backup/mongo-data.tar.gz /data
|
|
237
|
+
|
|
238
|
+
docker run --rm \
|
|
239
|
+
-v intlayer_redis-data:/data \
|
|
240
|
+
-v "$(pwd)":/backup \
|
|
241
|
+
busybox tar czf /backup/redis-data.tar.gz /data
|
|
242
|
+
|
|
243
|
+
docker run --rm \
|
|
244
|
+
-v intlayer_minio-data:/data \
|
|
245
|
+
-v "$(pwd)":/backup \
|
|
246
|
+
busybox tar czf /backup/minio-data.tar.gz /data
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
### Відновлення
|
|
250
|
+
|
|
251
|
+
```sh
|
|
252
|
+
docker run --rm \
|
|
253
|
+
-v intlayer_mongo-data:/data \
|
|
254
|
+
-v "$(pwd)":/backup \
|
|
255
|
+
busybox tar xzf /backup/mongo-data.tar.gz -C /
|
|
256
|
+
|
|
257
|
+
# Повторіть для redis-data та minio-data
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
## Використання зворотного проксі (Nginx / Caddy)
|
|
263
|
+
|
|
264
|
+
Для виробничих розгортань розмістіть зворотний проксі перед контейнерами застосунку та бекенду замість прямого їх виставлення.
|
|
265
|
+
|
|
266
|
+
### Приклад Nginx
|
|
267
|
+
|
|
268
|
+
```nginx
|
|
269
|
+
server {
|
|
270
|
+
listen 80;
|
|
271
|
+
server_name cms.example.com;
|
|
272
|
+
|
|
273
|
+
location / {
|
|
274
|
+
proxy_pass http://localhost:3000;
|
|
275
|
+
proxy_set_header Host $host;
|
|
276
|
+
proxy_set_header X-Real-IP $remote_addr;
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
server {
|
|
281
|
+
listen 80;
|
|
282
|
+
server_name api.example.com;
|
|
283
|
+
|
|
284
|
+
location / {
|
|
285
|
+
proxy_pass http://localhost:3100;
|
|
286
|
+
proxy_set_header Host $host;
|
|
287
|
+
proxy_set_header X-Real-IP $remote_addr;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
Оновіть наступні змінні `.env`, щоб вони відповідали вашим публічним доменам:
|
|
293
|
+
|
|
294
|
+
```sh
|
|
295
|
+
BACKEND_URL=https://api.example.com
|
|
296
|
+
APP_URL=https://cms.example.com
|
|
297
|
+
DOMAIN=example.com
|
|
298
|
+
VITE_BACKEND_URL=https://api.example.com
|
|
299
|
+
VITE_DOMAIN=example.com
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
> Змінні `VITE_*` вбудовуються в образ дашборду під час збірки. Якщо ви зміните їх після збірки образу, вам потрібно перезібрати образ `app` (`docker compose build app`) або використовувати ін'єкцію конфігурації під час виконання.
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## Усунення несправностей
|
|
307
|
+
|
|
308
|
+
### Бекенд циклічно перезапускається під час першого запуску
|
|
309
|
+
|
|
310
|
+
MongoDB та Redis повинні бути справними, перш ніж бекенд почне працювати. Файл compose використовує `depends_on` з `condition: service_healthy`. Якщо ви бачите багаторазові перезапуски бекенду, перевірте, чи проходять перевірки стану `mongo` та `redis`:
|
|
311
|
+
|
|
312
|
+
```sh
|
|
313
|
+
docker compose ps
|
|
314
|
+
docker compose logs mongo
|
|
315
|
+
docker compose logs redis
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
### Дашборд не може дістатися до API
|
|
319
|
+
|
|
320
|
+
Переконайтеся, що `VITE_BACKEND_URL` відповідає URL-адресі, за якою бекенд доступний з **браузера** (не мережі Docker). Якщо ви змінили порт бекенду або додали зворотний проксі, перезіберіть образ дашборду:
|
|
321
|
+
|
|
322
|
+
```sh
|
|
323
|
+
docker compose build app
|
|
324
|
+
docker compose up -d app
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
### Електронні листи не надсилаються
|
|
328
|
+
|
|
329
|
+
За замовчуванням усі вихідні електронні листи захоплюються Mailpit. Відкрийте `http://localhost:8025`, щоб побачити надіслані повідомлення. Щоб надсилати реальні електронні листи, встановіть `MAIL_PROVIDER=resend` та `RESEND_API_KEY=<ваш-ключ>` у `.env`, а потім перезапустіть бекенд:
|
|
330
|
+
|
|
331
|
+
```sh
|
|
332
|
+
docker compose restart backend
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
### Відсутній кошик MinIO
|
|
336
|
+
|
|
337
|
+
Якщо одноразовий сервіс `minio-init` не запустився (або запустився до того, як MinIO був готовий), створіть кошик вручну:
|
|
338
|
+
|
|
339
|
+
```sh
|
|
340
|
+
docker compose run --rm minio-init
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
---
|
|
344
|
+
|
|
345
|
+
## Корисні посилання
|
|
346
|
+
|
|
347
|
+
- [Документація Intlayer CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/intlayer_CMS.md)
|
|
348
|
+
- [Довідка щодо конфігурації](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/configuration.md)
|
|
349
|
+
- [CMS SDK — `@intlayer/api`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/uk/intlayer_CMS.md#програмний-доступ-за-допомогою-intlayerapi-sdk)
|
|
350
|
+
- [Docker Image (aymercizip/intlayer-selfhost)](https://hub.docker.com/repository/docker/aymercizip/intlayer-selfhost/general)
|
|
@@ -231,6 +231,9 @@ Next.js کو آپٹیمائز پاس (import rewrite) کے لیے `@intlayer/swc
|
|
|
231
231
|
|
|
232
232
|
> یہ پلگ ان بائی ڈیفالٹ انسٹال نہیں ہوتا کیونکہ SWC کے پلگ انز Next.js کے لیے اب بھی تجرباتی مراحل میں ہیں۔ یہ مستقبل میں بدل سکتا ہے۔
|
|
233
233
|
|
|
234
|
+
<Tabs>
|
|
235
|
+
<Tab value="npm">
|
|
236
|
+
|
|
234
237
|
```bash packageManager="npm"
|
|
235
238
|
npm install -D @intlayer/swc
|
|
236
239
|
```
|
|
@@ -247,6 +250,19 @@ pnpm add -D @intlayer/swc
|
|
|
247
250
|
bun add -d @intlayer/swc
|
|
248
251
|
```
|
|
249
252
|
|
|
253
|
+
</Tab>
|
|
254
|
+
<Tab value="Crates.io (rust)">
|
|
255
|
+
|
|
256
|
+
```toml fileName="Cargo.toml"
|
|
257
|
+
[dependencies]
|
|
258
|
+
intlayer-swc-plugin = "*"
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
[View on Crates.io](https://crates.io/crates/intlayer-swc-plugin)
|
|
262
|
+
|
|
263
|
+
</Tab>
|
|
264
|
+
</Tabs>
|
|
265
|
+
|
|
250
266
|
انسٹال ہونے کے بعد، Intlayer خود بخود پلگ ان کو شناخت کر کے اس کا استعمال شروع کر دے گا۔
|
|
251
267
|
|
|
252
268
|
**purge اور minify** مراحل (فیلڈ کو ہٹانے اور رینیم کرنے) کے لیے، اس کے ساتھ `@intlayer/babel` انسٹال کریں اور Babel کے پلگ انز کو شامل کریں۔ چونکہ Next.js ٹرانسفارمیشن کے لیے SWC استعمال کرتا ہے لیکن پھر بھی پلگ ان کنفیگریشن کے لیے `babel.config.js` کو ایویلیوایٹ (evaluate) کرتا ہے، اس لیے Babel پلگ انز SWC سے پہلے ایک پری-پاس (pre-pass) کے طور پر چلتے ہیں۔
|
package/docs/ur/cli/scan.md
CHANGED
|
@@ -150,10 +150,10 @@ await scan("https://example.com", {
|
|
|
150
150
|
});
|
|
151
151
|
```
|
|
152
152
|
|
|
153
|
-
کم درجے کی رسائی کے لیے، `@intlayer/
|
|
153
|
+
کم درجے کی رسائی کے لیے، `@intlayer/engine/scan` سے `scanWebsite` ایک منظم `ScanResult` آبجیکٹ لوٹاتا ہے:
|
|
154
154
|
|
|
155
155
|
```ts
|
|
156
|
-
import { scanWebsite } from "@intlayer/
|
|
156
|
+
import { scanWebsite } from "@intlayer/engine/scan";
|
|
157
157
|
|
|
158
158
|
const result = await scanWebsite("https://example.com", { deep: false });
|
|
159
159
|
console.log(result.score, result.totalPageSize, result.events);
|
|
@@ -86,19 +86,23 @@ GitHub پر [ایپلیکیشن ٹیمپلیٹ](https://github.com/aymericzip/in
|
|
|
86
86
|
npm کا استعمال کرتے ہوئے ضروری پیکجز انسٹال کریں:
|
|
87
87
|
|
|
88
88
|
```bash packageManager="npm"
|
|
89
|
-
npx intlayer
|
|
89
|
+
npx intlayer@canary init --interactive # v9
|
|
90
|
+
# npx intlayer init # v8
|
|
90
91
|
```
|
|
91
92
|
|
|
92
93
|
```bash packageManager="pnpm"
|
|
93
|
-
pnpm dlx intlayer
|
|
94
|
+
pnpm dlx intlayer@canary init --interactive # v9
|
|
95
|
+
# pnpm dlx intlayer init # v8
|
|
94
96
|
```
|
|
95
97
|
|
|
96
98
|
```bash packageManager="yarn"
|
|
97
|
-
yarn dlx intlayer
|
|
99
|
+
yarn dlx intlayer@canary init --interactive # v9
|
|
100
|
+
# yarn dlx intlayer init # v8
|
|
98
101
|
```
|
|
99
102
|
|
|
100
103
|
```bash packageManager="bun"
|
|
101
|
-
bunx intlayer
|
|
104
|
+
bunx intlayer@canary init --interactive # v9
|
|
105
|
+
# bunx intlayer init # v8
|
|
102
106
|
```
|
|
103
107
|
|
|
104
108
|
> `--interactive` فلیگ اختیاری ہے۔ اگر آپ AI ایجنٹ ہیں تو `intlayer-cli init` استعمال کریں۔
|
|
@@ -61,19 +61,23 @@ GitHub پر [ایپلی کیشن ٹیمپلیٹ](https://github.com/aymericzip/i
|
|
|
61
61
|
`fastify-intlayer` کا استعمال شروع کرنے کے لیے، npm کا استعمال کرتے ہوئے پیکیج انسٹال کریں:
|
|
62
62
|
|
|
63
63
|
```bash packageManager="npm"
|
|
64
|
-
npx intlayer
|
|
64
|
+
npx intlayer@canary init --interactive # v9
|
|
65
|
+
# npx intlayer init # v8
|
|
65
66
|
```
|
|
66
67
|
|
|
67
68
|
```bash packageManager="pnpm"
|
|
68
|
-
pnpm dlx intlayer
|
|
69
|
+
pnpm dlx intlayer@canary init --interactive # v9
|
|
70
|
+
# pnpm dlx intlayer init # v8
|
|
69
71
|
```
|
|
70
72
|
|
|
71
73
|
```bash packageManager="yarn"
|
|
72
|
-
yarn dlx intlayer
|
|
74
|
+
yarn dlx intlayer@canary init --interactive # v9
|
|
75
|
+
# yarn dlx intlayer init # v8
|
|
73
76
|
```
|
|
74
77
|
|
|
75
78
|
```bash packageManager="bun"
|
|
76
|
-
bunx intlayer
|
|
79
|
+
bunx intlayer@canary init --interactive # v9
|
|
80
|
+
# bunx intlayer init # v8
|
|
77
81
|
```
|
|
78
82
|
|
|
79
83
|
> `--interactive` فلیگ اختیاری ہے۔ اگر آپ AI ایجنٹ ہیں تو `intlayer-cli init` استعمال کریں۔
|
|
@@ -63,19 +63,23 @@ GitHub پر [Application Template](https://github.com/aymericzip/intlayer-hono-t
|
|
|
63
63
|
`hono-intlayer` کا استعمال شروع کرنے کے لیے، npm کا استعمال کرتے ہوئے پیکیج انسٹال کریں:
|
|
64
64
|
|
|
65
65
|
```bash packageManager="npm"
|
|
66
|
-
npx intlayer
|
|
66
|
+
npx intlayer@canary init --interactive # v9
|
|
67
|
+
# npx intlayer init # v8
|
|
67
68
|
```
|
|
68
69
|
|
|
69
70
|
```bash packageManager="pnpm"
|
|
70
|
-
pnpm dlx intlayer
|
|
71
|
+
pnpm dlx intlayer@canary init --interactive # v9
|
|
72
|
+
# pnpm dlx intlayer init # v8
|
|
71
73
|
```
|
|
72
74
|
|
|
73
75
|
```bash packageManager="yarn"
|
|
74
|
-
yarn dlx intlayer
|
|
76
|
+
yarn dlx intlayer@canary init --interactive # v9
|
|
77
|
+
# yarn dlx intlayer init # v8
|
|
75
78
|
```
|
|
76
79
|
|
|
77
80
|
```bash packageManager="bun"
|
|
78
|
-
bunx intlayer
|
|
81
|
+
bunx intlayer@canary init --interactive # v9
|
|
82
|
+
# bunx intlayer init # v8
|
|
79
83
|
```
|
|
80
84
|
|
|
81
85
|
> `--interactive` فلیگ اختیاری ہے۔ اگر آپ AI ایجنٹ ہیں تو `intlayer-cli init` استعمال کریں۔
|