@intlayer/docs 9.5.6 → 9.5.7
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/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/ar/i18next_vs_intlayer.md +130 -16
- package/blog/ar/lingui_vs_intlayer.md +122 -15
- package/blog/ar/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/ar/next-intl_vs_intlayer.md +136 -20
- package/blog/ar/vue-i18n_vs_intlayer-vue-i18n.md +119 -17
- package/blog/ar/vue-i18n_vs_intlayer.md +193 -31
- package/blog/ar/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/de/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/de/i18next_vs_intlayer.md +128 -14
- package/blog/de/lingui_vs_intlayer.md +122 -15
- package/blog/de/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/de/next-intl_vs_intlayer.md +125 -15
- package/blog/de/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/de/vue-i18n_vs_intlayer.md +193 -31
- package/blog/en/i18next_vs_intlayer-i18next.md +121 -14
- package/blog/en/i18next_vs_intlayer.md +128 -14
- package/blog/en/lingui_vs_intlayer.md +124 -15
- package/blog/en/next-intl_vs_intlayer-next-intl.md +123 -14
- package/blog/en/next-intl_vs_intlayer.md +125 -13
- package/blog/en/vue-i18n_vs_intlayer-vue-i18n.md +115 -15
- package/blog/en/vue-i18n_vs_intlayer.md +188 -27
- package/blog/en-GB/i18next_vs_intlayer-i18next.md +121 -14
- package/blog/en-GB/i18next_vs_intlayer.md +128 -14
- package/blog/en-GB/lingui_vs_intlayer.md +122 -15
- package/blog/en-GB/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/en-GB/next-intl_vs_intlayer.md +125 -15
- package/blog/en-GB/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/en-GB/vue-i18n_vs_intlayer.md +187 -25
- package/blog/en-GB/vue-i18n_vs_intlayer_benchmark.md +116 -0
- package/blog/es/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/es/i18next_vs_intlayer.md +128 -14
- package/blog/es/lingui_vs_intlayer.md +122 -15
- package/blog/es/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/es/next-intl_vs_intlayer.md +125 -15
- package/blog/es/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/es/vue-i18n_vs_intlayer.md +193 -31
- package/blog/fr/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/fr/i18next_vs_intlayer.md +128 -14
- package/blog/fr/lingui_vs_intlayer.md +122 -15
- package/blog/fr/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/fr/next-intl_vs_intlayer.md +127 -15
- package/blog/fr/vue-i18n_vs_intlayer-vue-i18n.md +118 -17
- package/blog/fr/vue-i18n_vs_intlayer.md +192 -31
- package/blog/fr/vue-i18n_vs_intlayer_benchmark.md +329 -7
- package/blog/hi/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/hi/i18next_vs_intlayer.md +130 -16
- package/blog/hi/lingui_vs_intlayer.md +122 -15
- package/blog/hi/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/hi/next-intl_vs_intlayer.md +135 -19
- package/blog/hi/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/hi/vue-i18n_vs_intlayer.md +193 -31
- package/blog/hi/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/id/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/id/i18next_vs_intlayer.md +128 -14
- package/blog/id/lingui_vs_intlayer.md +122 -15
- package/blog/id/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/id/next-intl_vs_intlayer.md +135 -19
- package/blog/id/vue-i18n_vs_intlayer-vue-i18n.md +354 -2
- package/blog/id/vue-i18n_vs_intlayer.md +188 -26
- package/blog/id/vue-i18n_vs_intlayer_benchmark.md +327 -7
- package/blog/it/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/it/i18next_vs_intlayer.md +128 -14
- package/blog/it/lingui_vs_intlayer.md +122 -15
- package/blog/it/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/it/next-intl_vs_intlayer.md +125 -15
- package/blog/it/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/it/vue-i18n_vs_intlayer.md +191 -31
- package/blog/it/vue-i18n_vs_intlayer_benchmark.md +332 -5
- package/blog/ja/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/ja/i18next_vs_intlayer.md +129 -17
- package/blog/ja/lingui_vs_intlayer.md +122 -15
- package/blog/ja/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/ja/next-intl_vs_intlayer.md +124 -14
- package/blog/ja/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/ja/vue-i18n_vs_intlayer.md +193 -31
- package/blog/ja/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/ko/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/ko/i18next_vs_intlayer.md +129 -17
- package/blog/ko/lingui_vs_intlayer.md +122 -15
- package/blog/ko/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/ko/next-intl_vs_intlayer.md +134 -18
- package/blog/ko/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/ko/vue-i18n_vs_intlayer.md +193 -31
- package/blog/pl/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/pl/i18next_vs_intlayer.md +128 -14
- package/blog/pl/lingui_vs_intlayer.md +122 -15
- package/blog/pl/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/pl/next-intl_vs_intlayer.md +134 -18
- package/blog/pl/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/pl/vue-i18n_vs_intlayer.md +188 -26
- package/blog/pl/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/pt/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/pt/i18next_vs_intlayer.md +128 -14
- package/blog/pt/lingui_vs_intlayer.md +122 -15
- package/blog/pt/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/pt/next-intl_vs_intlayer.md +131 -15
- package/blog/pt/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/pt/vue-i18n_vs_intlayer.md +193 -31
- package/blog/pt/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/ru/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/ru/i18next_vs_intlayer.md +130 -16
- package/blog/ru/lingui_vs_intlayer.md +122 -15
- package/blog/ru/next-intl_vs_intlayer-next-intl.md +125 -16
- package/blog/ru/next-intl_vs_intlayer.md +123 -13
- package/blog/ru/vue-i18n_vs_intlayer-vue-i18n.md +127 -27
- package/blog/ru/vue-i18n_vs_intlayer.md +193 -31
- package/blog/ru/vue-i18n_vs_intlayer_benchmark.md +326 -19
- package/blog/tr/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/tr/i18next_vs_intlayer.md +128 -14
- package/blog/tr/lingui_vs_intlayer.md +122 -15
- package/blog/tr/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/tr/next-intl_vs_intlayer.md +136 -20
- package/blog/tr/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/tr/vue-i18n_vs_intlayer.md +188 -26
- package/blog/tr/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/uk/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/uk/i18next_vs_intlayer.md +130 -16
- package/blog/uk/lingui_vs_intlayer.md +122 -15
- package/blog/uk/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/uk/next-intl_vs_intlayer.md +135 -19
- package/blog/uk/vue-i18n_vs_intlayer-vue-i18n.md +135 -17
- package/blog/uk/vue-i18n_vs_intlayer.md +188 -27
- package/blog/uk/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/vi/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/vi/i18next_vs_intlayer.md +128 -14
- package/blog/vi/lingui_vs_intlayer.md +122 -15
- package/blog/vi/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/vi/next-intl_vs_intlayer.md +135 -19
- package/blog/vi/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/vi/vue-i18n_vs_intlayer.md +188 -26
- package/blog/vi/vue-i18n_vs_intlayer_benchmark.md +361 -0
- package/blog/zh/i18next_vs_intlayer-i18next.md +122 -15
- package/blog/zh/i18next_vs_intlayer.md +128 -14
- package/blog/zh/lingui_vs_intlayer.md +122 -15
- package/blog/zh/next-intl_vs_intlayer-next-intl.md +124 -15
- package/blog/zh/next-intl_vs_intlayer.md +125 -15
- package/blog/zh/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
- package/blog/zh/vue-i18n_vs_intlayer.md +192 -31
- package/blog/zh/vue-i18n_vs_intlayer_benchmark.md +340 -9
- package/dist/cjs/generated/docs.entry.cjs +40 -40
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/index.cjs +2 -2
- package/dist/esm/generated/docs.entry.mjs +40 -40
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/index.mjs +2 -2
- package/dist/types/generated/docs.entry.d.ts +2 -2
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/docs/ar/benchmark/nextjs.md +13 -13
- package/docs/ar/benchmark/solid.md +5 -5
- package/docs/ar/benchmark/svelte.md +4 -4
- package/docs/ar/benchmark/tanstack.md +14 -13
- package/docs/ar/benchmark/vue.md +5 -5
- package/docs/ar/chrome_extension.md +130 -0
- package/docs/ar/cli/index.md +6 -1
- package/docs/ar/cli/infra.md +162 -0
- package/docs/ar/cli/init.md +24 -1
- package/docs/ar/dictionary/html.md +173 -5
- package/docs/ar/dictionary/markdown.md +263 -1
- package/docs/ar/intlayer_with_analog.md +23 -1
- package/docs/ar/intlayer_with_angular_19.md +24 -1
- package/docs/ar/intlayer_with_angular_21.md +24 -1
- package/docs/ar/intlayer_with_astro.md +24 -1
- package/docs/ar/intlayer_with_astro_lit.md +25 -1
- package/docs/ar/intlayer_with_astro_preact.md +26 -1
- package/docs/ar/intlayer_with_astro_react.md +26 -1
- package/docs/ar/intlayer_with_astro_solid.md +26 -1
- package/docs/ar/intlayer_with_astro_svelte.md +25 -1
- package/docs/ar/intlayer_with_astro_vue.md +25 -1
- package/docs/ar/intlayer_with_remix_3.md +22 -1
- package/docs/ar/self_hosting.md +406 -231
- package/docs/de/benchmark/nextjs.md +13 -13
- package/docs/de/benchmark/solid.md +5 -5
- package/docs/de/benchmark/svelte.md +4 -4
- package/docs/de/benchmark/tanstack.md +14 -13
- package/docs/de/benchmark/vue.md +5 -5
- package/docs/de/chrome_extension.md +130 -0
- package/docs/de/cli/index.md +6 -1
- package/docs/de/cli/infra.md +162 -0
- package/docs/de/cli/init.md +24 -1
- package/docs/de/dictionary/html.md +173 -5
- package/docs/de/dictionary/markdown.md +263 -1
- package/docs/de/intlayer_with_analog.md +23 -1
- package/docs/de/intlayer_with_angular_19.md +24 -1
- package/docs/de/intlayer_with_angular_21.md +24 -1
- package/docs/de/intlayer_with_astro.md +24 -1
- package/docs/de/intlayer_with_astro_lit.md +25 -1
- package/docs/de/intlayer_with_astro_preact.md +26 -1
- package/docs/de/intlayer_with_astro_react.md +26 -1
- package/docs/de/intlayer_with_astro_solid.md +26 -1
- package/docs/de/intlayer_with_astro_svelte.md +25 -1
- package/docs/de/intlayer_with_astro_vue.md +25 -1
- package/docs/de/intlayer_with_remix_3.md +22 -1
- package/docs/de/self_hosting.md +404 -227
- package/docs/en/benchmark/nextjs.md +13 -13
- package/docs/en/benchmark/solid.md +5 -5
- package/docs/en/benchmark/svelte.md +4 -4
- package/docs/en/benchmark/tanstack.md +14 -13
- package/docs/en/benchmark/vue.md +5 -5
- package/docs/en/chrome_extension.md +130 -0
- package/docs/en/cli/index.md +6 -1
- package/docs/en/cli/infra.md +175 -0
- package/docs/en/cli/init.md +25 -1
- package/docs/en/dictionary/html.md +173 -5
- package/docs/en/dictionary/markdown.md +263 -1
- package/docs/en/intlayer_with_analog.md +23 -1
- package/docs/en/intlayer_with_angular_19.md +24 -1
- package/docs/en/intlayer_with_angular_21.md +24 -1
- package/docs/en/intlayer_with_astro.md +24 -1
- package/docs/en/intlayer_with_astro_lit.md +25 -1
- package/docs/en/intlayer_with_astro_preact.md +26 -1
- package/docs/en/intlayer_with_astro_react.md +26 -1
- package/docs/en/intlayer_with_astro_solid.md +26 -1
- package/docs/en/intlayer_with_astro_svelte.md +25 -1
- package/docs/en/intlayer_with_astro_vue.md +25 -1
- package/docs/en/intlayer_with_remix_3.md +22 -1
- package/docs/en/self_hosting.md +418 -176
- package/docs/en-GB/benchmark/nextjs.md +13 -13
- package/docs/en-GB/benchmark/solid.md +5 -5
- package/docs/en-GB/benchmark/svelte.md +4 -4
- package/docs/en-GB/benchmark/tanstack.md +14 -13
- package/docs/en-GB/benchmark/vue.md +5 -5
- package/docs/en-GB/chrome_extension.md +130 -0
- package/docs/en-GB/cli/index.md +6 -1
- package/docs/en-GB/cli/infra.md +162 -0
- package/docs/en-GB/cli/init.md +24 -1
- package/docs/en-GB/dictionary/html.md +173 -5
- package/docs/en-GB/dictionary/markdown.md +263 -1
- package/docs/en-GB/intlayer_with_analog.md +23 -1
- package/docs/en-GB/intlayer_with_angular_19.md +24 -1
- package/docs/en-GB/intlayer_with_angular_21.md +24 -1
- package/docs/en-GB/intlayer_with_astro.md +24 -1
- package/docs/en-GB/intlayer_with_astro_lit.md +25 -1
- package/docs/en-GB/intlayer_with_astro_preact.md +26 -1
- package/docs/en-GB/intlayer_with_astro_react.md +26 -1
- package/docs/en-GB/intlayer_with_astro_solid.md +26 -1
- package/docs/en-GB/intlayer_with_astro_svelte.md +25 -1
- package/docs/en-GB/intlayer_with_astro_vue.md +25 -1
- package/docs/en-GB/intlayer_with_remix_3.md +22 -1
- package/docs/en-GB/self_hosting.md +381 -206
- package/docs/es/benchmark/nextjs.md +13 -13
- package/docs/es/benchmark/solid.md +5 -5
- package/docs/es/benchmark/svelte.md +4 -4
- package/docs/es/benchmark/tanstack.md +14 -13
- package/docs/es/benchmark/vue.md +5 -5
- package/docs/es/chrome_extension.md +130 -0
- package/docs/es/cli/index.md +6 -1
- package/docs/es/cli/infra.md +162 -0
- package/docs/es/cli/init.md +24 -1
- package/docs/es/dictionary/html.md +173 -5
- package/docs/es/dictionary/markdown.md +263 -1
- package/docs/es/intlayer_with_analog.md +23 -1
- package/docs/es/intlayer_with_angular_19.md +24 -1
- package/docs/es/intlayer_with_angular_21.md +24 -1
- package/docs/es/intlayer_with_astro.md +24 -1
- package/docs/es/intlayer_with_astro_lit.md +25 -1
- package/docs/es/intlayer_with_astro_preact.md +26 -1
- package/docs/es/intlayer_with_astro_react.md +26 -1
- package/docs/es/intlayer_with_astro_solid.md +26 -1
- package/docs/es/intlayer_with_astro_svelte.md +25 -1
- package/docs/es/intlayer_with_astro_vue.md +25 -1
- package/docs/es/intlayer_with_remix_3.md +22 -1
- package/docs/es/self_hosting.md +400 -223
- package/docs/fr/benchmark/nextjs.md +13 -13
- package/docs/fr/benchmark/solid.md +5 -5
- package/docs/fr/benchmark/svelte.md +4 -4
- package/docs/fr/benchmark/tanstack.md +14 -13
- package/docs/fr/benchmark/vue.md +5 -5
- package/docs/fr/chrome_extension.md +130 -0
- package/docs/fr/cli/index.md +6 -1
- package/docs/fr/cli/infra.md +162 -0
- package/docs/fr/cli/init.md +24 -1
- package/docs/fr/dictionary/html.md +173 -5
- package/docs/fr/dictionary/markdown.md +265 -4
- package/docs/fr/intlayer_with_analog.md +23 -1
- package/docs/fr/intlayer_with_angular_19.md +24 -1
- package/docs/fr/intlayer_with_angular_21.md +24 -1
- package/docs/fr/intlayer_with_astro.md +24 -1
- package/docs/fr/intlayer_with_astro_lit.md +25 -1
- package/docs/fr/intlayer_with_astro_preact.md +26 -1
- package/docs/fr/intlayer_with_astro_react.md +26 -1
- package/docs/fr/intlayer_with_astro_solid.md +26 -1
- package/docs/fr/intlayer_with_astro_svelte.md +25 -1
- package/docs/fr/intlayer_with_astro_vue.md +25 -1
- package/docs/fr/intlayer_with_remix_3.md +22 -1
- package/docs/fr/self_hosting.md +401 -224
- package/docs/hi/benchmark/nextjs.md +13 -13
- package/docs/hi/benchmark/solid.md +5 -5
- package/docs/hi/benchmark/svelte.md +4 -4
- package/docs/hi/benchmark/tanstack.md +14 -13
- package/docs/hi/benchmark/vue.md +5 -5
- package/docs/hi/chrome_extension.md +130 -0
- package/docs/hi/cli/index.md +6 -1
- package/docs/hi/cli/infra.md +162 -0
- package/docs/hi/cli/init.md +24 -1
- package/docs/hi/dictionary/html.md +173 -5
- package/docs/hi/dictionary/markdown.md +263 -1
- package/docs/hi/intlayer_with_analog.md +23 -1
- package/docs/hi/intlayer_with_angular_19.md +24 -1
- package/docs/hi/intlayer_with_angular_21.md +24 -1
- package/docs/hi/intlayer_with_astro.md +24 -1
- package/docs/hi/intlayer_with_astro_lit.md +25 -1
- package/docs/hi/intlayer_with_astro_preact.md +26 -1
- package/docs/hi/intlayer_with_astro_react.md +26 -1
- package/docs/hi/intlayer_with_astro_solid.md +26 -1
- package/docs/hi/intlayer_with_astro_svelte.md +25 -1
- package/docs/hi/intlayer_with_astro_vue.md +25 -1
- package/docs/hi/intlayer_with_remix_3.md +22 -1
- package/docs/hi/self_hosting.md +409 -235
- package/docs/id/benchmark/nextjs.md +13 -13
- package/docs/id/benchmark/solid.md +5 -5
- package/docs/id/benchmark/svelte.md +4 -4
- package/docs/id/benchmark/tanstack.md +14 -13
- package/docs/id/benchmark/vue.md +5 -5
- package/docs/id/chrome_extension.md +130 -0
- package/docs/id/cli/index.md +6 -1
- package/docs/id/cli/infra.md +162 -0
- package/docs/id/cli/init.md +24 -1
- package/docs/id/dictionary/html.md +173 -5
- package/docs/id/dictionary/markdown.md +263 -1
- package/docs/id/intlayer_with_analog.md +23 -1
- package/docs/id/intlayer_with_angular_19.md +24 -1
- package/docs/id/intlayer_with_angular_21.md +24 -1
- package/docs/id/intlayer_with_astro.md +24 -1
- package/docs/id/intlayer_with_astro_lit.md +25 -1
- package/docs/id/intlayer_with_astro_preact.md +26 -1
- package/docs/id/intlayer_with_astro_react.md +26 -1
- package/docs/id/intlayer_with_astro_solid.md +26 -1
- package/docs/id/intlayer_with_astro_svelte.md +25 -1
- package/docs/id/intlayer_with_astro_vue.md +25 -1
- package/docs/id/intlayer_with_remix_3.md +22 -1
- package/docs/id/self_hosting.md +416 -243
- package/docs/it/benchmark/nextjs.md +13 -13
- package/docs/it/benchmark/solid.md +5 -5
- package/docs/it/benchmark/svelte.md +4 -4
- package/docs/it/benchmark/tanstack.md +14 -13
- package/docs/it/benchmark/vue.md +5 -5
- package/docs/it/chrome_extension.md +130 -0
- package/docs/it/cli/index.md +6 -1
- package/docs/it/cli/infra.md +162 -0
- package/docs/it/cli/init.md +24 -1
- package/docs/it/dictionary/html.md +173 -5
- package/docs/it/dictionary/markdown.md +263 -1
- package/docs/it/intlayer_with_analog.md +23 -1
- package/docs/it/intlayer_with_angular_19.md +24 -1
- package/docs/it/intlayer_with_angular_21.md +24 -1
- package/docs/it/intlayer_with_astro.md +24 -1
- package/docs/it/intlayer_with_astro_lit.md +25 -1
- package/docs/it/intlayer_with_astro_preact.md +26 -1
- package/docs/it/intlayer_with_astro_react.md +26 -1
- package/docs/it/intlayer_with_astro_solid.md +26 -1
- package/docs/it/intlayer_with_astro_svelte.md +25 -1
- package/docs/it/intlayer_with_astro_vue.md +25 -1
- package/docs/it/intlayer_with_remix_3.md +22 -1
- package/docs/it/self_hosting.md +412 -237
- package/docs/ja/benchmark/nextjs.md +13 -13
- package/docs/ja/benchmark/solid.md +5 -5
- package/docs/ja/benchmark/svelte.md +4 -4
- package/docs/ja/benchmark/tanstack.md +13 -12
- package/docs/ja/benchmark/vue.md +5 -5
- package/docs/ja/chrome_extension.md +130 -0
- package/docs/ja/cli/index.md +6 -1
- package/docs/ja/cli/infra.md +162 -0
- package/docs/ja/cli/init.md +24 -1
- package/docs/ja/dictionary/html.md +173 -5
- package/docs/ja/dictionary/markdown.md +263 -1
- package/docs/ja/intlayer_with_analog.md +23 -1
- package/docs/ja/intlayer_with_angular_19.md +24 -1
- package/docs/ja/intlayer_with_angular_21.md +24 -1
- package/docs/ja/intlayer_with_astro.md +24 -1
- package/docs/ja/intlayer_with_astro_lit.md +25 -1
- package/docs/ja/intlayer_with_astro_preact.md +26 -1
- package/docs/ja/intlayer_with_astro_react.md +26 -1
- package/docs/ja/intlayer_with_astro_solid.md +26 -1
- package/docs/ja/intlayer_with_astro_svelte.md +25 -1
- package/docs/ja/intlayer_with_astro_vue.md +25 -1
- package/docs/ja/intlayer_with_remix_3.md +22 -1
- package/docs/ja/self_hosting.md +398 -223
- package/docs/ko/benchmark/nextjs.md +13 -13
- package/docs/ko/benchmark/solid.md +5 -5
- package/docs/ko/benchmark/svelte.md +4 -4
- package/docs/ko/benchmark/tanstack.md +14 -13
- package/docs/ko/benchmark/vue.md +5 -5
- package/docs/ko/chrome_extension.md +130 -0
- package/docs/ko/cli/index.md +6 -1
- package/docs/ko/cli/infra.md +162 -0
- package/docs/ko/cli/init.md +24 -1
- package/docs/ko/dictionary/html.md +173 -5
- package/docs/ko/dictionary/markdown.md +263 -1
- package/docs/ko/intlayer_with_analog.md +23 -1
- package/docs/ko/intlayer_with_angular_19.md +24 -1
- package/docs/ko/intlayer_with_angular_21.md +24 -1
- package/docs/ko/intlayer_with_astro.md +24 -1
- package/docs/ko/intlayer_with_astro_lit.md +25 -1
- package/docs/ko/intlayer_with_astro_preact.md +26 -1
- package/docs/ko/intlayer_with_astro_react.md +26 -1
- package/docs/ko/intlayer_with_astro_solid.md +26 -1
- package/docs/ko/intlayer_with_astro_svelte.md +25 -1
- package/docs/ko/intlayer_with_astro_vue.md +25 -1
- package/docs/ko/intlayer_with_remix_3.md +22 -1
- package/docs/ko/self_hosting.md +411 -238
- package/docs/pl/benchmark/nextjs.md +13 -13
- package/docs/pl/benchmark/solid.md +5 -5
- package/docs/pl/benchmark/svelte.md +4 -4
- package/docs/pl/benchmark/tanstack.md +14 -13
- package/docs/pl/benchmark/vue.md +5 -5
- package/docs/pl/chrome_extension.md +130 -0
- package/docs/pl/cli/index.md +6 -1
- package/docs/pl/cli/infra.md +162 -0
- package/docs/pl/cli/init.md +24 -1
- package/docs/pl/dictionary/html.md +173 -5
- package/docs/pl/dictionary/markdown.md +263 -1
- package/docs/pl/intlayer_with_analog.md +23 -1
- package/docs/pl/intlayer_with_angular_19.md +24 -1
- package/docs/pl/intlayer_with_angular_21.md +24 -1
- package/docs/pl/intlayer_with_astro.md +24 -1
- package/docs/pl/intlayer_with_astro_lit.md +25 -1
- package/docs/pl/intlayer_with_astro_preact.md +26 -1
- package/docs/pl/intlayer_with_astro_react.md +26 -1
- package/docs/pl/intlayer_with_astro_solid.md +26 -1
- package/docs/pl/intlayer_with_astro_svelte.md +25 -1
- package/docs/pl/intlayer_with_astro_vue.md +25 -1
- package/docs/pl/intlayer_with_remix_3.md +22 -1
- package/docs/pl/self_hosting.md +408 -233
- package/docs/pt/benchmark/nextjs.md +13 -13
- package/docs/pt/benchmark/solid.md +5 -5
- package/docs/pt/benchmark/svelte.md +4 -4
- package/docs/pt/benchmark/tanstack.md +14 -13
- package/docs/pt/benchmark/vue.md +5 -5
- package/docs/pt/chrome_extension.md +130 -0
- package/docs/pt/cli/index.md +6 -1
- package/docs/pt/cli/infra.md +162 -0
- package/docs/pt/cli/init.md +24 -1
- package/docs/pt/dictionary/html.md +173 -5
- package/docs/pt/dictionary/markdown.md +263 -1
- package/docs/pt/intlayer_with_analog.md +23 -1
- package/docs/pt/intlayer_with_angular_19.md +24 -1
- package/docs/pt/intlayer_with_angular_21.md +24 -1
- package/docs/pt/intlayer_with_astro.md +24 -1
- package/docs/pt/intlayer_with_astro_lit.md +25 -1
- package/docs/pt/intlayer_with_astro_preact.md +26 -1
- package/docs/pt/intlayer_with_astro_react.md +26 -1
- package/docs/pt/intlayer_with_astro_solid.md +26 -1
- package/docs/pt/intlayer_with_astro_svelte.md +25 -1
- package/docs/pt/intlayer_with_astro_vue.md +25 -1
- package/docs/pt/intlayer_with_remix_3.md +22 -1
- package/docs/pt/self_hosting.md +399 -224
- package/docs/ru/benchmark/nextjs.md +13 -13
- package/docs/ru/benchmark/solid.md +5 -5
- package/docs/ru/benchmark/svelte.md +4 -4
- package/docs/ru/benchmark/tanstack.md +14 -13
- package/docs/ru/benchmark/vue.md +5 -5
- package/docs/ru/chrome_extension.md +130 -0
- package/docs/ru/cli/index.md +6 -1
- package/docs/ru/cli/infra.md +162 -0
- package/docs/ru/cli/init.md +24 -1
- package/docs/ru/dictionary/html.md +173 -5
- package/docs/ru/dictionary/markdown.md +263 -1
- package/docs/ru/intlayer_with_analog.md +23 -1
- package/docs/ru/intlayer_with_angular_19.md +24 -1
- package/docs/ru/intlayer_with_angular_21.md +24 -1
- package/docs/ru/intlayer_with_astro.md +24 -1
- package/docs/ru/intlayer_with_astro_lit.md +25 -1
- package/docs/ru/intlayer_with_astro_preact.md +26 -1
- package/docs/ru/intlayer_with_astro_react.md +26 -1
- package/docs/ru/intlayer_with_astro_solid.md +26 -1
- package/docs/ru/intlayer_with_astro_svelte.md +25 -1
- package/docs/ru/intlayer_with_astro_vue.md +25 -1
- package/docs/ru/intlayer_with_remix_3.md +22 -1
- package/docs/ru/self_hosting.md +403 -228
- package/docs/tr/benchmark/nextjs.md +13 -13
- package/docs/tr/benchmark/solid.md +5 -5
- package/docs/tr/benchmark/svelte.md +4 -4
- package/docs/tr/benchmark/tanstack.md +14 -13
- package/docs/tr/benchmark/vue.md +5 -5
- package/docs/tr/chrome_extension.md +130 -0
- package/docs/tr/cli/index.md +6 -1
- package/docs/tr/cli/infra.md +162 -0
- package/docs/tr/cli/init.md +24 -1
- package/docs/tr/dictionary/html.md +173 -5
- package/docs/tr/dictionary/markdown.md +263 -1
- package/docs/tr/intlayer_with_analog.md +23 -1
- package/docs/tr/intlayer_with_angular_19.md +24 -1
- package/docs/tr/intlayer_with_angular_21.md +24 -1
- package/docs/tr/intlayer_with_astro.md +24 -1
- package/docs/tr/intlayer_with_astro_lit.md +25 -1
- package/docs/tr/intlayer_with_astro_preact.md +26 -1
- package/docs/tr/intlayer_with_astro_react.md +26 -1
- package/docs/tr/intlayer_with_astro_solid.md +26 -1
- package/docs/tr/intlayer_with_astro_svelte.md +25 -1
- package/docs/tr/intlayer_with_astro_vue.md +25 -1
- package/docs/tr/intlayer_with_remix_3.md +22 -1
- package/docs/tr/self_hosting.md +410 -234
- package/docs/uk/benchmark/nextjs.md +13 -13
- package/docs/uk/benchmark/solid.md +5 -5
- package/docs/uk/benchmark/svelte.md +4 -4
- package/docs/uk/benchmark/tanstack.md +14 -13
- package/docs/uk/benchmark/vue.md +5 -5
- package/docs/uk/chrome_extension.md +130 -0
- package/docs/uk/cli/index.md +6 -1
- package/docs/uk/cli/infra.md +162 -0
- package/docs/uk/cli/init.md +24 -1
- package/docs/uk/dictionary/html.md +173 -5
- package/docs/uk/dictionary/markdown.md +263 -1
- package/docs/uk/intlayer_with_analog.md +23 -1
- package/docs/uk/intlayer_with_angular_19.md +24 -1
- package/docs/uk/intlayer_with_angular_21.md +24 -1
- package/docs/uk/intlayer_with_astro.md +24 -1
- package/docs/uk/intlayer_with_astro_lit.md +25 -1
- package/docs/uk/intlayer_with_astro_preact.md +26 -1
- package/docs/uk/intlayer_with_astro_react.md +26 -1
- package/docs/uk/intlayer_with_astro_solid.md +26 -1
- package/docs/uk/intlayer_with_astro_svelte.md +25 -1
- package/docs/uk/intlayer_with_astro_vue.md +25 -1
- package/docs/uk/intlayer_with_remix_3.md +22 -1
- package/docs/uk/self_hosting.md +413 -238
- package/docs/vi/benchmark/nextjs.md +13 -13
- package/docs/vi/benchmark/solid.md +5 -5
- package/docs/vi/benchmark/svelte.md +4 -4
- package/docs/vi/benchmark/tanstack.md +14 -13
- package/docs/vi/benchmark/vue.md +5 -5
- package/docs/vi/chrome_extension.md +130 -0
- package/docs/vi/cli/index.md +6 -1
- package/docs/vi/cli/infra.md +162 -0
- package/docs/vi/cli/init.md +24 -1
- package/docs/vi/dictionary/html.md +173 -5
- package/docs/vi/dictionary/markdown.md +263 -1
- package/docs/vi/intlayer_with_analog.md +23 -1
- package/docs/vi/intlayer_with_angular_19.md +24 -1
- package/docs/vi/intlayer_with_angular_21.md +24 -1
- package/docs/vi/intlayer_with_astro.md +24 -1
- package/docs/vi/intlayer_with_astro_lit.md +25 -1
- package/docs/vi/intlayer_with_astro_preact.md +26 -1
- package/docs/vi/intlayer_with_astro_react.md +26 -1
- package/docs/vi/intlayer_with_astro_solid.md +26 -1
- package/docs/vi/intlayer_with_astro_svelte.md +25 -1
- package/docs/vi/intlayer_with_astro_vue.md +25 -1
- package/docs/vi/intlayer_with_remix_3.md +22 -1
- package/docs/vi/self_hosting.md +408 -234
- package/docs/zh/benchmark/nextjs.md +13 -13
- package/docs/zh/benchmark/solid.md +5 -5
- package/docs/zh/benchmark/svelte.md +4 -4
- package/docs/zh/benchmark/tanstack.md +14 -13
- package/docs/zh/benchmark/vue.md +5 -5
- package/docs/zh/chrome_extension.md +130 -0
- package/docs/zh/cli/index.md +6 -1
- package/docs/zh/cli/infra.md +162 -0
- package/docs/zh/cli/init.md +24 -1
- package/docs/zh/dictionary/html.md +172 -5
- package/docs/zh/dictionary/markdown.md +262 -1
- package/docs/zh/intlayer_with_analog.md +23 -1
- package/docs/zh/intlayer_with_angular_19.md +24 -1
- package/docs/zh/intlayer_with_angular_21.md +24 -1
- package/docs/zh/intlayer_with_astro.md +24 -1
- package/docs/zh/intlayer_with_astro_lit.md +25 -1
- package/docs/zh/intlayer_with_astro_preact.md +26 -1
- package/docs/zh/intlayer_with_astro_react.md +26 -1
- package/docs/zh/intlayer_with_astro_solid.md +26 -1
- package/docs/zh/intlayer_with_astro_svelte.md +25 -1
- package/docs/zh/intlayer_with_astro_vue.md +25 -1
- package/docs/zh/intlayer_with_remix_3.md +22 -1
- package/docs/zh/self_hosting.md +410 -237
- package/legal/ar/privacy_notice.md +9 -3
- package/legal/de/privacy_notice.md +9 -3
- package/legal/en/privacy_notice.md +10 -3
- package/legal/en-GB/privacy_notice.md +9 -3
- package/legal/es/privacy_notice.md +9 -3
- package/legal/fr/privacy_notice.md +9 -3
- package/legal/hi/privacy_notice.md +9 -3
- package/legal/id/privacy_notice.md +9 -3
- package/legal/it/privacy_notice.md +9 -3
- package/legal/ja/privacy_notice.md +9 -3
- package/legal/ko/privacy_notice.md +9 -3
- package/legal/pl/privacy_notice.md +9 -3
- package/legal/pt/privacy_notice.md +9 -3
- package/legal/ru/privacy_notice.md +9 -3
- package/legal/tr/privacy_notice.md +9 -3
- package/legal/uk/privacy_notice.md +9 -3
- package/legal/vi/privacy_notice.md +9 -3
- package/legal/zh/privacy_notice.md +9 -3
- package/package.json +1 -1
- package/src/generated/docs.entry.ts +40 -40
- package/docs/ar/roadmap.md +0 -321
- package/docs/de/roadmap.md +0 -322
- package/docs/en/intlayer_with_astro_vanilla.md +0 -713
- package/docs/en/roadmap.md +0 -325
- package/docs/en-GB/roadmap.md +0 -322
- package/docs/es/roadmap.md +0 -322
- package/docs/fr/roadmap.md +0 -322
- package/docs/hi/roadmap.md +0 -322
- package/docs/id/roadmap.md +0 -325
- package/docs/it/roadmap.md +0 -322
- package/docs/ja/roadmap.md +0 -322
- package/docs/ko/roadmap.md +0 -322
- package/docs/pl/roadmap.md +0 -325
- package/docs/pt/roadmap.md +0 -322
- package/docs/ru/roadmap.md +0 -322
- package/docs/tr/roadmap.md +0 -325
- package/docs/uk/roadmap.md +0 -325
- package/docs/vi/roadmap.md +0 -325
- package/docs/zh/roadmap.md +0 -322
package/docs/vi/roadmap.md
DELETED
|
@@ -1,325 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
createdAt: 2025-03-01
|
|
3
|
-
updatedAt: 2025-06-29
|
|
4
|
-
title: Lộ trình phát triển
|
|
5
|
-
description: Khám phá lộ trình phát triển của Intlayer. Xem tất cả các tính năng mà Intlayer đã triển khai và dự định sẽ triển khai.
|
|
6
|
-
keywords:
|
|
7
|
-
- Lộ trình phát triển
|
|
8
|
-
- Intlayer
|
|
9
|
-
- Quốc tế hóa
|
|
10
|
-
- CMS
|
|
11
|
-
- Hệ thống quản lý nội dung
|
|
12
|
-
- Trình chỉnh sửa trực quan
|
|
13
|
-
slugs:
|
|
14
|
-
- doc
|
|
15
|
-
- roadmap
|
|
16
|
-
history:
|
|
17
|
-
- version: 5.5.10
|
|
18
|
-
date: 2025-06-30
|
|
19
|
-
changes: "Thêm hỗ trợ Preact và Nuxt, MCP Server, cập nhật CLI"
|
|
20
|
-
- version: 5.5.11
|
|
21
|
-
date: 2025-06-29
|
|
22
|
-
changes: "Thêm các lệnh `docs`"
|
|
23
|
-
- version: 5.5.10
|
|
24
|
-
date: 2025-06-29
|
|
25
|
-
changes: "Khởi tạo lịch sử"
|
|
26
|
-
author: aymericzip
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
# Intlayer: Tổng quan tính năng & Lộ trình phát triển
|
|
30
|
-
|
|
31
|
-
Intlayer là một giải pháp quản lý nội dung và quốc tế hóa được thiết kế để tối ưu hóa cách bạn khai báo, quản lý và cập nhật nội dung trên các ứng dụng của mình. Nó cung cấp các tính năng mạnh mẽ như khai báo nội dung tập trung hoặc phân tán, các tùy chọn quốc tế hóa đa dạng, hỗ trợ Markdown, kết xuất có điều kiện, tích hợp TypeScript/JavaScript/JSON, và nhiều hơn nữa. Dưới đây là tổng quan toàn diện về những gì Intlayer hiện đang cung cấp, cùng với các tính năng dự kiến trong lộ trình phát triển sắp tới.
|
|
32
|
-
|
|
33
|
-
## Mục lục
|
|
34
|
-
|
|
35
|
-
<TOC/>
|
|
36
|
-
|
|
37
|
-
## Các tính năng hiện tại
|
|
38
|
-
|
|
39
|
-
### 1. Khai báo nội dung
|
|
40
|
-
|
|
41
|
-
#### Tập trung hoặc phân tán
|
|
42
|
-
|
|
43
|
-
- **Tập trung**: Khai báo toàn bộ nội dung của bạn trong một tệp lớn duy nhất ở gốc ứng dụng, tương tự như i18next, để bạn có thể quản lý mọi thứ ở một nơi.
|
|
44
|
-
- **Phân tán**: Ngoài ra, bạn có thể chia nội dung thành các tệp riêng biệt ở cấp độ component hoặc tính năng để dễ dàng bảo trì hơn. Điều này giữ nội dung của bạn gần với mã liên quan (component, test, Storybook, v.v.). Việc loại bỏ một component cũng đảm bảo rằng bất kỳ nội dung liên quan nào cũng được xóa, tránh dữ liệu thừa làm lộn xộn codebase của bạn.
|
|
45
|
-
|
|
46
|
-
> Tài nguyên:
|
|
47
|
-
>
|
|
48
|
-
> - [Khai báo nội dung](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/dictionary/content_file.md)
|
|
49
|
-
|
|
50
|
-
### 2. Quốc tế hóa
|
|
51
|
-
|
|
52
|
-
- Hỗ trợ **230 ngôn ngữ và vùng miền** (bao gồm các biến thể khu vực như tiếng Pháp (Pháp), tiếng Anh (Canada), tiếng Anh (Anh), tiếng Bồ Đào Nha (Bồ Đào Nha), v.v.).
|
|
53
|
-
- Dễ dàng quản lý bản dịch cho tất cả các vùng miền này từ một nơi.
|
|
54
|
-
|
|
55
|
-
> Tài nguyên:
|
|
56
|
-
>
|
|
57
|
-
> - [Quốc tế hóa](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/dictionary/translation.md)
|
|
58
|
-
|
|
59
|
-
### 3. Hỗ trợ Markdown
|
|
60
|
-
|
|
61
|
-
- Khai báo nội dung bằng **Markdown**, cho phép bạn tự động định dạng văn bản với các đoạn văn, tiêu đề, liên kết và nhiều hơn nữa.
|
|
62
|
-
- Lý tưởng cho các bài đăng blog, bài viết, trang tài liệu hoặc bất kỳ trường hợp nào cần định dạng văn bản phong phú.
|
|
63
|
-
|
|
64
|
-
> Tài nguyên:
|
|
65
|
-
>
|
|
66
|
-
> - [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/dictionary/markdown.md)
|
|
67
|
-
|
|
68
|
-
### 4. Hỗ trợ tệp bên ngoài
|
|
69
|
-
|
|
70
|
-
- Nhập nội dung từ các tệp bên ngoài dưới dạng văn bản, như TXT, HTML, JSON, YAML hoặc CSV.
|
|
71
|
-
- Sử dụng hàm `file` trong Intlayer để nhúng nội dung tệp bên ngoài vào từ điển, đảm bảo tích hợp liền mạch với Trình chỉnh sửa trực quan Intlayer và CMS.
|
|
72
|
-
- Hỗ trợ cập nhật nội dung động, nghĩa là khi tệp nguồn được chỉnh sửa, nội dung sẽ tự động cập nhật trong Intlayer.
|
|
73
|
-
- Cho phép quản lý nội dung đa ngôn ngữ bằng cách liên kết các tệp Markdown theo ngôn ngữ một cách động.
|
|
74
|
-
|
|
75
|
-
> Tài nguyên:
|
|
76
|
-
>
|
|
77
|
-
> - [Nhúng nội dung tệp](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/dictionary/file.md)
|
|
78
|
-
|
|
79
|
-
### 5. Nội dung động & Lấy hàm
|
|
80
|
-
|
|
81
|
-
Intlayer cung cấp nhiều phương pháp để chèn và quản lý nội dung động, đảm bảo tính linh hoạt và thích ứng trong việc phân phối nội dung. Điều này bao gồm các hàm để chèn nội dung động, kết xuất có điều kiện, liệt kê, lồng nhau và lấy hàm.
|
|
82
|
-
|
|
83
|
-
1. Chèn nội dung động
|
|
84
|
-
|
|
85
|
-
Sử dụng hàm insert để định nghĩa nội dung với các chỗ giữ chỗ ({{name}}, {{age}}, v.v.).
|
|
86
|
-
|
|
87
|
-
Cho phép nội dung dạng mẫu thích ứng dựa trên đầu vào của người dùng, phản hồi API hoặc các nguồn dữ liệu động khác.
|
|
88
|
-
|
|
89
|
-
Hoạt động mượt mà với các cấu hình TypeScript, ESM, CommonJS và JSON.
|
|
90
|
-
|
|
91
|
-
Dễ dàng tích hợp với React Intlayer và Next Intlayer bằng cách sử dụng useIntlayer.
|
|
92
|
-
|
|
93
|
-
2. Kết xuất có điều kiện
|
|
94
|
-
|
|
95
|
-
Định nghĩa nội dung thích ứng dựa trên các điều kiện cụ thể của người dùng, chẳng hạn như ngôn ngữ hoặc trạng thái xác thực.
|
|
96
|
-
|
|
97
|
-
Tùy chỉnh trải nghiệm cá nhân hóa mà không cần sao chép nội dung qua nhiều tệp.
|
|
98
|
-
|
|
99
|
-
3. Liệt kê & Số nhiều
|
|
100
|
-
|
|
101
|
-
Sử dụng hàm enu để định nghĩa các biến thể nội dung dựa trên giá trị số, phạm vi hoặc khóa tùy chỉnh.
|
|
102
|
-
|
|
103
|
-
Đảm bảo tự động chọn cụm từ chính xác dựa trên giá trị đã cho.
|
|
104
|
-
|
|
105
|
-
Hỗ trợ các quy tắc sắp xếp, đảm bảo hành vi dự đoán được.
|
|
106
|
-
|
|
107
|
-
4. Lồng nội dung & Tham chiếu phụ nội dung
|
|
108
|
-
|
|
109
|
-
Sử dụng hàm nest để tham chiếu và tái sử dụng nội dung từ từ điển khác, giảm thiểu sự trùng lặp.
|
|
110
|
-
|
|
111
|
-
Hỗ trợ quản lý nội dung có cấu trúc và phân cấp để dễ bảo trì hơn.
|
|
112
|
-
|
|
113
|
-
5. Lấy nội dung qua hàm
|
|
114
|
-
|
|
115
|
-
Intlayer cho phép khai báo nội dung dưới dạng hàm, hỗ trợ cả việc lấy nội dung đồng bộ và bất đồng bộ.
|
|
116
|
-
|
|
117
|
-
Hàm đồng bộ: Nội dung được tạo động tại thời điểm build.
|
|
118
|
-
|
|
119
|
-
Hàm bất đồng bộ: Lấy dữ liệu từ các nguồn bên ngoài (ví dụ: API, cơ sở dữ liệu) một cách động.
|
|
120
|
-
|
|
121
|
-
Tích hợp: Hoạt động với TypeScript, ESM và CommonJS nhưng không được hỗ trợ trong các tệp JSON hoặc nội dung từ xa.
|
|
122
|
-
|
|
123
|
-
### 6. Định dạng khai báo nội dung
|
|
124
|
-
|
|
125
|
-
Intlayer hỗ trợ **TypeScript** (cũng như JavaScript) và **JSON** để khai báo nội dung.
|
|
126
|
-
|
|
127
|
-
- **TypeScript**:
|
|
128
|
-
- Đảm bảo cấu trúc nội dung của bạn chính xác và không thiếu bản dịch nào.
|
|
129
|
-
- Cung cấp các chế độ xác thực nghiêm ngặt hoặc linh hoạt hơn.
|
|
130
|
-
- Cho phép lấy dữ liệu động từ biến, hàm hoặc API bên ngoài.
|
|
131
|
-
|
|
132
|
-
- **JSON**:
|
|
133
|
-
- Giúp dễ dàng tích hợp với các công cụ bên ngoài (như trình chỉnh sửa trực quan) nhờ định dạng chuẩn hóa.
|
|
134
|
-
|
|
135
|
-
> Tài nguyên:
|
|
136
|
-
>
|
|
137
|
-
> - [Định dạng khai báo nội dung](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/dictionary/content_file.md)
|
|
138
|
-
|
|
139
|
-
### 7. Loại bỏ, tối ưu gói và nhập khẩu động
|
|
140
|
-
|
|
141
|
-
- Intlayer tích hợp các plugin `Babel` và `SWC` để tối ưu gói của bạn và cải thiện hiệu suất. Nó thay thế các import, cho phép chỉ nhập các từ điển được sử dụng vào gói.
|
|
142
|
-
- Bằng cách kích hoạt tùy chọn này, Intlayer cũng cho phép nhập khẩu động nội dung từ điển chỉ dành cho locale hiện tại.
|
|
143
|
-
|
|
144
|
-
> Tài nguyên:
|
|
145
|
-
>
|
|
146
|
-
> - [Cấu hình Build](https://intlayer.org/doc/concept/configuration#build-configuration)
|
|
147
|
-
|
|
148
|
-
## Tích hợp với Frameworks & Môi trường
|
|
149
|
-
|
|
150
|
-
### 1. Next.js
|
|
151
|
-
|
|
152
|
-
#### a. Thành phần Server và Client
|
|
153
|
-
|
|
154
|
-
- Cung cấp **phương pháp quản lý nội dung thống nhất** cho cả thành phần server và client.
|
|
155
|
-
- Cung cấp một context tích hợp sẵn cho các thành phần server, giúp đơn giản hóa việc triển khai so với các giải pháp khác.
|
|
156
|
-
|
|
157
|
-
#### b. Metadata, Sitemaps và robots.txt
|
|
158
|
-
|
|
159
|
-
- Lấy và chèn nội dung động để tạo metadata, sitemap hoặc các file `robots.txt`.
|
|
160
|
-
|
|
161
|
-
#### c. Middleware
|
|
162
|
-
|
|
163
|
-
- Thêm middleware để **chuyển hướng người dùng** đến nội dung dựa trên ngôn ngữ ưu tiên của họ.
|
|
164
|
-
|
|
165
|
-
#### d. Tương thích Turbopack và Webpack
|
|
166
|
-
|
|
167
|
-
- Hoàn toàn tương thích với Turbopack mới của Next.js cũng như Webpack truyền thống.
|
|
168
|
-
|
|
169
|
-
> Tài nguyên:
|
|
170
|
-
>
|
|
171
|
-
> - [Next.js](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_with_nextjs_15.md)
|
|
172
|
-
|
|
173
|
-
### 2. Vite
|
|
174
|
-
|
|
175
|
-
- Tương tự như Next.js, bạn có thể tích hợp Intlayer với Vite và sử dụng **middleware** để chuyển hướng người dùng đến nội dung dựa trên ngôn ngữ ưu tiên của họ.
|
|
176
|
-
|
|
177
|
-
> Tài nguyên:
|
|
178
|
-
>
|
|
179
|
-
> - [Vite](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_with_vite+react.md)
|
|
180
|
-
|
|
181
|
-
### 3. Express
|
|
182
|
-
|
|
183
|
-
- Quản lý nội dung và quốc tế hóa các dịch vụ backend xây dựng trên Express.
|
|
184
|
-
- Cá nhân hóa email, thông báo lỗi, thông báo đẩy và nhiều hơn nữa với văn bản được địa phương hóa.
|
|
185
|
-
|
|
186
|
-
> Tài nguyên:
|
|
187
|
-
>
|
|
188
|
-
> - [Express](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_with_express.md)
|
|
189
|
-
|
|
190
|
-
### 4. React Native
|
|
191
|
-
|
|
192
|
-
- Tích hợp Intlayer với React Native để quản lý nội dung và quốc tế hóa các ứng dụng di động của bạn.
|
|
193
|
-
- Hỗ trợ cả hai nền tảng iOS và Android.
|
|
194
|
-
|
|
195
|
-
> Tài nguyên:
|
|
196
|
-
>
|
|
197
|
-
> - [React Native](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_with_react_native.md)
|
|
198
|
-
|
|
199
|
-
### 5. Lynx
|
|
200
|
-
|
|
201
|
-
- Tích hợp Intlayer với Lynx để quản lý nội dung và quốc tế hóa các ứng dụng di động của bạn.
|
|
202
|
-
- Hỗ trợ cả hai nền tảng iOS và Android.
|
|
203
|
-
|
|
204
|
-
> Tài nguyên:
|
|
205
|
-
>
|
|
206
|
-
> - [Lynx](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_with_lynx.md)
|
|
207
|
-
|
|
208
|
-
### 6. Vue
|
|
209
|
-
|
|
210
|
-
- Tích hợp Intlayer với Vue để quản lý nội dung và quốc tế hóa các ứng dụng Vite / Vue.js của bạn.
|
|
211
|
-
|
|
212
|
-
> Tài nguyên:
|
|
213
|
-
>
|
|
214
|
-
> - [Vue](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_with_vue.md)
|
|
215
|
-
|
|
216
|
-
### 7. Nuxt
|
|
217
|
-
|
|
218
|
-
- Tích hợp Intlayer với Nuxt để quản lý nội dung và quốc tế hóa các ứng dụng Nuxt / Vue.js của bạn.
|
|
219
|
-
- Hỗ trợ cả thành phần server và client.
|
|
220
|
-
- Tích hợp routing và middleware để chuyển hướng người dùng đến nội dung dựa trên ngôn ngữ ưu tiên của họ.
|
|
221
|
-
|
|
222
|
-
> Tài nguyên:
|
|
223
|
-
>
|
|
224
|
-
> - [Nuxt](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_with_nuxt.md)
|
|
225
|
-
|
|
226
|
-
### 8. Preact
|
|
227
|
-
|
|
228
|
-
- Tích hợp Intlayer với Preact để quản lý nội dung và quốc tế hóa các ứng dụng Preact của bạn.
|
|
229
|
-
|
|
230
|
-
> Tài nguyên:
|
|
231
|
-
>
|
|
232
|
-
> - [Preact](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_with_preact.md)
|
|
233
|
-
|
|
234
|
-
## Trình chỉnh sửa trực quan và CMS
|
|
235
|
-
|
|
236
|
-
### 1. Trình chỉnh sửa trực quan cục bộ
|
|
237
|
-
|
|
238
|
-
- Một **trình chỉnh sửa trực quan miễn phí, cục bộ** cho phép bạn chỉnh sửa nội dung ứng dụng bằng cách chọn trực tiếp các phần tử trên trang.
|
|
239
|
-
- Tích hợp các tính năng AI để hỗ trợ:
|
|
240
|
-
- Tạo hoặc sửa bản dịch
|
|
241
|
-
- Kiểm tra cú pháp và chính tả
|
|
242
|
-
- Gợi ý cải tiến
|
|
243
|
-
- Có thể được lưu trữ cục bộ hoặc triển khai trên máy chủ từ xa.
|
|
244
|
-
|
|
245
|
-
> Tài nguyên:
|
|
246
|
-
>
|
|
247
|
-
> - [Trình chỉnh sửa trực quan](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_visual_editor.md)
|
|
248
|
-
|
|
249
|
-
### 2. Intlayer CMS (Từ xa)
|
|
250
|
-
|
|
251
|
-
- Một giải pháp **CMS được lưu trữ** cho phép bạn quản lý nội dung ứng dụng trực tuyến mà không cần can thiệp vào codebase của bạn.
|
|
252
|
-
- Cung cấp các tính năng hỗ trợ AI để khai báo nội dung, quản lý bản dịch và sửa lỗi cú pháp hoặc chính tả.
|
|
253
|
-
- Tương tác với nội dung của bạn thông qua giao diện ứng dụng trực tiếp.
|
|
254
|
-
|
|
255
|
-
> Tài nguyên:
|
|
256
|
-
>
|
|
257
|
-
> - [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_CMS.md)
|
|
258
|
-
|
|
259
|
-
## Tiện ích mở rộng IDE
|
|
260
|
-
|
|
261
|
-
- Các tiện ích mở rộng cho các IDE chính để cung cấp một **giao diện đồ họa** cho việc quản lý bản dịch cục bộ và từ xa.
|
|
262
|
-
- Các tính năng có thể bao gồm tự động tạo các tệp khai báo nội dung cho các thành phần, tích hợp trực tiếp với Intlayer CMS và xác thực theo thời gian thực.
|
|
263
|
-
|
|
264
|
-
## MCP Server
|
|
265
|
-
|
|
266
|
-
- Một **máy chủ MCP** cho phép bạn quản lý nội dung và bản dịch của mình bằng công cụ tích hợp trong IDE của bạn.
|
|
267
|
-
|
|
268
|
-
## Intlayer CLI
|
|
269
|
-
|
|
270
|
-
- **Dịch và tạo tệp**: Thực hiện kiểm tra trên các tệp nội dung của bạn để tạo các bản dịch còn thiếu và xem xét các điểm không nhất quán.
|
|
271
|
-
- **Tương tác từ xa**: Đẩy nội dung cục bộ của bạn lên CMS từ xa hoặc kéo nội dung từ xa để tích hợp vào ứng dụng cục bộ của bạn.
|
|
272
|
-
- **Dịch và xem xét tài liệu**: Dịch và xem xét tài liệu / tệp của bạn, v.v.
|
|
273
|
-
|
|
274
|
-
> Tài nguyên:
|
|
275
|
-
>
|
|
276
|
-
> - [CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/cli/index.md)
|
|
277
|
-
|
|
278
|
-
## Môi trường
|
|
279
|
-
|
|
280
|
-
- Sử dụng **biến môi trường** để cấu hình Intlayer khác nhau giữa môi trường sản xuất, thử nghiệm và cục bộ.
|
|
281
|
-
- Định nghĩa trình chỉnh sửa trực quan hoặc dự án CMS từ xa nào sẽ được nhắm tới tùy thuộc vào môi trường của bạn.
|
|
282
|
-
|
|
283
|
-
## Cập nhật nội dung nóng
|
|
284
|
-
|
|
285
|
-
- Khi sử dụng từ điển từ xa và Intlayer CMS, bạn có thể **cập nhật nội dung ứng dụng của mình ngay lập tức**, mà không cần phải triển khai lại.
|
|
286
|
-
|
|
287
|
-
> Tài nguyên:
|
|
288
|
-
>
|
|
289
|
-
> - [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_CMS.md)
|
|
290
|
-
|
|
291
|
-
## Tính năng sắp ra mắt
|
|
292
|
-
|
|
293
|
-
### 1. Kiểm thử A/B & Cá nhân hóa
|
|
294
|
-
|
|
295
|
-
- **Kiểm thử đa biến**: Kiểm thử các phiên bản khác nhau của một nội dung nhất định để xem phiên bản nào hoạt động tốt nhất (ví dụ: tỷ lệ nhấp cao hơn).
|
|
296
|
-
- **Cá nhân hóa dựa trên dữ liệu**: Hiển thị nội dung khác nhau dựa trên đặc điểm người dùng (giới tính, tuổi, vị trí, v.v.), hoặc các mẫu hành vi khác.
|
|
297
|
-
- **Lặp tự động**: Cho phép AI tự động kiểm thử nhiều phiên bản và chọn ra phiên bản hiệu quả nhất hoặc đề xuất các lựa chọn để quản trị viên phê duyệt.
|
|
298
|
-
|
|
299
|
-
### 2. Phiên bản hóa
|
|
300
|
-
|
|
301
|
-
- Khôi phục các phiên bản trước của nội dung với **phiên bản hóa nội dung**.
|
|
302
|
-
- Theo dõi các thay đổi theo thời gian và hoàn nguyên về trạng thái trước đó nếu cần.
|
|
303
|
-
|
|
304
|
-
### 3. Dịch tự động
|
|
305
|
-
|
|
306
|
-
- Đối với người dùng CMS từ xa, **tạo bản dịch chỉ với một cú nhấp chuột** cho bất kỳ ngôn ngữ được hỗ trợ nào.
|
|
307
|
-
- Hệ thống sẽ tạo bản dịch trong nền và sau đó yêu cầu bạn xác nhận hoặc chỉnh sửa.
|
|
308
|
-
|
|
309
|
-
### 4. Cải tiến SEO
|
|
310
|
-
|
|
311
|
-
- Công cụ để **phân tích từ khóa**, ý định tìm kiếm của người dùng và các xu hướng mới nổi.
|
|
312
|
-
- Gợi ý nội dung cải tiến để xếp hạng tốt hơn, và theo dõi hiệu suất lâu dài.
|
|
313
|
-
|
|
314
|
-
### 5. Tương thích với nhiều Framework hơn
|
|
315
|
-
|
|
316
|
-
- Đang nỗ lực hỗ trợ **Solid, Svelte, Angular**, và nhiều hơn nữa.
|
|
317
|
-
- Mục tiêu làm cho Intlayer tương thích với **bất kỳ ứng dụng nào chạy trên JavaScript**.
|
|
318
|
-
|
|
319
|
-
## Kết luận
|
|
320
|
-
|
|
321
|
-
Intlayer hướng tới trở thành giải pháp tổng thể cho quản lý nội dung và quốc tế hóa. Nó tập trung vào sự linh hoạt (tập trung hoặc phân phối các tệp), hỗ trợ đa ngôn ngữ rộng rãi, tích hợp dễ dàng với các framework và bundler hiện đại, cùng các tính năng mạnh mẽ dựa trên AI. Khi các khả năng mới như thử nghiệm A/B, quản lý phiên bản và dịch tự động trở nên khả dụng, Intlayer sẽ tiếp tục đơn giản hóa quy trình làm việc với nội dung và nâng cao trải nghiệm người dùng trên nhiều nền tảng khác nhau.
|
|
322
|
-
|
|
323
|
-
Hãy theo dõi các phiên bản sắp tới, và đừng ngần ngại khám phá các tính năng hiện có để xem Intlayer có thể giúp bạn tập trung và tối ưu hóa quy trình quản lý nội dung như thế nào ngay hôm nay!
|
|
324
|
-
|
|
325
|
-
---
|
package/docs/zh/roadmap.md
DELETED
|
@@ -1,322 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
createdAt: 2025-03-01
|
|
3
|
-
updatedAt: 2025-06-29
|
|
4
|
-
title: 路线图
|
|
5
|
-
description: 了解 Intlayer 的路线图。查看 Intlayer 已实现和计划实现的所有功能。
|
|
6
|
-
keywords:
|
|
7
|
-
- 路线图
|
|
8
|
-
- Intlayer
|
|
9
|
-
- 国际化
|
|
10
|
-
- CMS
|
|
11
|
-
- 内容管理系统
|
|
12
|
-
- 可视化编辑器
|
|
13
|
-
slugs:
|
|
14
|
-
- doc
|
|
15
|
-
- roadmap
|
|
16
|
-
history:
|
|
17
|
-
- version: 5.5.10
|
|
18
|
-
date: 2025-06-30
|
|
19
|
-
changes: "新增 Preact 和 Nuxt 支持,MCP 服务器,更新 CLI"
|
|
20
|
-
- version: 5.5.10
|
|
21
|
-
date: 2025-06-29
|
|
22
|
-
changes: "初始化历史记录"
|
|
23
|
-
author: aymericzip
|
|
24
|
-
---
|
|
25
|
-
|
|
26
|
-
# Intlayer:功能概览与路线图
|
|
27
|
-
|
|
28
|
-
Intlayer 是一个内容管理和国际化解决方案,旨在简化您在应用程序中声明、管理和更新内容的方式。它提供了强大的功能,例如集中式或分布式内容声明、广泛的国际化选项、Markdown 支持、条件渲染、TypeScript/JavaScript/JSON 集成等。以下是 Intlayer 当前提供的功能的全面概述,以及即将推出的路线图功能。
|
|
29
|
-
|
|
30
|
-
## 目录
|
|
31
|
-
|
|
32
|
-
<TOC/>
|
|
33
|
-
|
|
34
|
-
## 当前功能
|
|
35
|
-
|
|
36
|
-
### 1. 内容声明
|
|
37
|
-
|
|
38
|
-
#### 集中式或分布式
|
|
39
|
-
|
|
40
|
-
- **集中式**:在应用程序的根目录中,将所有内容声明在一个大型文件中,类似于 i18next,这样您可以在一个地方管理所有内容。
|
|
41
|
-
- **分布式**:或者,将您的内容拆分为组件或功能级别的单独文件,以便更好地维护。这使您的内容保持在相关代码(组件、测试、Storybook 等)附近。删除组件时,确保相关内容也被删除,防止残留数据混乱代码库。
|
|
42
|
-
|
|
43
|
-
> 资源:
|
|
44
|
-
>
|
|
45
|
-
> - [内容声明](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/content_file.md)
|
|
46
|
-
|
|
47
|
-
### 2. 国际化
|
|
48
|
-
|
|
49
|
-
- 支持 **230 种语言和地区**(包括区域变体,如法语(法国)、英语(加拿大)、英语(英国)、葡萄牙语(葡萄牙)等)。
|
|
50
|
-
- 轻松从一个地方管理所有这些地区的翻译。
|
|
51
|
-
|
|
52
|
-
> 资源:
|
|
53
|
-
>
|
|
54
|
-
> - [国际化](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/translation.md)
|
|
55
|
-
|
|
56
|
-
### 3. Markdown 支持
|
|
57
|
-
|
|
58
|
-
- 使用 **Markdown** 声明内容,允许您自动格式化文本,包括段落、标题、链接等。
|
|
59
|
-
- 非常适合博客文章、文档页面或任何需要富文本格式的场景。
|
|
60
|
-
|
|
61
|
-
> 资源:
|
|
62
|
-
>
|
|
63
|
-
> - [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/markdown.md)
|
|
64
|
-
|
|
65
|
-
### 4. 外部文件支持
|
|
66
|
-
|
|
67
|
-
- 以文本格式导入外部文件内容,如 TXT、HTML、JSON、YAML 或 CSV。
|
|
68
|
-
- 在 Intlayer 中使用 `file` 函数将外部文件内容嵌入字典,确保与 Intlayer 可视化编辑器和 CMS 的无缝集成。
|
|
69
|
-
- 支持动态内容更新,这意味着当源文件被修改时,内容会在 Intlayer 中自动更新。
|
|
70
|
-
- 通过动态链接特定语言的 Markdown 文件,实现多语言内容管理。
|
|
71
|
-
|
|
72
|
-
> 资源:
|
|
73
|
-
>
|
|
74
|
-
> - [文件内容嵌入](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/file.md)
|
|
75
|
-
|
|
76
|
-
### 5. 动态内容与函数获取
|
|
77
|
-
|
|
78
|
-
Intlayer 提供多种方法来插入和管理动态内容,确保内容交付的灵活性和适应性。这包括动态内容插入、条件渲染、枚举、嵌套和函数获取等功能。
|
|
79
|
-
|
|
80
|
-
1. 动态内容插入
|
|
81
|
-
|
|
82
|
-
使用 insert 函数定义带有占位符的内容(如 {{name}}、{{age}} 等)。
|
|
83
|
-
|
|
84
|
-
支持类似模板的内容,根据用户输入、API响应或其他动态数据源进行适配。
|
|
85
|
-
|
|
86
|
-
与 TypeScript、ESM、CommonJS 以及 JSON 配置无缝兼容。
|
|
87
|
-
|
|
88
|
-
通过 useIntlayer 轻松集成 React Intlayer 和 Next Intlayer。
|
|
89
|
-
|
|
90
|
-
2. 条件渲染
|
|
91
|
-
|
|
92
|
-
定义根据用户特定条件(如语言或认证状态)适配的内容。
|
|
93
|
-
|
|
94
|
-
无需在多个文件中重复内容,即可定制个性化体验。
|
|
95
|
-
|
|
96
|
-
3. 枚举与复数形式
|
|
97
|
-
|
|
98
|
-
使用 enu 函数根据数值、范围或自定义键定义内容变体。
|
|
99
|
-
|
|
100
|
-
确保根据给定值自动选择正确的短语。
|
|
101
|
-
|
|
102
|
-
支持排序规则,确保行为可预测。
|
|
103
|
-
|
|
104
|
-
4. 嵌套与子内容引用
|
|
105
|
-
|
|
106
|
-
使用 nest 函数引用并重用另一个字典中的内容,减少重复。
|
|
107
|
-
|
|
108
|
-
支持结构化和分层的内容管理,提升可维护性。
|
|
109
|
-
|
|
110
|
-
5. 函数获取
|
|
111
|
-
|
|
112
|
-
Intlayer 允许将内容声明为函数,支持同步和异步内容获取。
|
|
113
|
-
|
|
114
|
-
同步函数:内容在构建时 (build time)动态生成。
|
|
115
|
-
|
|
116
|
-
异步函数:动态从外部来源(如 API、数据库)获取数据。
|
|
117
|
-
|
|
118
|
-
集成:支持 TypeScript、ESM 和 CommonJS,但不支持 JSON 或远程内容文件。
|
|
119
|
-
|
|
120
|
-
### 6. 内容声明格式
|
|
121
|
-
|
|
122
|
-
Intlayer 支持使用 **TypeScript**(也支持 JavaScript)和 **JSON** 来声明内容。
|
|
123
|
-
|
|
124
|
-
- **TypeScript**:
|
|
125
|
-
- 确保您的内容结构正确且没有遗漏的翻译。
|
|
126
|
-
- 提供严格或更灵活的验证模式。
|
|
127
|
-
- 允许从变量、函数或外部 API 动态获取数据。
|
|
128
|
-
|
|
129
|
-
- **JSON**:
|
|
130
|
-
- 由于其标准化格式,便于与外部工具(如可视化编辑器)集成。
|
|
131
|
-
|
|
132
|
-
> 资源:
|
|
133
|
-
>
|
|
134
|
-
> - [内容声明格式](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/dictionary/content_file.md)
|
|
135
|
-
|
|
136
|
-
### 7. 清理、包优化和动态导入
|
|
137
|
-
|
|
138
|
-
- Intlayer 集成了 `Babel` 和 `SWC` 插件,以优化您的包并提升性能。它替换导入,只允许将使用到的字典导入到包中。
|
|
139
|
-
- 通过激活该选项,Intlayer 还允许仅动态导入当前语言环境的词典内容。
|
|
140
|
-
|
|
141
|
-
> 资源:
|
|
142
|
-
>
|
|
143
|
-
> - [构建配置](https://intlayer.org/doc/concept/configuration#build-configuration)
|
|
144
|
-
|
|
145
|
-
## 与框架和环境的集成
|
|
146
|
-
|
|
147
|
-
### 1. Next.js
|
|
148
|
-
|
|
149
|
-
#### a. 服务器和客户端组件
|
|
150
|
-
|
|
151
|
-
- 为服务器和客户端组件提供**统一的内容管理方法**。
|
|
152
|
-
- 为服务器组件提供内置上下文,简化实现,相较于其他解决方案更为方便。
|
|
153
|
-
|
|
154
|
-
#### b. 元数据、站点地图和 robots.txt
|
|
155
|
-
|
|
156
|
-
- 动态获取并注入内容,以生成元数据、站点地图或 `robots.txt` 文件。
|
|
157
|
-
|
|
158
|
-
#### c. 中间件
|
|
159
|
-
|
|
160
|
-
- 添加中间件以根据用户的首选语言**重定向用户**到相应内容。
|
|
161
|
-
|
|
162
|
-
#### d. Turbopack 和 Webpack 兼容性
|
|
163
|
-
|
|
164
|
-
- 完全兼容新的 Next.js Turbopack 以及传统的 Webpack。
|
|
165
|
-
|
|
166
|
-
> 资源:
|
|
167
|
-
>
|
|
168
|
-
> - [Next.js](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_with_nextjs_15.md)
|
|
169
|
-
|
|
170
|
-
### 2. Vite
|
|
171
|
-
|
|
172
|
-
- 类似于 Next.js,您可以将 Intlayer 集成到 Vite 中,并使用 **中间件** 根据用户的首选语言重定向内容。
|
|
173
|
-
|
|
174
|
-
> 资源:
|
|
175
|
-
>
|
|
176
|
-
> - [Vite](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_with_vite+react.md)
|
|
177
|
-
|
|
178
|
-
### 3. Express
|
|
179
|
-
|
|
180
|
-
- 管理内容并国际化基于 Express 构建的后端服务。
|
|
181
|
-
- 使用本地化文本个性化电子邮件、错误消息、推送通知等。
|
|
182
|
-
|
|
183
|
-
> 资源:
|
|
184
|
-
>
|
|
185
|
-
> - [Express](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_with_express.md)
|
|
186
|
-
|
|
187
|
-
### 4. React Native
|
|
188
|
-
|
|
189
|
-
- 将 Intlayer 集成到 React Native 中,以管理内容并实现移动应用的国际化。
|
|
190
|
-
- 支持 iOS 和 Android 平台。
|
|
191
|
-
|
|
192
|
-
> 资源:
|
|
193
|
-
>
|
|
194
|
-
> - [React Native](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_with_react_native.md)
|
|
195
|
-
|
|
196
|
-
### 5. Lynx
|
|
197
|
-
|
|
198
|
-
- 将 Intlayer 集成到 Lynx 中,以管理内容并实现移动应用的国际化。
|
|
199
|
-
- 支持 iOS 和 Android 平台。
|
|
200
|
-
|
|
201
|
-
> 资源:
|
|
202
|
-
>
|
|
203
|
-
> - [Lynx](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_with_lynx.md)
|
|
204
|
-
|
|
205
|
-
### 6. Vue
|
|
206
|
-
|
|
207
|
-
- 将 Intlayer 集成到 Vue 中,以管理内容并实现 Vite / Vue.js 应用的国际化。
|
|
208
|
-
|
|
209
|
-
> 资源:
|
|
210
|
-
>
|
|
211
|
-
> - [Vue](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_with_vue.md)
|
|
212
|
-
|
|
213
|
-
### 7. Nuxt
|
|
214
|
-
|
|
215
|
-
- 将 Intlayer 集成到 Nuxt 中,以管理内容并实现 Nuxt / Vue.js 应用程序的国际化。
|
|
216
|
-
- 支持服务器端和客户端组件。
|
|
217
|
-
- 集成路由和中间件,根据用户的首选语言重定向到相应内容。
|
|
218
|
-
|
|
219
|
-
> 资源:
|
|
220
|
-
>
|
|
221
|
-
> - [Nuxt](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_with_nuxt.md)
|
|
222
|
-
|
|
223
|
-
### 8. Preact
|
|
224
|
-
|
|
225
|
-
- 将 Intlayer 集成到 Preact 中,以管理内容并实现 Preact 应用程序的国际化。
|
|
226
|
-
|
|
227
|
-
> 资源:
|
|
228
|
-
>
|
|
229
|
-
> - [Preact](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_with_preact.md)
|
|
230
|
-
|
|
231
|
-
## 可视化编辑器和 CMS
|
|
232
|
-
|
|
233
|
-
### 1. 本地可视化编辑器
|
|
234
|
-
|
|
235
|
-
- 一个**免费的本地可视化编辑器**,允许您通过直接选择页面上的元素来编辑应用程序内容。
|
|
236
|
-
- 集成了 AI 功能以帮助:
|
|
237
|
-
- 生成或修正翻译
|
|
238
|
-
- 检查语法和拼写
|
|
239
|
-
- 提出改进建议
|
|
240
|
-
- 可以本地托管,也可以部署在远程服务器上。
|
|
241
|
-
|
|
242
|
-
> 资源:
|
|
243
|
-
>
|
|
244
|
-
> - [可视化编辑器](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_visual_editor.md)
|
|
245
|
-
|
|
246
|
-
### 2. Intlayer CMS(远程)
|
|
247
|
-
|
|
248
|
-
- 一个**托管的 CMS** 解决方案,允许您在线管理应用程序内容,无需触及代码库。
|
|
249
|
-
- 提供 AI 辅助功能,用于声明内容、管理翻译以及修正语法或拼写错误。
|
|
250
|
-
- 通过您的实时应用界面与内容进行交互。
|
|
251
|
-
|
|
252
|
-
> 资源:
|
|
253
|
-
>
|
|
254
|
-
> - [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md)
|
|
255
|
-
|
|
256
|
-
## IDE 扩展
|
|
257
|
-
|
|
258
|
-
- 为主流 IDE 提供的扩展,提供用于管理本地和远程翻译的**图形界面**。
|
|
259
|
-
- 功能可能包括自动生成组件内容声明文件、与 Intlayer CMS 的直接集成以及实时校验。
|
|
260
|
-
|
|
261
|
-
## MCP 服务器
|
|
262
|
-
|
|
263
|
-
- 一个**MCP 服务器**,允许你使用集成在 IDE 中的工具来管理内容和翻译。
|
|
264
|
-
|
|
265
|
-
## Intlayer CLI
|
|
266
|
-
|
|
267
|
-
- **翻译和文件生成**:对你的内容文件进行审计,生成缺失的翻译并检查不一致之处。
|
|
268
|
-
- **远程交互**:将本地内容推送到远程 CMS,或拉取远程内容以集成到本地应用中。
|
|
269
|
-
- **文档翻译与审核**:翻译并审核您的文档/文件等。
|
|
270
|
-
|
|
271
|
-
> 资源:
|
|
272
|
-
>
|
|
273
|
-
> - [CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/index.md)
|
|
274
|
-
|
|
275
|
-
## 环境配置
|
|
276
|
-
|
|
277
|
-
- 使用 **环境变量** 来针对生产、测试和本地环境不同地配置 Intlayer。
|
|
278
|
-
- 根据您的环境定义要使用的可视化编辑器或远程 CMS 项目。
|
|
279
|
-
|
|
280
|
-
## 热内容更新
|
|
281
|
-
|
|
282
|
-
- 使用远程词典和 Intlayer CMS 时,您可以 **实时更新应用内容**,无需重新部署。
|
|
283
|
-
|
|
284
|
-
> 资源:
|
|
285
|
-
>
|
|
286
|
-
> - [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/intlayer_CMS.md)
|
|
287
|
-
|
|
288
|
-
## 即将推出的功能
|
|
289
|
-
|
|
290
|
-
### 1. A/B 测试与个性化
|
|
291
|
-
|
|
292
|
-
- **多变量测试**:测试同一内容的不同版本,以确定哪个表现最佳(例如,点击率更高)。
|
|
293
|
-
- **数据驱动的个性化**:根据用户的人口统计信息(性别、年龄、位置等)或其他行为模式显示不同内容。
|
|
294
|
-
- **自动迭代**:允许 AI 自动测试多个版本,选择表现最佳的版本或推荐选项供管理员审批。
|
|
295
|
-
|
|
296
|
-
### 2. 版本控制
|
|
297
|
-
|
|
298
|
-
- 通过**内容版本控制**恢复内容的先前版本。
|
|
299
|
-
- 跟踪内容随时间的变化,并在需要时恢复到早期状态。
|
|
300
|
-
|
|
301
|
-
### 3. 自动翻译
|
|
302
|
-
|
|
303
|
-
- 对于远程 CMS 用户,支持**一键生成任何支持语言的翻译**。
|
|
304
|
-
- 系统将在后台生成翻译,然后提示您进行验证或编辑。
|
|
305
|
-
|
|
306
|
-
### 4. SEO 增强
|
|
307
|
-
|
|
308
|
-
- 提供工具来**分析关键词**、用户搜索意图和新兴趋势。
|
|
309
|
-
- 建议改进内容以获得更好的排名,并跟踪长期表现。
|
|
310
|
-
|
|
311
|
-
### 5. 与更多框架的兼容性
|
|
312
|
-
|
|
313
|
-
- 正在努力支持**Solid、Svelte、Angular**等框架。
|
|
314
|
-
- 目标是使 Intlayer 兼容**任何基于 JavaScript 的应用程序**。
|
|
315
|
-
|
|
316
|
-
## 结论
|
|
317
|
-
|
|
318
|
-
Intlayer 旨在成为内容管理和国际化的一站式解决方案。它专注于灵活性(集中式或分布式文件)、广泛的语言支持、与现代框架和打包工具的轻松集成,以及强大的 AI 驱动功能。随着 A/B 测试、版本控制和自动翻译等新功能的推出,Intlayer 将继续简化内容工作流程,提升不同平台上的用户体验。
|
|
319
|
-
|
|
320
|
-
敬请关注即将发布的版本,欢迎随时探索现有功能,了解 Intlayer 如何帮助您集中管理和优化内容管理流程!
|
|
321
|
-
|
|
322
|
-
---
|