@intlayer/docs 9.0.0-canary.8 → 9.0.0

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.
Files changed (1152) hide show
  1. package/blog/ar/internationalization_and_SEO.md +6 -0
  2. package/blog/ar/intlayer_with_i18next.md +8 -4
  3. package/blog/ar/intlayer_with_next-i18next.md +8 -4
  4. package/blog/ar/intlayer_with_next-intl.md +8 -4
  5. package/blog/ar/intlayer_with_react-i18next.md +8 -4
  6. package/blog/ar/intlayer_with_react-intl.md +8 -4
  7. package/blog/ar/intlayer_with_vue-i18n.md +8 -4
  8. package/blog/ar/nextjs-multilingual-seo-comparison.md +6 -0
  9. package/blog/de/internationalization_and_SEO.md +6 -0
  10. package/blog/de/intlayer_with_i18next.md +8 -4
  11. package/blog/de/intlayer_with_next-i18next.md +8 -4
  12. package/blog/de/intlayer_with_next-intl.md +8 -4
  13. package/blog/de/intlayer_with_react-i18next.md +8 -4
  14. package/blog/de/intlayer_with_react-intl.md +8 -4
  15. package/blog/de/intlayer_with_vue-i18n.md +8 -4
  16. package/blog/de/nextjs-multilingual-seo-comparison.md +6 -0
  17. package/blog/en/internationalization_and_SEO.md +6 -0
  18. package/blog/en/intlayer_with_i18next.md +8 -4
  19. package/blog/en/intlayer_with_next-i18next.md +8 -4
  20. package/blog/en/intlayer_with_next-intl.md +8 -4
  21. package/blog/en/intlayer_with_react-i18next.md +8 -4
  22. package/blog/en/intlayer_with_react-intl.md +8 -4
  23. package/blog/en/intlayer_with_vue-i18n.md +8 -4
  24. package/blog/en/nextjs-multilingual-seo-comparison.md +6 -0
  25. package/blog/en/rag_powered_documentation_assistant.md +6 -0
  26. package/blog/en-GB/internationalization_and_SEO.md +6 -0
  27. package/blog/en-GB/intlayer_with_i18next.md +8 -4
  28. package/blog/en-GB/intlayer_with_next-i18next.md +8 -4
  29. package/blog/en-GB/intlayer_with_next-intl.md +8 -4
  30. package/blog/en-GB/intlayer_with_react-i18next.md +8 -4
  31. package/blog/en-GB/intlayer_with_react-intl.md +8 -4
  32. package/blog/en-GB/intlayer_with_vue-i18n.md +8 -4
  33. package/blog/en-GB/nextjs-multilingual-seo-comparison.md +6 -0
  34. package/blog/es/internationalization_and_SEO.md +6 -0
  35. package/blog/es/intlayer_with_i18next.md +8 -4
  36. package/blog/es/intlayer_with_next-i18next.md +8 -4
  37. package/blog/es/intlayer_with_next-intl.md +8 -4
  38. package/blog/es/intlayer_with_react-i18next.md +8 -4
  39. package/blog/es/intlayer_with_react-intl.md +8 -4
  40. package/blog/es/intlayer_with_vue-i18n.md +8 -4
  41. package/blog/es/nextjs-multilingual-seo-comparison.md +6 -0
  42. package/blog/fr/internationalization_and_SEO.md +6 -0
  43. package/blog/fr/intlayer_with_i18next.md +8 -4
  44. package/blog/fr/intlayer_with_next-i18next.md +8 -4
  45. package/blog/fr/intlayer_with_next-intl.md +8 -4
  46. package/blog/fr/intlayer_with_react-i18next.md +8 -4
  47. package/blog/fr/intlayer_with_react-intl.md +8 -4
  48. package/blog/fr/intlayer_with_vue-i18n.md +8 -4
  49. package/blog/fr/nextjs-multilingual-seo-comparison.md +6 -0
  50. package/blog/hi/internationalization_and_SEO.md +6 -0
  51. package/blog/hi/intlayer_with_i18next.md +8 -4
  52. package/blog/hi/intlayer_with_next-i18next.md +8 -4
  53. package/blog/hi/intlayer_with_next-intl.md +8 -4
  54. package/blog/hi/intlayer_with_react-i18next.md +8 -4
  55. package/blog/hi/intlayer_with_react-intl.md +8 -4
  56. package/blog/hi/intlayer_with_vue-i18n.md +8 -4
  57. package/blog/hi/nextjs-multilingual-seo-comparison.md +6 -0
  58. package/blog/id/internationalization_and_SEO.md +6 -0
  59. package/blog/id/intlayer_with_i18next.md +8 -4
  60. package/blog/id/intlayer_with_next-i18next.md +8 -4
  61. package/blog/id/intlayer_with_next-intl.md +8 -4
  62. package/blog/id/intlayer_with_react-i18next.md +8 -4
  63. package/blog/id/intlayer_with_react-intl.md +8 -4
  64. package/blog/id/intlayer_with_vue-i18n.md +8 -4
  65. package/blog/id/nextjs-multilingual-seo-comparison.md +6 -0
  66. package/blog/it/internationalization_and_SEO.md +6 -0
  67. package/blog/it/intlayer_with_i18next.md +8 -4
  68. package/blog/it/intlayer_with_next-i18next.md +8 -4
  69. package/blog/it/intlayer_with_next-intl.md +8 -4
  70. package/blog/it/intlayer_with_react-i18next.md +8 -4
  71. package/blog/it/intlayer_with_react-intl.md +8 -4
  72. package/blog/it/intlayer_with_vue-i18n.md +8 -4
  73. package/blog/it/nextjs-multilingual-seo-comparison.md +6 -0
  74. package/blog/ja/internationalization_and_SEO.md +6 -0
  75. package/blog/ja/intlayer_with_i18next.md +8 -4
  76. package/blog/ja/intlayer_with_next-i18next.md +8 -4
  77. package/blog/ja/intlayer_with_next-intl.md +8 -4
  78. package/blog/ja/intlayer_with_react-i18next.md +8 -4
  79. package/blog/ja/intlayer_with_react-intl.md +8 -4
  80. package/blog/ja/intlayer_with_vue-i18n.md +8 -4
  81. package/blog/ja/nextjs-multilingual-seo-comparison.md +6 -0
  82. package/blog/ko/internationalization_and_SEO.md +6 -0
  83. package/blog/ko/intlayer_with_i18next.md +8 -4
  84. package/blog/ko/intlayer_with_next-i18next.md +8 -4
  85. package/blog/ko/intlayer_with_next-intl.md +8 -4
  86. package/blog/ko/intlayer_with_react-i18next.md +8 -4
  87. package/blog/ko/intlayer_with_react-intl.md +8 -4
  88. package/blog/ko/intlayer_with_vue-i18n.md +8 -4
  89. package/blog/ko/nextjs-multilingual-seo-comparison.md +6 -0
  90. package/blog/pl/internationalization_and_SEO.md +6 -0
  91. package/blog/pl/intlayer_with_i18next.md +8 -4
  92. package/blog/pl/intlayer_with_next-i18next.md +8 -4
  93. package/blog/pl/intlayer_with_next-intl.md +8 -4
  94. package/blog/pl/intlayer_with_react-i18next.md +8 -4
  95. package/blog/pl/intlayer_with_react-intl.md +8 -4
  96. package/blog/pl/intlayer_with_vue-i18n.md +8 -4
  97. package/blog/pl/nextjs-multilingual-seo-comparison.md +6 -0
  98. package/blog/pt/internationalization_and_SEO.md +6 -0
  99. package/blog/pt/intlayer_with_i18next.md +8 -4
  100. package/blog/pt/intlayer_with_next-i18next.md +8 -4
  101. package/blog/pt/intlayer_with_next-intl.md +8 -4
  102. package/blog/pt/intlayer_with_react-i18next.md +8 -4
  103. package/blog/pt/intlayer_with_react-intl.md +8 -4
  104. package/blog/pt/intlayer_with_vue-i18n.md +8 -4
  105. package/blog/pt/nextjs-multilingual-seo-comparison.md +6 -0
  106. package/blog/ru/internationalization_and_SEO.md +6 -0
  107. package/blog/ru/intlayer_with_i18next.md +8 -4
  108. package/blog/ru/intlayer_with_next-i18next.md +8 -4
  109. package/blog/ru/intlayer_with_next-intl.md +8 -4
  110. package/blog/ru/intlayer_with_react-i18next.md +8 -4
  111. package/blog/ru/intlayer_with_react-intl.md +8 -4
  112. package/blog/ru/intlayer_with_vue-i18n.md +8 -4
  113. package/blog/ru/nextjs-multilingual-seo-comparison.md +6 -0
  114. package/blog/tr/internationalization_and_SEO.md +6 -0
  115. package/blog/tr/intlayer_with_i18next.md +8 -4
  116. package/blog/tr/intlayer_with_next-i18next.md +8 -4
  117. package/blog/tr/intlayer_with_next-intl.md +8 -4
  118. package/blog/tr/intlayer_with_react-i18next.md +8 -4
  119. package/blog/tr/intlayer_with_react-intl.md +8 -4
  120. package/blog/tr/intlayer_with_vue-i18n.md +8 -4
  121. package/blog/tr/nextjs-multilingual-seo-comparison.md +6 -0
  122. package/blog/uk/internationalization_and_SEO.md +6 -0
  123. package/blog/uk/intlayer_with_i18next.md +8 -4
  124. package/blog/uk/intlayer_with_next-i18next.md +8 -4
  125. package/blog/uk/intlayer_with_next-intl.md +8 -4
  126. package/blog/uk/intlayer_with_react-i18next.md +8 -4
  127. package/blog/uk/intlayer_with_react-intl.md +8 -4
  128. package/blog/uk/intlayer_with_vue-i18n.md +8 -4
  129. package/blog/uk/nextjs-multilingual-seo-comparison.md +6 -0
  130. package/blog/vi/internationalization_and_SEO.md +6 -0
  131. package/blog/vi/intlayer_with_i18next.md +8 -4
  132. package/blog/vi/intlayer_with_next-i18next.md +8 -4
  133. package/blog/vi/intlayer_with_next-intl.md +8 -4
  134. package/blog/vi/intlayer_with_react-i18next.md +8 -4
  135. package/blog/vi/intlayer_with_react-intl.md +8 -4
  136. package/blog/vi/intlayer_with_vue-i18n.md +8 -4
  137. package/blog/vi/nextjs-multilingual-seo-comparison.md +6 -0
  138. package/blog/zh/internationalization_and_SEO.md +6 -0
  139. package/blog/zh/nextjs-multilingual-seo-comparison.md +6 -0
  140. package/dist/cjs/authors.cjs.map +1 -1
  141. package/dist/cjs/blog.cjs.map +1 -1
  142. package/dist/cjs/common.cjs +2 -1
  143. package/dist/cjs/common.cjs.map +1 -1
  144. package/dist/cjs/doc.cjs.map +1 -1
  145. package/dist/cjs/frequentQuestions.cjs.map +1 -1
  146. package/dist/cjs/generated/blog.entry.cjs +0 -1
  147. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  148. package/dist/cjs/generated/docs.entry.cjs +60 -1
  149. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  150. package/dist/cjs/generated/frequentQuestions.entry.cjs +0 -1
  151. package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
  152. package/dist/cjs/generated/legal.entry.cjs +0 -1
  153. package/dist/cjs/generated/legal.entry.cjs.map +1 -1
  154. package/dist/cjs/legal.cjs.map +1 -1
  155. package/dist/esm/authors.mjs.map +1 -1
  156. package/dist/esm/blog.mjs.map +1 -1
  157. package/dist/esm/common.mjs +2 -1
  158. package/dist/esm/common.mjs.map +1 -1
  159. package/dist/esm/doc.mjs.map +1 -1
  160. package/dist/esm/frequentQuestions.mjs.map +1 -1
  161. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  162. package/dist/esm/generated/docs.entry.mjs +60 -0
  163. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  164. package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
  165. package/dist/esm/generated/legal.entry.mjs.map +1 -1
  166. package/dist/esm/legal.mjs.map +1 -1
  167. package/dist/types/authors.d.ts +16 -8
  168. package/dist/types/authors.d.ts.map +1 -1
  169. package/dist/types/blog.d.ts +0 -1
  170. package/dist/types/blog.d.ts.map +1 -1
  171. package/dist/types/common.d.ts +0 -1
  172. package/dist/types/common.d.ts.map +1 -1
  173. package/dist/types/doc.d.ts +0 -1
  174. package/dist/types/doc.d.ts.map +1 -1
  175. package/dist/types/frequentQuestions.d.ts +0 -1
  176. package/dist/types/frequentQuestions.d.ts.map +1 -1
  177. package/dist/types/generated/blog.entry.d.ts +0 -1
  178. package/dist/types/generated/blog.entry.d.ts.map +1 -1
  179. package/dist/types/generated/docs.entry.d.ts +3 -1
  180. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  181. package/dist/types/generated/frequentQuestions.entry.d.ts +0 -1
  182. package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
  183. package/dist/types/generated/legal.entry.d.ts +0 -1
  184. package/dist/types/generated/legal.entry.d.ts.map +1 -1
  185. package/dist/types/legal.d.ts +0 -1
  186. package/dist/types/legal.d.ts.map +1 -1
  187. package/docs/ar/bundle_optimization.md +16 -0
  188. package/docs/ar/cli/index.md +1 -1
  189. package/docs/ar/cli/scan.md +2 -2
  190. package/docs/ar/configuration.md +42 -1
  191. package/docs/ar/how_works_intlayer.md +2 -2
  192. package/docs/ar/intlayer_CMS.md +14 -122
  193. package/docs/ar/intlayer_with_adonisjs.md +8 -4
  194. package/docs/ar/intlayer_with_analog.md +8 -4
  195. package/docs/ar/intlayer_with_angular_19.md +8 -4
  196. package/docs/ar/intlayer_with_angular_21.md +8 -4
  197. package/docs/ar/intlayer_with_astro_lit.md +11 -7
  198. package/docs/ar/intlayer_with_astro_preact.md +8 -4
  199. package/docs/ar/intlayer_with_astro_react.md +8 -4
  200. package/docs/ar/intlayer_with_astro_solid.md +8 -4
  201. package/docs/ar/intlayer_with_astro_svelte.md +8 -4
  202. package/docs/ar/intlayer_with_astro_vanilla.md +8 -4
  203. package/docs/ar/intlayer_with_astro_vue.md +8 -4
  204. package/docs/ar/intlayer_with_create_react_app.md +8 -4
  205. package/docs/ar/intlayer_with_express.md +8 -4
  206. package/docs/ar/intlayer_with_fastify.md +8 -4
  207. package/docs/ar/intlayer_with_hono.md +8 -4
  208. package/docs/ar/intlayer_with_lynx+react.md +8 -4
  209. package/docs/ar/intlayer_with_nestjs.md +8 -4
  210. package/docs/ar/intlayer_with_next-i18next.md +8 -4
  211. package/docs/ar/intlayer_with_nextjs_14.md +8 -4
  212. package/docs/ar/intlayer_with_nextjs_15.md +10 -8
  213. package/docs/ar/intlayer_with_nextjs_16.md +10 -8
  214. package/docs/ar/intlayer_with_nextjs_compiler.md +9 -7
  215. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +10 -8
  216. package/docs/ar/intlayer_with_nextjs_page_router.md +8 -4
  217. package/docs/ar/intlayer_with_nuxt.md +9 -5
  218. package/docs/ar/intlayer_with_react_native+expo.md +8 -4
  219. package/docs/ar/intlayer_with_react_router_v7.md +9 -5
  220. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +9 -5
  221. package/docs/ar/intlayer_with_svelte_kit.md +8 -4
  222. package/docs/ar/intlayer_with_tanstack+solid.md +9 -5
  223. package/docs/ar/intlayer_with_tanstack.md +10 -7
  224. package/docs/ar/intlayer_with_vite+lit.md +8 -4
  225. package/docs/ar/intlayer_with_vite+preact.md +9 -5
  226. package/docs/ar/intlayer_with_vite+react.md +9 -5
  227. package/docs/ar/intlayer_with_vite+react_compiler.md +9 -5
  228. package/docs/ar/intlayer_with_vite+solid.md +9 -5
  229. package/docs/ar/intlayer_with_vite+svelte.md +8 -4
  230. package/docs/ar/intlayer_with_vite+vanilla.md +8 -4
  231. package/docs/ar/intlayer_with_vite+vue.md +9 -5
  232. package/docs/ar/live-sync.md +174 -0
  233. package/docs/ar/migration_from_i18next_to_intlayer.md +8 -4
  234. package/docs/ar/migration_from_next-i18next_to_intlayer.md +8 -4
  235. package/docs/ar/migration_from_next-intl_to_intlayer.md +9 -7
  236. package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  237. package/docs/ar/migration_from_react-i18next_to_intlayer.md +9 -7
  238. package/docs/ar/migration_from_vue-i18n_to_intlayer.md +8 -4
  239. package/docs/ar/releases/v9.md +128 -33
  240. package/docs/ar/self_hosting.md +350 -0
  241. package/docs/bn/bundle_optimization.md +16 -0
  242. package/docs/bn/cli/index.md +1 -1
  243. package/docs/bn/cli/scan.md +2 -2
  244. package/docs/bn/configuration.md +45 -1
  245. package/docs/bn/intlayer_CMS.md +570 -0
  246. package/docs/bn/intlayer_with_angular_21.md +8 -4
  247. package/docs/bn/intlayer_with_fastify.md +8 -4
  248. package/docs/bn/intlayer_with_hono.md +8 -4
  249. package/docs/bn/intlayer_with_vite+lit.md +8 -4
  250. package/docs/bn/intlayer_with_vite+vanilla.md +8 -4
  251. package/docs/bn/releases/v9.md +349 -0
  252. package/docs/cs/bundle_optimization.md +16 -0
  253. package/docs/cs/cli/index.md +1 -1
  254. package/docs/cs/cli/scan.md +2 -2
  255. package/docs/cs/configuration.md +45 -1
  256. package/docs/cs/intlayer_with_angular_21.md +8 -4
  257. package/docs/cs/intlayer_with_fastify.md +8 -4
  258. package/docs/cs/intlayer_with_hono.md +8 -4
  259. package/docs/cs/intlayer_with_vite+lit.md +8 -4
  260. package/docs/cs/intlayer_with_vite+vanilla.md +8 -4
  261. package/docs/cs/releases/v9.md +349 -0
  262. package/docs/de/bundle_optimization.md +16 -0
  263. package/docs/de/cli/index.md +1 -1
  264. package/docs/de/cli/scan.md +2 -2
  265. package/docs/de/configuration.md +42 -1
  266. package/docs/de/how_works_intlayer.md +2 -2
  267. package/docs/de/intlayer_CMS.md +86 -100
  268. package/docs/de/intlayer_with_adonisjs.md +8 -4
  269. package/docs/de/intlayer_with_analog.md +8 -4
  270. package/docs/de/intlayer_with_angular_19.md +8 -4
  271. package/docs/de/intlayer_with_angular_21.md +8 -4
  272. package/docs/de/intlayer_with_astro_lit.md +11 -7
  273. package/docs/de/intlayer_with_astro_preact.md +8 -4
  274. package/docs/de/intlayer_with_astro_react.md +8 -4
  275. package/docs/de/intlayer_with_astro_solid.md +8 -4
  276. package/docs/de/intlayer_with_astro_svelte.md +8 -4
  277. package/docs/de/intlayer_with_astro_vanilla.md +8 -4
  278. package/docs/de/intlayer_with_astro_vue.md +8 -4
  279. package/docs/de/intlayer_with_create_react_app.md +8 -4
  280. package/docs/de/intlayer_with_express.md +8 -4
  281. package/docs/de/intlayer_with_fastify.md +8 -4
  282. package/docs/de/intlayer_with_hono.md +8 -4
  283. package/docs/de/intlayer_with_lynx+react.md +8 -4
  284. package/docs/de/intlayer_with_nestjs.md +8 -4
  285. package/docs/de/intlayer_with_next-i18next.md +8 -4
  286. package/docs/de/intlayer_with_nextjs_14.md +8 -4
  287. package/docs/de/intlayer_with_nextjs_15.md +10 -8
  288. package/docs/de/intlayer_with_nextjs_16.md +10 -8
  289. package/docs/de/intlayer_with_nextjs_no_locale_path.md +10 -8
  290. package/docs/de/intlayer_with_nextjs_page_router.md +8 -4
  291. package/docs/de/intlayer_with_nuxt.md +9 -5
  292. package/docs/de/intlayer_with_react_native+expo.md +8 -4
  293. package/docs/de/intlayer_with_react_router_v7.md +9 -5
  294. package/docs/de/intlayer_with_svelte_kit.md +8 -4
  295. package/docs/de/intlayer_with_tanstack+solid.md +9 -5
  296. package/docs/de/intlayer_with_tanstack.md +10 -7
  297. package/docs/de/intlayer_with_vite+lit.md +8 -4
  298. package/docs/de/intlayer_with_vite+preact.md +9 -5
  299. package/docs/de/intlayer_with_vite+react.md +9 -5
  300. package/docs/de/intlayer_with_vite+react_compiler.md +9 -5
  301. package/docs/de/intlayer_with_vite+solid.md +9 -5
  302. package/docs/de/intlayer_with_vite+vanilla.md +8 -4
  303. package/docs/de/intlayer_with_vite+vue.md +9 -5
  304. package/docs/de/live-sync.md +174 -0
  305. package/docs/de/migration_from_i18next_to_intlayer.md +8 -4
  306. package/docs/de/migration_from_next-i18next_to_intlayer.md +8 -4
  307. package/docs/de/migration_from_next-intl_to_intlayer.md +9 -7
  308. package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  309. package/docs/de/migration_from_react-i18next_to_intlayer.md +9 -7
  310. package/docs/de/migration_from_vue-i18n_to_intlayer.md +8 -4
  311. package/docs/de/releases/v9.md +131 -33
  312. package/docs/de/self_hosting.md +350 -0
  313. package/docs/en/analytics.md +222 -0
  314. package/docs/en/bundle_optimization.md +16 -0
  315. package/docs/en/cli/index.md +1 -1
  316. package/docs/en/cli/scan.md +2 -2
  317. package/docs/en/configuration.md +42 -1
  318. package/docs/en/how_works_intlayer.md +2 -2
  319. package/docs/en/intlayer_CMS.md +143 -107
  320. package/docs/en/intlayer_with_adonisjs.md +8 -4
  321. package/docs/en/intlayer_with_analog.md +8 -4
  322. package/docs/en/intlayer_with_angular_19.md +8 -4
  323. package/docs/en/intlayer_with_angular_21.md +8 -4
  324. package/docs/en/intlayer_with_astro.md +8 -4
  325. package/docs/en/intlayer_with_astro_lit.md +11 -7
  326. package/docs/en/intlayer_with_astro_preact.md +8 -4
  327. package/docs/en/intlayer_with_astro_react.md +8 -4
  328. package/docs/en/intlayer_with_astro_solid.md +8 -4
  329. package/docs/en/intlayer_with_astro_svelte.md +8 -4
  330. package/docs/en/intlayer_with_astro_vanilla.md +8 -4
  331. package/docs/en/intlayer_with_astro_vue.md +8 -4
  332. package/docs/en/intlayer_with_create_react_app.md +8 -4
  333. package/docs/en/intlayer_with_express.md +8 -4
  334. package/docs/en/intlayer_with_fastify.md +8 -4
  335. package/docs/en/intlayer_with_hono.md +8 -4
  336. package/docs/en/intlayer_with_lynx+react.md +8 -4
  337. package/docs/en/intlayer_with_nestjs.md +8 -4
  338. package/docs/en/intlayer_with_next-i18next.md +8 -4
  339. package/docs/en/intlayer_with_nextjs_14.md +8 -4
  340. package/docs/en/intlayer_with_nextjs_15.md +9 -7
  341. package/docs/en/intlayer_with_nextjs_16.md +10 -8
  342. package/docs/en/intlayer_with_nextjs_compiler.md +10 -8
  343. package/docs/en/intlayer_with_nextjs_no_locale_path.md +10 -8
  344. package/docs/en/intlayer_with_nextjs_page_router.md +8 -4
  345. package/docs/en/intlayer_with_nuxt.md +9 -5
  346. package/docs/en/intlayer_with_react_native+expo.md +8 -4
  347. package/docs/en/intlayer_with_react_router_v7.md +9 -5
  348. package/docs/en/intlayer_with_svelte_kit.md +8 -4
  349. package/docs/en/intlayer_with_tanstack+solid.md +9 -5
  350. package/docs/en/intlayer_with_tanstack.md +10 -7
  351. package/docs/en/intlayer_with_vite+lit.md +8 -4
  352. package/docs/en/intlayer_with_vite+preact.md +9 -5
  353. package/docs/en/intlayer_with_vite+react.md +9 -5
  354. package/docs/en/intlayer_with_vite+react_compiler.md +9 -5
  355. package/docs/en/intlayer_with_vite+solid.md +9 -5
  356. package/docs/en/intlayer_with_vite+svelte.md +8 -4
  357. package/docs/en/intlayer_with_vite+vanilla.md +8 -4
  358. package/docs/en/intlayer_with_vite+vue.md +9 -5
  359. package/docs/en/live-sync.md +184 -0
  360. package/docs/en/migration_from_i18next_to_intlayer.md +8 -4
  361. package/docs/en/migration_from_next-i18next_to_intlayer.md +8 -4
  362. package/docs/en/migration_from_next-intl_to_intlayer.md +9 -7
  363. package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  364. package/docs/en/migration_from_react-i18next_to_intlayer.md +9 -7
  365. package/docs/en/migration_from_vue-i18n_to_intlayer.md +8 -4
  366. package/docs/en/releases/v9.md +124 -29
  367. package/docs/en/self_hosting.md +310 -0
  368. package/docs/en-GB/bundle_optimization.md +16 -0
  369. package/docs/en-GB/cli/index.md +1 -1
  370. package/docs/en-GB/cli/scan.md +2 -2
  371. package/docs/en-GB/configuration.md +42 -1
  372. package/docs/en-GB/how_works_intlayer.md +2 -2
  373. package/docs/en-GB/intlayer_CMS.md +14 -122
  374. package/docs/en-GB/intlayer_with_adonisjs.md +8 -4
  375. package/docs/en-GB/intlayer_with_analog.md +8 -4
  376. package/docs/en-GB/intlayer_with_angular_19.md +8 -4
  377. package/docs/en-GB/intlayer_with_angular_21.md +8 -4
  378. package/docs/en-GB/intlayer_with_astro_lit.md +11 -7
  379. package/docs/en-GB/intlayer_with_astro_preact.md +8 -4
  380. package/docs/en-GB/intlayer_with_astro_react.md +8 -4
  381. package/docs/en-GB/intlayer_with_astro_solid.md +8 -4
  382. package/docs/en-GB/intlayer_with_astro_svelte.md +8 -4
  383. package/docs/en-GB/intlayer_with_astro_vanilla.md +8 -4
  384. package/docs/en-GB/intlayer_with_astro_vue.md +8 -4
  385. package/docs/en-GB/intlayer_with_create_react_app.md +16 -8
  386. package/docs/en-GB/intlayer_with_express.md +8 -4
  387. package/docs/en-GB/intlayer_with_fastify.md +8 -4
  388. package/docs/en-GB/intlayer_with_hono.md +8 -4
  389. package/docs/en-GB/intlayer_with_lynx+react.md +16 -8
  390. package/docs/en-GB/intlayer_with_nestjs.md +8 -4
  391. package/docs/en-GB/intlayer_with_next-i18next.md +8 -4
  392. package/docs/en-GB/intlayer_with_nextjs_14.md +8 -4
  393. package/docs/en-GB/intlayer_with_nextjs_15.md +10 -8
  394. package/docs/en-GB/intlayer_with_nextjs_16.md +10 -8
  395. package/docs/en-GB/intlayer_with_nextjs_compiler.md +9 -7
  396. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +10 -8
  397. package/docs/en-GB/intlayer_with_nextjs_page_router.md +8 -4
  398. package/docs/en-GB/intlayer_with_nuxt.md +9 -5
  399. package/docs/en-GB/intlayer_with_react_native+expo.md +8 -4
  400. package/docs/en-GB/intlayer_with_react_router_v7.md +9 -5
  401. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +9 -5
  402. package/docs/en-GB/intlayer_with_svelte_kit.md +8 -4
  403. package/docs/en-GB/intlayer_with_tanstack+solid.md +9 -5
  404. package/docs/en-GB/intlayer_with_tanstack.md +10 -7
  405. package/docs/en-GB/intlayer_with_vite+lit.md +8 -4
  406. package/docs/en-GB/intlayer_with_vite+preact.md +9 -5
  407. package/docs/en-GB/intlayer_with_vite+react.md +9 -5
  408. package/docs/en-GB/intlayer_with_vite+react_compiler.md +9 -5
  409. package/docs/en-GB/intlayer_with_vite+solid.md +9 -5
  410. package/docs/en-GB/intlayer_with_vite+svelte.md +8 -4
  411. package/docs/en-GB/intlayer_with_vite+vanilla.md +8 -4
  412. package/docs/en-GB/intlayer_with_vite+vue.md +9 -5
  413. package/docs/en-GB/live-sync.md +173 -0
  414. package/docs/en-GB/migration_from_i18next_to_intlayer.md +8 -4
  415. package/docs/en-GB/migration_from_next-i18next_to_intlayer.md +8 -4
  416. package/docs/en-GB/migration_from_next-intl_to_intlayer.md +9 -7
  417. package/docs/en-GB/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  418. package/docs/en-GB/migration_from_react-i18next_to_intlayer.md +9 -7
  419. package/docs/en-GB/migration_from_vue-i18n_to_intlayer.md +8 -4
  420. package/docs/en-GB/releases/v9.md +117 -26
  421. package/docs/en-GB/self_hosting.md +350 -0
  422. package/docs/es/bundle_optimization.md +16 -0
  423. package/docs/es/cli/index.md +1 -1
  424. package/docs/es/cli/scan.md +2 -2
  425. package/docs/es/configuration.md +42 -1
  426. package/docs/es/how_works_intlayer.md +2 -2
  427. package/docs/es/intlayer_CMS.md +85 -104
  428. package/docs/es/intlayer_with_adonisjs.md +8 -4
  429. package/docs/es/intlayer_with_analog.md +8 -4
  430. package/docs/es/intlayer_with_angular_19.md +8 -4
  431. package/docs/es/intlayer_with_angular_21.md +8 -4
  432. package/docs/es/intlayer_with_astro_lit.md +11 -7
  433. package/docs/es/intlayer_with_astro_preact.md +8 -4
  434. package/docs/es/intlayer_with_astro_react.md +8 -4
  435. package/docs/es/intlayer_with_astro_solid.md +8 -4
  436. package/docs/es/intlayer_with_astro_svelte.md +8 -4
  437. package/docs/es/intlayer_with_astro_vanilla.md +8 -4
  438. package/docs/es/intlayer_with_astro_vue.md +8 -4
  439. package/docs/es/intlayer_with_create_react_app.md +8 -4
  440. package/docs/es/intlayer_with_express.md +8 -4
  441. package/docs/es/intlayer_with_fastify.md +8 -4
  442. package/docs/es/intlayer_with_hono.md +8 -4
  443. package/docs/es/intlayer_with_lynx+react.md +8 -4
  444. package/docs/es/intlayer_with_nestjs.md +8 -4
  445. package/docs/es/intlayer_with_next-i18next.md +8 -4
  446. package/docs/es/intlayer_with_nextjs_14.md +8 -4
  447. package/docs/es/intlayer_with_nextjs_15.md +10 -8
  448. package/docs/es/intlayer_with_nextjs_16.md +10 -8
  449. package/docs/es/intlayer_with_nextjs_compiler.md +9 -7
  450. package/docs/es/intlayer_with_nextjs_no_locale_path.md +10 -8
  451. package/docs/es/intlayer_with_nextjs_page_router.md +8 -4
  452. package/docs/es/intlayer_with_nuxt.md +9 -5
  453. package/docs/es/intlayer_with_react_native+expo.md +8 -4
  454. package/docs/es/intlayer_with_react_router_v7.md +9 -5
  455. package/docs/es/intlayer_with_svelte_kit.md +8 -4
  456. package/docs/es/intlayer_with_tanstack+solid.md +9 -5
  457. package/docs/es/intlayer_with_tanstack.md +10 -7
  458. package/docs/es/intlayer_with_vite+lit.md +8 -4
  459. package/docs/es/intlayer_with_vite+preact.md +9 -5
  460. package/docs/es/intlayer_with_vite+react.md +9 -5
  461. package/docs/es/intlayer_with_vite+react_compiler.md +9 -5
  462. package/docs/es/intlayer_with_vite+solid.md +9 -5
  463. package/docs/es/intlayer_with_vite+svelte.md +8 -4
  464. package/docs/es/intlayer_with_vite+vanilla.md +8 -4
  465. package/docs/es/intlayer_with_vite+vue.md +9 -5
  466. package/docs/es/live-sync.md +176 -0
  467. package/docs/es/migration_from_i18next_to_intlayer.md +8 -4
  468. package/docs/es/migration_from_next-i18next_to_intlayer.md +8 -4
  469. package/docs/es/migration_from_next-intl_to_intlayer.md +9 -7
  470. package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  471. package/docs/es/migration_from_react-i18next_to_intlayer.md +9 -7
  472. package/docs/es/migration_from_vue-i18n_to_intlayer.md +8 -4
  473. package/docs/es/releases/v9.md +131 -33
  474. package/docs/es/self_hosting.md +350 -0
  475. package/docs/fr/bundle_optimization.md +16 -0
  476. package/docs/fr/cli/index.md +1 -1
  477. package/docs/fr/cli/scan.md +2 -2
  478. package/docs/fr/configuration.md +42 -1
  479. package/docs/fr/how_works_intlayer.md +2 -2
  480. package/docs/fr/intlayer_CMS.md +86 -100
  481. package/docs/fr/intlayer_with_adonisjs.md +8 -4
  482. package/docs/fr/intlayer_with_analog.md +8 -4
  483. package/docs/fr/intlayer_with_angular_19.md +8 -4
  484. package/docs/fr/intlayer_with_angular_21.md +8 -4
  485. package/docs/fr/intlayer_with_astro_lit.md +11 -7
  486. package/docs/fr/intlayer_with_astro_preact.md +8 -4
  487. package/docs/fr/intlayer_with_astro_react.md +8 -4
  488. package/docs/fr/intlayer_with_astro_solid.md +8 -4
  489. package/docs/fr/intlayer_with_astro_svelte.md +8 -4
  490. package/docs/fr/intlayer_with_astro_vanilla.md +8 -4
  491. package/docs/fr/intlayer_with_astro_vue.md +8 -4
  492. package/docs/fr/intlayer_with_create_react_app.md +8 -4
  493. package/docs/fr/intlayer_with_express.md +8 -4
  494. package/docs/fr/intlayer_with_fastify.md +8 -4
  495. package/docs/fr/intlayer_with_hono.md +8 -4
  496. package/docs/fr/intlayer_with_lynx+react.md +8 -4
  497. package/docs/fr/intlayer_with_nestjs.md +8 -4
  498. package/docs/fr/intlayer_with_next-i18next.md +8 -4
  499. package/docs/fr/intlayer_with_nextjs_14.md +8 -4
  500. package/docs/fr/intlayer_with_nextjs_15.md +10 -8
  501. package/docs/fr/intlayer_with_nextjs_16.md +10 -8
  502. package/docs/fr/intlayer_with_nextjs_compiler.md +9 -7
  503. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +10 -8
  504. package/docs/fr/intlayer_with_nextjs_page_router.md +8 -4
  505. package/docs/fr/intlayer_with_nuxt.md +9 -5
  506. package/docs/fr/intlayer_with_react_native+expo.md +8 -4
  507. package/docs/fr/intlayer_with_react_router_v7.md +9 -5
  508. package/docs/fr/intlayer_with_svelte_kit.md +8 -4
  509. package/docs/fr/intlayer_with_tanstack+solid.md +9 -5
  510. package/docs/fr/intlayer_with_tanstack.md +10 -7
  511. package/docs/fr/intlayer_with_vite+lit.md +8 -4
  512. package/docs/fr/intlayer_with_vite+preact.md +9 -5
  513. package/docs/fr/intlayer_with_vite+react.md +9 -5
  514. package/docs/fr/intlayer_with_vite+react_compiler.md +9 -5
  515. package/docs/fr/intlayer_with_vite+solid.md +9 -5
  516. package/docs/fr/intlayer_with_vite+svelte.md +8 -4
  517. package/docs/fr/intlayer_with_vite+vanilla.md +8 -4
  518. package/docs/fr/intlayer_with_vite+vue.md +9 -5
  519. package/docs/fr/live-sync.md +174 -0
  520. package/docs/fr/migration_from_i18next_to_intlayer.md +8 -4
  521. package/docs/fr/migration_from_next-i18next_to_intlayer.md +8 -4
  522. package/docs/fr/migration_from_next-intl_to_intlayer.md +9 -7
  523. package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  524. package/docs/fr/migration_from_react-i18next_to_intlayer.md +9 -7
  525. package/docs/fr/migration_from_vue-i18n_to_intlayer.md +8 -4
  526. package/docs/fr/releases/v9.md +131 -25
  527. package/docs/fr/self_hosting.md +350 -0
  528. package/docs/hi/bundle_optimization.md +16 -0
  529. package/docs/hi/cli/index.md +1 -1
  530. package/docs/hi/cli/scan.md +2 -2
  531. package/docs/hi/configuration.md +42 -1
  532. package/docs/hi/how_works_intlayer.md +2 -2
  533. package/docs/hi/intlayer_CMS.md +14 -122
  534. package/docs/hi/intlayer_with_adonisjs.md +8 -4
  535. package/docs/hi/intlayer_with_analog.md +8 -4
  536. package/docs/hi/intlayer_with_angular_19.md +8 -4
  537. package/docs/hi/intlayer_with_angular_21.md +8 -4
  538. package/docs/hi/intlayer_with_astro_vue.md +8 -4
  539. package/docs/hi/intlayer_with_create_react_app.md +8 -4
  540. package/docs/hi/intlayer_with_express.md +8 -4
  541. package/docs/hi/intlayer_with_fastify.md +8 -4
  542. package/docs/hi/intlayer_with_hono.md +8 -4
  543. package/docs/hi/intlayer_with_lynx+react.md +8 -4
  544. package/docs/hi/intlayer_with_nestjs.md +8 -4
  545. package/docs/hi/intlayer_with_next-i18next.md +8 -4
  546. package/docs/hi/intlayer_with_nextjs_14.md +8 -4
  547. package/docs/hi/intlayer_with_nextjs_15.md +10 -8
  548. package/docs/hi/intlayer_with_nextjs_16.md +10 -8
  549. package/docs/hi/intlayer_with_nextjs_compiler.md +8 -4
  550. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +10 -8
  551. package/docs/hi/intlayer_with_nextjs_page_router.md +8 -4
  552. package/docs/hi/intlayer_with_nuxt.md +9 -5
  553. package/docs/hi/intlayer_with_react_native+expo.md +8 -4
  554. package/docs/hi/intlayer_with_react_router_v7.md +9 -5
  555. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +9 -5
  556. package/docs/hi/intlayer_with_svelte_kit.md +8 -4
  557. package/docs/hi/intlayer_with_tanstack+solid.md +9 -5
  558. package/docs/hi/intlayer_with_tanstack.md +10 -7
  559. package/docs/hi/intlayer_with_vite+lit.md +8 -4
  560. package/docs/hi/intlayer_with_vite+preact.md +9 -5
  561. package/docs/hi/intlayer_with_vite+react.md +9 -5
  562. package/docs/hi/intlayer_with_vite+react_compiler.md +9 -5
  563. package/docs/hi/intlayer_with_vite+solid.md +9 -5
  564. package/docs/hi/intlayer_with_vite+svelte.md +8 -4
  565. package/docs/hi/intlayer_with_vite+vanilla.md +8 -4
  566. package/docs/hi/intlayer_with_vite+vue.md +9 -5
  567. package/docs/hi/live-sync.md +174 -0
  568. package/docs/hi/migration_from_i18next_to_intlayer.md +8 -4
  569. package/docs/hi/migration_from_next-i18next_to_intlayer.md +8 -4
  570. package/docs/hi/migration_from_next-intl_to_intlayer.md +9 -7
  571. package/docs/hi/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  572. package/docs/hi/migration_from_react-i18next_to_intlayer.md +9 -7
  573. package/docs/hi/migration_from_vue-i18n_to_intlayer.md +8 -4
  574. package/docs/hi/packages/intlayer/index.md +8 -4
  575. package/docs/hi/releases/v9.md +129 -33
  576. package/docs/hi/self_hosting.md +350 -0
  577. package/docs/id/bundle_optimization.md +16 -0
  578. package/docs/id/cli/index.md +1 -1
  579. package/docs/id/cli/scan.md +2 -2
  580. package/docs/id/configuration.md +42 -1
  581. package/docs/id/how_works_intlayer.md +2 -2
  582. package/docs/id/intlayer_CMS.md +5 -139
  583. package/docs/id/intlayer_with_adonisjs.md +8 -4
  584. package/docs/id/intlayer_with_analog.md +8 -4
  585. package/docs/id/intlayer_with_angular_19.md +8 -4
  586. package/docs/id/intlayer_with_angular_21.md +8 -4
  587. package/docs/id/intlayer_with_astro_lit.md +11 -7
  588. package/docs/id/intlayer_with_astro_preact.md +8 -4
  589. package/docs/id/intlayer_with_astro_react.md +8 -4
  590. package/docs/id/intlayer_with_astro_solid.md +8 -4
  591. package/docs/id/intlayer_with_astro_svelte.md +8 -4
  592. package/docs/id/intlayer_with_astro_vanilla.md +8 -4
  593. package/docs/id/intlayer_with_astro_vue.md +8 -4
  594. package/docs/id/intlayer_with_create_react_app.md +8 -4
  595. package/docs/id/intlayer_with_express.md +8 -4
  596. package/docs/id/intlayer_with_fastify.md +8 -4
  597. package/docs/id/intlayer_with_hono.md +8 -4
  598. package/docs/id/intlayer_with_lynx+react.md +8 -4
  599. package/docs/id/intlayer_with_nestjs.md +8 -4
  600. package/docs/id/intlayer_with_next-i18next.md +8 -4
  601. package/docs/id/intlayer_with_nextjs_14.md +8 -4
  602. package/docs/id/intlayer_with_nextjs_15.md +9 -7
  603. package/docs/id/intlayer_with_nextjs_16.md +10 -8
  604. package/docs/id/intlayer_with_nextjs_compiler.md +8 -4
  605. package/docs/id/intlayer_with_nextjs_no_locale_path.md +10 -8
  606. package/docs/id/intlayer_with_nextjs_page_router.md +8 -4
  607. package/docs/id/intlayer_with_nuxt.md +9 -5
  608. package/docs/id/intlayer_with_react_native+expo.md +8 -4
  609. package/docs/id/intlayer_with_react_router_v7.md +9 -5
  610. package/docs/id/intlayer_with_svelte_kit.md +8 -4
  611. package/docs/id/intlayer_with_tanstack+solid.md +9 -5
  612. package/docs/id/intlayer_with_tanstack.md +10 -7
  613. package/docs/id/intlayer_with_vite+lit.md +8 -4
  614. package/docs/id/intlayer_with_vite+preact.md +9 -5
  615. package/docs/id/intlayer_with_vite+react.md +9 -5
  616. package/docs/id/intlayer_with_vite+react_compiler.md +9 -5
  617. package/docs/id/intlayer_with_vite+solid.md +9 -5
  618. package/docs/id/intlayer_with_vite+svelte.md +8 -4
  619. package/docs/id/intlayer_with_vite+vanilla.md +8 -4
  620. package/docs/id/intlayer_with_vite+vue.md +9 -5
  621. package/docs/id/live-sync.md +185 -0
  622. package/docs/id/migration_from_i18next_to_intlayer.md +8 -4
  623. package/docs/id/migration_from_next-i18next_to_intlayer.md +8 -4
  624. package/docs/id/migration_from_next-intl_to_intlayer.md +9 -7
  625. package/docs/id/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  626. package/docs/id/migration_from_react-i18next_to_intlayer.md +9 -7
  627. package/docs/id/migration_from_vue-i18n_to_intlayer.md +8 -4
  628. package/docs/id/releases/v9.md +101 -33
  629. package/docs/id/self_hosting.md +350 -0
  630. package/docs/it/bundle_optimization.md +16 -0
  631. package/docs/it/cli/index.md +1 -1
  632. package/docs/it/cli/scan.md +2 -2
  633. package/docs/it/configuration.md +42 -1
  634. package/docs/it/how_works_intlayer.md +2 -2
  635. package/docs/it/intlayer_CMS.md +87 -94
  636. package/docs/it/intlayer_with_adonisjs.md +8 -4
  637. package/docs/it/intlayer_with_analog.md +8 -4
  638. package/docs/it/intlayer_with_angular_19.md +8 -4
  639. package/docs/it/intlayer_with_angular_21.md +8 -4
  640. package/docs/it/intlayer_with_astro_lit.md +11 -7
  641. package/docs/it/intlayer_with_astro_preact.md +8 -4
  642. package/docs/it/intlayer_with_astro_react.md +8 -4
  643. package/docs/it/intlayer_with_astro_solid.md +8 -4
  644. package/docs/it/intlayer_with_astro_svelte.md +8 -4
  645. package/docs/it/intlayer_with_astro_vanilla.md +8 -4
  646. package/docs/it/intlayer_with_astro_vue.md +8 -4
  647. package/docs/it/intlayer_with_create_react_app.md +8 -4
  648. package/docs/it/intlayer_with_express.md +8 -4
  649. package/docs/it/intlayer_with_fastify.md +8 -4
  650. package/docs/it/intlayer_with_hono.md +8 -4
  651. package/docs/it/intlayer_with_lynx+react.md +8 -4
  652. package/docs/it/intlayer_with_nestjs.md +8 -4
  653. package/docs/it/intlayer_with_next-i18next.md +8 -4
  654. package/docs/it/intlayer_with_nextjs_14.md +8 -4
  655. package/docs/it/intlayer_with_nextjs_15.md +10 -8
  656. package/docs/it/intlayer_with_nextjs_16.md +10 -8
  657. package/docs/it/intlayer_with_nextjs_compiler.md +9 -7
  658. package/docs/it/intlayer_with_nextjs_no_locale_path.md +10 -8
  659. package/docs/it/intlayer_with_nextjs_page_router.md +8 -4
  660. package/docs/it/intlayer_with_nuxt.md +9 -5
  661. package/docs/it/intlayer_with_react_native+expo.md +8 -4
  662. package/docs/it/intlayer_with_react_router_v7.md +9 -5
  663. package/docs/it/intlayer_with_svelte_kit.md +8 -4
  664. package/docs/it/intlayer_with_tanstack+solid.md +9 -5
  665. package/docs/it/intlayer_with_tanstack.md +10 -7
  666. package/docs/it/intlayer_with_vite+lit.md +8 -4
  667. package/docs/it/intlayer_with_vite+preact.md +9 -5
  668. package/docs/it/intlayer_with_vite+react.md +10 -6
  669. package/docs/it/intlayer_with_vite+react_compiler.md +9 -5
  670. package/docs/it/intlayer_with_vite+solid.md +9 -5
  671. package/docs/it/intlayer_with_vite+svelte.md +8 -4
  672. package/docs/it/intlayer_with_vite+vanilla.md +8 -4
  673. package/docs/it/intlayer_with_vite+vue.md +9 -5
  674. package/docs/it/live-sync.md +174 -0
  675. package/docs/it/migration_from_i18next_to_intlayer.md +8 -4
  676. package/docs/it/migration_from_next-i18next_to_intlayer.md +8 -4
  677. package/docs/it/migration_from_next-intl_to_intlayer.md +8 -4
  678. package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  679. package/docs/it/migration_from_react-i18next_to_intlayer.md +9 -7
  680. package/docs/it/migration_from_vue-i18n_to_intlayer.md +8 -4
  681. package/docs/it/releases/v9.md +131 -33
  682. package/docs/it/self_hosting.md +350 -0
  683. package/docs/ja/bundle_optimization.md +16 -0
  684. package/docs/ja/cli/index.md +1 -1
  685. package/docs/ja/cli/scan.md +2 -2
  686. package/docs/ja/configuration.md +42 -1
  687. package/docs/ja/how_works_intlayer.md +2 -2
  688. package/docs/ja/intlayer_CMS.md +149 -102
  689. package/docs/ja/intlayer_with_adonisjs.md +8 -4
  690. package/docs/ja/intlayer_with_analog.md +8 -4
  691. package/docs/ja/intlayer_with_angular_19.md +8 -4
  692. package/docs/ja/intlayer_with_angular_21.md +8 -4
  693. package/docs/ja/intlayer_with_astro_lit.md +11 -7
  694. package/docs/ja/intlayer_with_astro_preact.md +8 -4
  695. package/docs/ja/intlayer_with_astro_react.md +8 -4
  696. package/docs/ja/intlayer_with_astro_solid.md +8 -4
  697. package/docs/ja/intlayer_with_astro_svelte.md +8 -4
  698. package/docs/ja/intlayer_with_astro_vanilla.md +8 -4
  699. package/docs/ja/intlayer_with_astro_vue.md +8 -4
  700. package/docs/ja/intlayer_with_create_react_app.md +8 -4
  701. package/docs/ja/intlayer_with_express.md +8 -4
  702. package/docs/ja/intlayer_with_fastify.md +8 -4
  703. package/docs/ja/intlayer_with_hono.md +8 -4
  704. package/docs/ja/intlayer_with_lynx+react.md +8 -4
  705. package/docs/ja/intlayer_with_nestjs.md +8 -4
  706. package/docs/ja/intlayer_with_next-i18next.md +8 -4
  707. package/docs/ja/intlayer_with_nextjs_14.md +8 -4
  708. package/docs/ja/intlayer_with_nextjs_15.md +10 -8
  709. package/docs/ja/intlayer_with_nextjs_16.md +10 -8
  710. package/docs/ja/intlayer_with_nextjs_compiler.md +8 -4
  711. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +10 -8
  712. package/docs/ja/intlayer_with_nextjs_page_router.md +8 -4
  713. package/docs/ja/intlayer_with_nuxt.md +9 -5
  714. package/docs/ja/intlayer_with_react_native+expo.md +8 -4
  715. package/docs/ja/intlayer_with_tanstack+solid.md +9 -5
  716. package/docs/ja/intlayer_with_tanstack.md +10 -7
  717. package/docs/ja/intlayer_with_vite+lit.md +8 -4
  718. package/docs/ja/intlayer_with_vite+preact.md +9 -5
  719. package/docs/ja/intlayer_with_vite+react_compiler.md +9 -5
  720. package/docs/ja/intlayer_with_vite+solid.md +9 -5
  721. package/docs/ja/intlayer_with_vite+svelte.md +8 -4
  722. package/docs/ja/intlayer_with_vite+vanilla.md +8 -4
  723. package/docs/ja/intlayer_with_vite+vue.md +9 -5
  724. package/docs/ja/live-sync.md +185 -0
  725. package/docs/ja/migration_from_i18next_to_intlayer.md +8 -4
  726. package/docs/ja/migration_from_next-i18next_to_intlayer.md +8 -4
  727. package/docs/ja/migration_from_next-intl_to_intlayer.md +9 -7
  728. package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  729. package/docs/ja/migration_from_react-i18next_to_intlayer.md +9 -7
  730. package/docs/ja/migration_from_vue-i18n_to_intlayer.md +8 -4
  731. package/docs/ja/releases/v9.md +101 -33
  732. package/docs/ja/self_hosting.md +350 -0
  733. package/docs/ko/bundle_optimization.md +16 -0
  734. package/docs/ko/cli/index.md +1 -1
  735. package/docs/ko/cli/scan.md +2 -2
  736. package/docs/ko/configuration.md +42 -1
  737. package/docs/ko/how_works_intlayer.md +2 -2
  738. package/docs/ko/intlayer_CMS.md +147 -100
  739. package/docs/ko/intlayer_with_adonisjs.md +8 -4
  740. package/docs/ko/intlayer_with_analog.md +8 -4
  741. package/docs/ko/intlayer_with_angular_19.md +8 -4
  742. package/docs/ko/intlayer_with_angular_21.md +8 -4
  743. package/docs/ko/intlayer_with_astro_vue.md +8 -4
  744. package/docs/ko/intlayer_with_create_react_app.md +8 -4
  745. package/docs/ko/intlayer_with_express.md +8 -4
  746. package/docs/ko/intlayer_with_fastify.md +8 -4
  747. package/docs/ko/intlayer_with_hono.md +8 -4
  748. package/docs/ko/intlayer_with_nestjs.md +8 -4
  749. package/docs/ko/intlayer_with_next-i18next.md +8 -4
  750. package/docs/ko/intlayer_with_nextjs_15.md +10 -8
  751. package/docs/ko/intlayer_with_nextjs_16.md +10 -8
  752. package/docs/ko/intlayer_with_nextjs_compiler.md +9 -7
  753. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +10 -8
  754. package/docs/ko/intlayer_with_nextjs_page_router.md +8 -4
  755. package/docs/ko/intlayer_with_nuxt.md +9 -5
  756. package/docs/ko/intlayer_with_react_native+expo.md +8 -4
  757. package/docs/ko/intlayer_with_react_router_v7.md +9 -5
  758. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +9 -5
  759. package/docs/ko/intlayer_with_svelte_kit.md +8 -4
  760. package/docs/ko/intlayer_with_tanstack+solid.md +9 -5
  761. package/docs/ko/intlayer_with_tanstack.md +10 -7
  762. package/docs/ko/intlayer_with_vite+lit.md +8 -4
  763. package/docs/ko/intlayer_with_vite+preact.md +9 -5
  764. package/docs/ko/intlayer_with_vite+react_compiler.md +9 -5
  765. package/docs/ko/intlayer_with_vite+solid.md +9 -5
  766. package/docs/ko/intlayer_with_vite+svelte.md +8 -4
  767. package/docs/ko/intlayer_with_vite+vanilla.md +8 -4
  768. package/docs/ko/intlayer_with_vite+vue.md +9 -5
  769. package/docs/ko/live-sync.md +187 -0
  770. package/docs/ko/migration_from_i18next_to_intlayer.md +8 -4
  771. package/docs/ko/migration_from_next-i18next_to_intlayer.md +8 -4
  772. package/docs/ko/migration_from_next-intl_to_intlayer.md +9 -7
  773. package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  774. package/docs/ko/migration_from_react-i18next_to_intlayer.md +9 -7
  775. package/docs/ko/migration_from_vue-i18n_to_intlayer.md +8 -4
  776. package/docs/ko/releases/v9.md +100 -33
  777. package/docs/ko/self_hosting.md +350 -0
  778. package/docs/nl/bundle_optimization.md +16 -0
  779. package/docs/nl/cli/index.md +1 -1
  780. package/docs/nl/cli/scan.md +2 -2
  781. package/docs/nl/configuration.md +45 -1
  782. package/docs/nl/intlayer_with_angular_21.md +8 -4
  783. package/docs/nl/intlayer_with_fastify.md +8 -4
  784. package/docs/nl/intlayer_with_hono.md +8 -4
  785. package/docs/nl/intlayer_with_vite+lit.md +8 -4
  786. package/docs/nl/intlayer_with_vite+vanilla.md +8 -4
  787. package/docs/nl/releases/v9.md +349 -0
  788. package/docs/pl/bundle_optimization.md +16 -0
  789. package/docs/pl/cli/index.md +1 -1
  790. package/docs/pl/cli/scan.md +2 -2
  791. package/docs/pl/configuration.md +45 -1
  792. package/docs/pl/how_works_intlayer.md +2 -2
  793. package/docs/pl/intlayer_CMS.md +14 -133
  794. package/docs/pl/intlayer_with_adonisjs.md +8 -4
  795. package/docs/pl/intlayer_with_analog.md +8 -4
  796. package/docs/pl/intlayer_with_angular_19.md +8 -4
  797. package/docs/pl/intlayer_with_angular_21.md +8 -4
  798. package/docs/pl/intlayer_with_astro_lit.md +11 -7
  799. package/docs/pl/intlayer_with_astro_preact.md +8 -4
  800. package/docs/pl/intlayer_with_astro_react.md +8 -4
  801. package/docs/pl/intlayer_with_astro_solid.md +8 -4
  802. package/docs/pl/intlayer_with_astro_svelte.md +8 -4
  803. package/docs/pl/intlayer_with_astro_vanilla.md +8 -4
  804. package/docs/pl/intlayer_with_astro_vue.md +8 -4
  805. package/docs/pl/intlayer_with_create_react_app.md +8 -4
  806. package/docs/pl/intlayer_with_express.md +8 -4
  807. package/docs/pl/intlayer_with_fastify.md +8 -4
  808. package/docs/pl/intlayer_with_hono.md +8 -4
  809. package/docs/pl/intlayer_with_lynx+react.md +8 -4
  810. package/docs/pl/intlayer_with_nestjs.md +8 -4
  811. package/docs/pl/intlayer_with_next-i18next.md +8 -4
  812. package/docs/pl/intlayer_with_nextjs_14.md +8 -4
  813. package/docs/pl/intlayer_with_nextjs_15.md +9 -7
  814. package/docs/pl/intlayer_with_nextjs_16.md +10 -8
  815. package/docs/pl/intlayer_with_nextjs_compiler.md +8 -4
  816. package/docs/pl/intlayer_with_nextjs_no_locale_path.md +10 -8
  817. package/docs/pl/intlayer_with_nextjs_page_router.md +8 -4
  818. package/docs/pl/intlayer_with_nuxt.md +9 -5
  819. package/docs/pl/intlayer_with_react_native+expo.md +8 -4
  820. package/docs/pl/intlayer_with_react_router_v7.md +9 -5
  821. package/docs/pl/intlayer_with_svelte_kit.md +8 -4
  822. package/docs/pl/intlayer_with_tanstack+solid.md +9 -5
  823. package/docs/pl/intlayer_with_tanstack.md +10 -7
  824. package/docs/pl/intlayer_with_vite+lit.md +8 -4
  825. package/docs/pl/intlayer_with_vite+preact.md +9 -5
  826. package/docs/pl/intlayer_with_vite+react.md +9 -5
  827. package/docs/pl/intlayer_with_vite+react_compiler.md +9 -5
  828. package/docs/pl/intlayer_with_vite+solid.md +9 -5
  829. package/docs/pl/intlayer_with_vite+svelte.md +8 -4
  830. package/docs/pl/intlayer_with_vite+vanilla.md +8 -4
  831. package/docs/pl/intlayer_with_vite+vue.md +9 -5
  832. package/docs/pl/live-sync.md +185 -0
  833. package/docs/pl/migration_from_next-i18next_to_intlayer.md +8 -4
  834. package/docs/pl/migration_from_next-intl_to_intlayer.md +9 -7
  835. package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  836. package/docs/pl/migration_from_react-i18next_to_intlayer.md +9 -7
  837. package/docs/pl/releases/v9.md +128 -33
  838. package/docs/pl/self_hosting.md +350 -0
  839. package/docs/pt/bundle_optimization.md +16 -0
  840. package/docs/pt/cli/index.md +1 -1
  841. package/docs/pt/cli/scan.md +2 -2
  842. package/docs/pt/configuration.md +45 -1
  843. package/docs/pt/how_works_intlayer.md +2 -2
  844. package/docs/pt/intlayer_CMS.md +87 -109
  845. package/docs/pt/intlayer_with_adonisjs.md +8 -4
  846. package/docs/pt/intlayer_with_analog.md +8 -4
  847. package/docs/pt/intlayer_with_angular_19.md +8 -4
  848. package/docs/pt/intlayer_with_angular_21.md +8 -4
  849. package/docs/pt/intlayer_with_astro_lit.md +11 -7
  850. package/docs/pt/intlayer_with_astro_preact.md +8 -4
  851. package/docs/pt/intlayer_with_astro_react.md +8 -4
  852. package/docs/pt/intlayer_with_astro_solid.md +8 -4
  853. package/docs/pt/intlayer_with_astro_svelte.md +8 -4
  854. package/docs/pt/intlayer_with_astro_vanilla.md +8 -4
  855. package/docs/pt/intlayer_with_astro_vue.md +8 -4
  856. package/docs/pt/intlayer_with_create_react_app.md +8 -4
  857. package/docs/pt/intlayer_with_express.md +8 -4
  858. package/docs/pt/intlayer_with_fastify.md +8 -4
  859. package/docs/pt/intlayer_with_hono.md +8 -4
  860. package/docs/pt/intlayer_with_lynx+react.md +8 -4
  861. package/docs/pt/intlayer_with_nestjs.md +8 -4
  862. package/docs/pt/intlayer_with_next-i18next.md +8 -4
  863. package/docs/pt/intlayer_with_nextjs_14.md +8 -4
  864. package/docs/pt/intlayer_with_nextjs_15.md +10 -8
  865. package/docs/pt/intlayer_with_nextjs_16.md +10 -8
  866. package/docs/pt/intlayer_with_nextjs_compiler.md +9 -7
  867. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +10 -8
  868. package/docs/pt/intlayer_with_nextjs_page_router.md +8 -4
  869. package/docs/pt/intlayer_with_nuxt.md +9 -5
  870. package/docs/pt/intlayer_with_react_native+expo.md +8 -4
  871. package/docs/pt/intlayer_with_react_router_v7.md +9 -5
  872. package/docs/pt/intlayer_with_svelte_kit.md +8 -4
  873. package/docs/pt/intlayer_with_tanstack+solid.md +9 -5
  874. package/docs/pt/intlayer_with_tanstack.md +10 -7
  875. package/docs/pt/intlayer_with_vite+lit.md +8 -4
  876. package/docs/pt/intlayer_with_vite+preact.md +9 -5
  877. package/docs/pt/intlayer_with_vite+react.md +9 -5
  878. package/docs/pt/intlayer_with_vite+react_compiler.md +9 -5
  879. package/docs/pt/intlayer_with_vite+solid.md +9 -5
  880. package/docs/pt/intlayer_with_vite+svelte.md +8 -4
  881. package/docs/pt/intlayer_with_vite+vanilla.md +8 -4
  882. package/docs/pt/intlayer_with_vite+vue.md +9 -5
  883. package/docs/pt/live-sync.md +174 -0
  884. package/docs/pt/migration_from_i18next_to_intlayer.md +8 -4
  885. package/docs/pt/migration_from_next-i18next_to_intlayer.md +8 -4
  886. package/docs/pt/migration_from_next-intl_to_intlayer.md +9 -7
  887. package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  888. package/docs/pt/migration_from_react-i18next_to_intlayer.md +9 -7
  889. package/docs/pt/migration_from_vue-i18n_to_intlayer.md +8 -4
  890. package/docs/pt/releases/v9.md +131 -33
  891. package/docs/pt/self_hosting.md +350 -0
  892. package/docs/ru/bundle_optimization.md +16 -0
  893. package/docs/ru/cli/index.md +1 -1
  894. package/docs/ru/cli/scan.md +2 -2
  895. package/docs/ru/configuration.md +42 -1
  896. package/docs/ru/how_works_intlayer.md +2 -2
  897. package/docs/ru/intlayer_CMS.md +149 -102
  898. package/docs/ru/intlayer_with_adonisjs.md +8 -4
  899. package/docs/ru/intlayer_with_analog.md +8 -4
  900. package/docs/ru/intlayer_with_angular_19.md +8 -4
  901. package/docs/ru/intlayer_with_angular_21.md +8 -4
  902. package/docs/ru/intlayer_with_astro_vue.md +8 -4
  903. package/docs/ru/intlayer_with_create_react_app.md +8 -4
  904. package/docs/ru/intlayer_with_express.md +8 -4
  905. package/docs/ru/intlayer_with_fastify.md +8 -4
  906. package/docs/ru/intlayer_with_hono.md +8 -4
  907. package/docs/ru/intlayer_with_lynx+react.md +8 -4
  908. package/docs/ru/intlayer_with_nestjs.md +8 -4
  909. package/docs/ru/intlayer_with_next-i18next.md +8 -4
  910. package/docs/ru/intlayer_with_nextjs_14.md +8 -4
  911. package/docs/ru/intlayer_with_nextjs_15.md +10 -8
  912. package/docs/ru/intlayer_with_nextjs_16.md +10 -8
  913. package/docs/ru/intlayer_with_nextjs_compiler.md +9 -7
  914. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +10 -8
  915. package/docs/ru/intlayer_with_nextjs_page_router.md +8 -4
  916. package/docs/ru/intlayer_with_nuxt.md +9 -5
  917. package/docs/ru/intlayer_with_react_native+expo.md +8 -4
  918. package/docs/ru/intlayer_with_react_router_v7.md +9 -5
  919. package/docs/ru/intlayer_with_svelte_kit.md +8 -4
  920. package/docs/ru/intlayer_with_tanstack+solid.md +9 -5
  921. package/docs/ru/intlayer_with_tanstack.md +10 -7
  922. package/docs/ru/intlayer_with_vite+lit.md +8 -4
  923. package/docs/ru/intlayer_with_vite+preact.md +9 -5
  924. package/docs/ru/intlayer_with_vite+react.md +9 -5
  925. package/docs/ru/intlayer_with_vite+react_compiler.md +9 -5
  926. package/docs/ru/intlayer_with_vite+solid.md +9 -5
  927. package/docs/ru/intlayer_with_vite+svelte.md +8 -4
  928. package/docs/ru/intlayer_with_vite+vanilla.md +8 -4
  929. package/docs/ru/intlayer_with_vite+vue.md +9 -5
  930. package/docs/ru/live-sync.md +185 -0
  931. package/docs/ru/migration_from_i18next_to_intlayer.md +8 -4
  932. package/docs/ru/migration_from_next-i18next_to_intlayer.md +8 -4
  933. package/docs/ru/migration_from_next-intl_to_intlayer.md +9 -7
  934. package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  935. package/docs/ru/migration_from_react-i18next_to_intlayer.md +9 -7
  936. package/docs/ru/migration_from_vue-i18n_to_intlayer.md +8 -4
  937. package/docs/ru/releases/v9.md +129 -33
  938. package/docs/ru/self_hosting.md +350 -0
  939. package/docs/tr/bundle_optimization.md +16 -0
  940. package/docs/tr/cli/index.md +1 -1
  941. package/docs/tr/cli/scan.md +2 -2
  942. package/docs/tr/configuration.md +42 -1
  943. package/docs/tr/how_works_intlayer.md +2 -2
  944. package/docs/tr/intlayer_CMS.md +14 -121
  945. package/docs/tr/intlayer_with_adonisjs.md +8 -4
  946. package/docs/tr/intlayer_with_analog.md +8 -4
  947. package/docs/tr/intlayer_with_angular_19.md +8 -4
  948. package/docs/tr/intlayer_with_angular_21.md +8 -4
  949. package/docs/tr/intlayer_with_astro_lit.md +11 -7
  950. package/docs/tr/intlayer_with_astro_preact.md +8 -4
  951. package/docs/tr/intlayer_with_astro_react.md +8 -4
  952. package/docs/tr/intlayer_with_astro_solid.md +8 -4
  953. package/docs/tr/intlayer_with_astro_svelte.md +8 -4
  954. package/docs/tr/intlayer_with_astro_vanilla.md +8 -4
  955. package/docs/tr/intlayer_with_astro_vue.md +8 -4
  956. package/docs/tr/intlayer_with_create_react_app.md +8 -4
  957. package/docs/tr/intlayer_with_express.md +8 -4
  958. package/docs/tr/intlayer_with_fastify.md +8 -4
  959. package/docs/tr/intlayer_with_hono.md +8 -4
  960. package/docs/tr/intlayer_with_lynx+react.md +8 -4
  961. package/docs/tr/intlayer_with_nestjs.md +8 -4
  962. package/docs/tr/intlayer_with_next-i18next.md +8 -4
  963. package/docs/tr/intlayer_with_nextjs_14.md +8 -4
  964. package/docs/tr/intlayer_with_nextjs_15.md +10 -8
  965. package/docs/tr/intlayer_with_nextjs_16.md +10 -8
  966. package/docs/tr/intlayer_with_nextjs_compiler.md +8 -4
  967. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +10 -8
  968. package/docs/tr/intlayer_with_nextjs_page_router.md +8 -4
  969. package/docs/tr/intlayer_with_nuxt.md +9 -5
  970. package/docs/tr/intlayer_with_react_native+expo.md +8 -4
  971. package/docs/tr/intlayer_with_react_router_v7.md +9 -5
  972. package/docs/tr/intlayer_with_svelte_kit.md +8 -4
  973. package/docs/tr/intlayer_with_tanstack+solid.md +9 -5
  974. package/docs/tr/intlayer_with_tanstack.md +10 -7
  975. package/docs/tr/intlayer_with_vite+lit.md +8 -4
  976. package/docs/tr/intlayer_with_vite+preact.md +9 -5
  977. package/docs/tr/intlayer_with_vite+react.md +9 -5
  978. package/docs/tr/intlayer_with_vite+react_compiler.md +9 -5
  979. package/docs/tr/intlayer_with_vite+solid.md +9 -5
  980. package/docs/tr/intlayer_with_vite+svelte.md +8 -4
  981. package/docs/tr/intlayer_with_vite+vanilla.md +8 -4
  982. package/docs/tr/intlayer_with_vite+vue.md +9 -5
  983. package/docs/tr/live-sync.md +173 -0
  984. package/docs/tr/migration_from_i18next_to_intlayer.md +8 -4
  985. package/docs/tr/migration_from_next-i18next_to_intlayer.md +8 -4
  986. package/docs/tr/migration_from_next-intl_to_intlayer.md +9 -7
  987. package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  988. package/docs/tr/migration_from_react-i18next_to_intlayer.md +9 -7
  989. package/docs/tr/migration_from_vue-i18n_to_intlayer.md +8 -4
  990. package/docs/tr/releases/v9.md +116 -33
  991. package/docs/tr/self_hosting.md +350 -0
  992. package/docs/uk/bundle_optimization.md +16 -0
  993. package/docs/uk/cli/index.md +1 -1
  994. package/docs/uk/cli/scan.md +2 -2
  995. package/docs/uk/configuration.md +42 -1
  996. package/docs/uk/how_works_intlayer.md +2 -2
  997. package/docs/uk/intlayer_CMS.md +14 -133
  998. package/docs/uk/intlayer_with_adonisjs.md +8 -4
  999. package/docs/uk/intlayer_with_analog.md +8 -4
  1000. package/docs/uk/intlayer_with_angular_19.md +8 -4
  1001. package/docs/uk/intlayer_with_angular_21.md +8 -4
  1002. package/docs/uk/intlayer_with_astro_lit.md +11 -7
  1003. package/docs/uk/intlayer_with_astro_preact.md +8 -4
  1004. package/docs/uk/intlayer_with_astro_react.md +8 -4
  1005. package/docs/uk/intlayer_with_astro_solid.md +8 -4
  1006. package/docs/uk/intlayer_with_astro_svelte.md +8 -4
  1007. package/docs/uk/intlayer_with_astro_vanilla.md +8 -4
  1008. package/docs/uk/intlayer_with_astro_vue.md +8 -4
  1009. package/docs/uk/intlayer_with_create_react_app.md +8 -4
  1010. package/docs/uk/intlayer_with_express.md +8 -4
  1011. package/docs/uk/intlayer_with_fastify.md +8 -4
  1012. package/docs/uk/intlayer_with_hono.md +8 -4
  1013. package/docs/uk/intlayer_with_lynx+react.md +8 -4
  1014. package/docs/uk/intlayer_with_nestjs.md +8 -4
  1015. package/docs/uk/intlayer_with_next-i18next.md +8 -4
  1016. package/docs/uk/intlayer_with_nextjs_14.md +8 -4
  1017. package/docs/uk/intlayer_with_nextjs_15.md +10 -8
  1018. package/docs/uk/intlayer_with_nextjs_16.md +10 -8
  1019. package/docs/uk/intlayer_with_nextjs_compiler.md +8 -4
  1020. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +10 -8
  1021. package/docs/uk/intlayer_with_nextjs_page_router.md +8 -4
  1022. package/docs/uk/intlayer_with_nuxt.md +9 -5
  1023. package/docs/uk/intlayer_with_react_native+expo.md +8 -4
  1024. package/docs/uk/intlayer_with_react_router_v7.md +9 -5
  1025. package/docs/uk/intlayer_with_svelte_kit.md +8 -4
  1026. package/docs/uk/intlayer_with_tanstack+solid.md +9 -5
  1027. package/docs/uk/intlayer_with_tanstack.md +10 -7
  1028. package/docs/uk/intlayer_with_vite+lit.md +8 -4
  1029. package/docs/uk/intlayer_with_vite+preact.md +9 -5
  1030. package/docs/uk/intlayer_with_vite+react.md +9 -5
  1031. package/docs/uk/intlayer_with_vite+react_compiler.md +9 -5
  1032. package/docs/uk/intlayer_with_vite+solid.md +9 -5
  1033. package/docs/uk/intlayer_with_vite+svelte.md +8 -4
  1034. package/docs/uk/intlayer_with_vite+vanilla.md +8 -4
  1035. package/docs/uk/intlayer_with_vite+vue.md +9 -5
  1036. package/docs/uk/live-sync.md +185 -0
  1037. package/docs/uk/migration_from_i18next_to_intlayer.md +8 -4
  1038. package/docs/uk/migration_from_next-i18next_to_intlayer.md +8 -4
  1039. package/docs/uk/migration_from_next-intl_to_intlayer.md +9 -7
  1040. package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  1041. package/docs/uk/migration_from_react-i18next_to_intlayer.md +9 -7
  1042. package/docs/uk/migration_from_vue-i18n_to_intlayer.md +8 -4
  1043. package/docs/uk/releases/v9.md +128 -33
  1044. package/docs/uk/self_hosting.md +350 -0
  1045. package/docs/ur/bundle_optimization.md +16 -0
  1046. package/docs/ur/cli/index.md +1 -1
  1047. package/docs/ur/cli/scan.md +2 -2
  1048. package/docs/ur/configuration.md +45 -1
  1049. package/docs/ur/intlayer_with_angular_21.md +8 -4
  1050. package/docs/ur/intlayer_with_fastify.md +8 -4
  1051. package/docs/ur/intlayer_with_hono.md +8 -4
  1052. package/docs/ur/intlayer_with_vite+lit.md +8 -4
  1053. package/docs/ur/intlayer_with_vite+vanilla.md +8 -4
  1054. package/docs/vi/bundle_optimization.md +16 -0
  1055. package/docs/vi/cli/index.md +1 -1
  1056. package/docs/vi/cli/scan.md +2 -2
  1057. package/docs/vi/configuration.md +42 -1
  1058. package/docs/vi/how_works_intlayer.md +2 -2
  1059. package/docs/vi/intlayer_CMS.md +5 -139
  1060. package/docs/vi/intlayer_with_adonisjs.md +8 -4
  1061. package/docs/vi/intlayer_with_analog.md +8 -4
  1062. package/docs/vi/intlayer_with_angular_19.md +8 -4
  1063. package/docs/vi/intlayer_with_angular_21.md +8 -4
  1064. package/docs/vi/intlayer_with_astro_lit.md +11 -7
  1065. package/docs/vi/intlayer_with_astro_preact.md +8 -4
  1066. package/docs/vi/intlayer_with_astro_react.md +8 -4
  1067. package/docs/vi/intlayer_with_astro_solid.md +8 -4
  1068. package/docs/vi/intlayer_with_astro_svelte.md +8 -4
  1069. package/docs/vi/intlayer_with_astro_vanilla.md +8 -4
  1070. package/docs/vi/intlayer_with_astro_vue.md +8 -4
  1071. package/docs/vi/intlayer_with_create_react_app.md +8 -4
  1072. package/docs/vi/intlayer_with_express.md +8 -4
  1073. package/docs/vi/intlayer_with_fastify.md +8 -4
  1074. package/docs/vi/intlayer_with_hono.md +8 -4
  1075. package/docs/vi/intlayer_with_lynx+react.md +8 -4
  1076. package/docs/vi/intlayer_with_nestjs.md +8 -4
  1077. package/docs/vi/intlayer_with_next-i18next.md +8 -4
  1078. package/docs/vi/intlayer_with_nextjs_14.md +8 -4
  1079. package/docs/vi/intlayer_with_nextjs_15.md +9 -7
  1080. package/docs/vi/intlayer_with_nextjs_16.md +10 -8
  1081. package/docs/vi/intlayer_with_nextjs_compiler.md +8 -4
  1082. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +10 -8
  1083. package/docs/vi/intlayer_with_nextjs_page_router.md +8 -4
  1084. package/docs/vi/intlayer_with_nuxt.md +9 -5
  1085. package/docs/vi/intlayer_with_react_native+expo.md +8 -4
  1086. package/docs/vi/intlayer_with_react_router_v7.md +9 -5
  1087. package/docs/vi/intlayer_with_svelte_kit.md +8 -4
  1088. package/docs/vi/intlayer_with_tanstack+solid.md +9 -5
  1089. package/docs/vi/intlayer_with_tanstack.md +10 -7
  1090. package/docs/vi/intlayer_with_vite+lit.md +8 -4
  1091. package/docs/vi/intlayer_with_vite+preact.md +9 -5
  1092. package/docs/vi/intlayer_with_vite+react.md +9 -5
  1093. package/docs/vi/intlayer_with_vite+react_compiler.md +9 -5
  1094. package/docs/vi/intlayer_with_vite+solid.md +9 -5
  1095. package/docs/vi/intlayer_with_vite+svelte.md +8 -4
  1096. package/docs/vi/intlayer_with_vite+vanilla.md +8 -4
  1097. package/docs/vi/intlayer_with_vite+vue.md +9 -5
  1098. package/docs/vi/live-sync.md +185 -0
  1099. package/docs/vi/migration_from_i18next_to_intlayer.md +8 -4
  1100. package/docs/vi/migration_from_next-i18next_to_intlayer.md +8 -4
  1101. package/docs/vi/migration_from_next-intl_to_intlayer.md +9 -7
  1102. package/docs/vi/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  1103. package/docs/vi/migration_from_react-i18next_to_intlayer.md +9 -7
  1104. package/docs/vi/migration_from_vue-i18n_to_intlayer.md +8 -4
  1105. package/docs/vi/releases/v9.md +101 -33
  1106. package/docs/vi/self_hosting.md +350 -0
  1107. package/docs/zh/bundle_optimization.md +16 -0
  1108. package/docs/zh/cli/index.md +1 -1
  1109. package/docs/zh/cli/scan.md +2 -2
  1110. package/docs/zh/configuration.md +42 -1
  1111. package/docs/zh/how_works_intlayer.md +2 -2
  1112. package/docs/zh/intlayer_CMS.md +5 -129
  1113. package/docs/zh/intlayer_with_adonisjs.md +8 -4
  1114. package/docs/zh/intlayer_with_angular_21.md +8 -4
  1115. package/docs/zh/intlayer_with_astro.md +8 -4
  1116. package/docs/zh/intlayer_with_astro_lit.md +11 -7
  1117. package/docs/zh/intlayer_with_astro_preact.md +8 -4
  1118. package/docs/zh/intlayer_with_astro_react.md +8 -4
  1119. package/docs/zh/intlayer_with_astro_solid.md +8 -4
  1120. package/docs/zh/intlayer_with_astro_svelte.md +8 -4
  1121. package/docs/zh/intlayer_with_astro_vanilla.md +8 -4
  1122. package/docs/zh/intlayer_with_astro_vue.md +8 -4
  1123. package/docs/zh/intlayer_with_create_react_app.md +8 -4
  1124. package/docs/zh/intlayer_with_express.md +8 -4
  1125. package/docs/zh/intlayer_with_fastify.md +8 -4
  1126. package/docs/zh/intlayer_with_hono.md +8 -4
  1127. package/docs/zh/intlayer_with_nestjs.md +8 -4
  1128. package/docs/zh/intlayer_with_next-i18next.md +8 -4
  1129. package/docs/zh/intlayer_with_nextjs_14.md +8 -4
  1130. package/docs/zh/intlayer_with_nextjs_15.md +10 -8
  1131. package/docs/zh/intlayer_with_nextjs_16.md +10 -8
  1132. package/docs/zh/intlayer_with_nextjs_compiler.md +9 -7
  1133. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +10 -8
  1134. package/docs/zh/intlayer_with_nextjs_page_router.md +8 -4
  1135. package/docs/zh/intlayer_with_react_native+expo.md +8 -4
  1136. package/docs/zh/intlayer_with_react_router_v7.md +9 -5
  1137. package/docs/zh/intlayer_with_vite+solid.md +9 -5
  1138. package/docs/zh/intlayer_with_vite+svelte.md +8 -4
  1139. package/docs/zh/intlayer_with_vite+vue.md +9 -5
  1140. package/docs/zh/live-sync.md +175 -0
  1141. package/docs/zh/migration_from_i18next_to_intlayer.md +8 -4
  1142. package/docs/zh/migration_from_next-i18next_to_intlayer.md +8 -4
  1143. package/docs/zh/migration_from_next-intl_to_intlayer.md +9 -7
  1144. package/docs/zh/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  1145. package/docs/zh/migration_from_react-i18next_to_intlayer.md +9 -7
  1146. package/docs/zh/migration_from_vue-i18n_to_intlayer.md +8 -4
  1147. package/docs/zh/releases/v9.md +101 -25
  1148. package/docs/zh/self_hosting.md +350 -0
  1149. package/docs/zh-TW/bundle_optimization.md +16 -0
  1150. package/docs/zh-TW/intlayer_with_angular_21.md +8 -4
  1151. package/package.json +10 -10
  1152. package/src/generated/docs.entry.ts +60 -0
@@ -0,0 +1,350 @@
1
+ ---
2
+ createdAt: 2026-06-30
3
+ updatedAt: 2026-06-30
4
+ title: Tự host Intlayer
5
+ description: Chạy một phiên bản Intlayer hoàn chỉnh trên hạ tầng của riêng bạn chỉ với một lệnh duy nhất. Không yêu cầu tài khoản Intlayer Cloud.
6
+ keywords:
7
+ - Self-Hosting
8
+ - Docker
9
+ - Docker Compose
10
+ - Intlayer
11
+ - CMS
12
+ - Installation
13
+ - Infrastructure
14
+ slugs:
15
+ - doc
16
+ - self-hosting
17
+ author: aymericzip
18
+ ---
19
+
20
+ # Tự host Intlayer
21
+
22
+ Intlayer có thể chạy hoàn toàn trên hạ tầng của riêng bạn — không yêu cầu tài khoản Intlayer Cloud. Chỉ một lệnh duy nhất sẽ khởi động một stack sẵn sàng cho production:
23
+
24
+ ```sh
25
+ curl -fsSL https://intlayer.org/install.sh | sh
26
+ ```
27
+
28
+ Trình cài đặt sẽ tải xuống `docker-compose.yml` và `.env`, tự động tạo các secret cần thiết, và khởi động tất cả các container với `docker compose up -d`.
29
+
30
+ ## Mục lục
31
+
32
+ <TOC/>
33
+
34
+ ---
35
+
36
+ ## Kiến trúc
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 (được sử dụng để tạo ảnh chụp màn hình Puppeteer) được đóng gói bên trong image backend — không cần container riêng.
54
+
55
+ ---
56
+
57
+ ## Điều kiện tiên quyết
58
+
59
+ - **Docker** ≥ 24 và **Docker Compose** ≥ v2. Nếu thiếu một trong hai, trình cài đặt sẽ in liên kết cài đặt và thoát.
60
+ - Các cổng `3000`, `3100`, `8025`, `9000`, và `9001` phải khả dụng trên host.
61
+ - Host chạy Linux hoặc macOS (hoặc WSL2 trên Windows).
62
+
63
+ ---
64
+
65
+ ## Bắt đầu nhanh
66
+
67
+ ```sh
68
+ curl -fsSL https://intlayer.org/install.sh | sh
69
+ ```
70
+
71
+ Những gì trình cài đặt thực hiện:
72
+
73
+ 1. Kiểm tra xem `docker` và `docker compose` có tồn tại không.
74
+ 2. Tải xuống `docker-compose.yml` và `.env.example` vào `./intlayer/`.
75
+ 3. Nếu không có `.env` tồn tại, sao chép file ví dụ và tạo các secret ngẫu nhiên cho `BETTER_AUTH_SECRET`, `S3_ACCESS_KEY_ID`, và `S3_SECRET_ACCESS_KEY` thông qua `openssl rand`.
76
+ 4. Chạy `docker compose pull` + `docker compose up -d`.
77
+ 5. In các URL: dashboard `:3000`, API `:3100`, UI email `:8025`, console MinIO `:9001`.
78
+
79
+ Sau khi stack hoạt động, mở **http://localhost:3000** và tạo tài khoản đầu tiên của bạn.
80
+
81
+ ---
82
+
83
+ ## Các dịch vụ
84
+
85
+ | Dịch vụ | Image | Cổng Host | Mục đích |
86
+ | ----------- | ------------------------------------------ | ------------------------------ | ---------------------------------------------------------------- |
87
+ | **app** | được xây dựng từ `apps/app/Dockerfile` | `3000` | Dashboard TanStack Start (UI của CMS) |
88
+ | **backend** | được xây dựng từ `apps/backend/Dockerfile` | `3100` | API REST Fastify (endpoint `/health`) |
89
+ | **mongo** | `mongo:7` | nội bộ | Bộ nhân bản một node (`rs0`) |
90
+ | **redis** | `redis:7-alpine` | nội bộ | Hàng đợi công việc (BullMQ) và caching (ioredis) |
91
+ | **minio** | `minio/minio` | `9000` (S3), `9001` (console) | Lưu trữ đối tượng tương thích S3 cho avatar và ảnh chụp màn hình |
92
+ | **mailpit** | `axllent/mailpit` | `1025` (SMTP), `8025` (web UI) | Nơi nhận email giao dịch cục bộ |
93
+
94
+ Các cổng nội bộ (mongo, redis) không được phơi bày ra host theo mặc định.
95
+
96
+ > Cổng MinIO `9000` phải có thể truy cập được bởi trình duyệt vì các tài sản được tải lên (avatars, ảnh chụp màn hình) được tải trực tiếp từ `S3_PUBLIC_URL=http://localhost:9000/intlayer`.
97
+
98
+ ---
99
+
100
+ ## Các biến môi trường
101
+
102
+ Trình cài đặt tạo ra một file `.env` sẵn sàng để sử dụng. Bảng dưới đây mô tả từng biến.
103
+
104
+ ### Bắt buộc (tự động tạo hoặc được nhắc nhở)
105
+
106
+ | Biến | Ví dụ | Mô tả |
107
+ | ---------------------- | ----------------------------------------------- | ------------------------------------------------- |
108
+ | `NODE_ENV` | `production` | Môi trường runtime |
109
+ | `PORT` | `3100` | Cổng lắng nghe của Backend |
110
+ | `BACKEND_URL` | `http://localhost:3100` | URL công khai của API backend |
111
+ | `APP_URL` | `http://localhost:3000` | URL công khai của dashboard |
112
+ | `DOMAIN` | `localhost` | Miền cookie |
113
+ | `MONGODB_URI` | `mongodb://mongo:27017/intlayer?replicaSet=rs0` | URI kết nối MongoDB đầy đủ |
114
+ | `REDIS_URL` | `redis://redis:6379` | URL kết nối Redis |
115
+ | `BETTER_AUTH_SECRET` | _(được tạo)_ | Secret 32-byte để ký session |
116
+ | `MAIL_PROVIDER` | `smtp` | Phương thức gửi mail: `smtp` hoặc `resend` |
117
+ | `MAIL_SMTP_HOST` | `mailpit` | Tên host SMTP (tên container Mailpit) |
118
+ | `MAIL_SMTP_PORT` | `1025` | Cổng SMTP |
119
+ | `MAIL_FROM` | `Intlayer <no-reply@localhost>` | Địa chỉ người gửi |
120
+ | `S3_ENDPOINT` | `http://minio:9000` | Endpoint tương thích S3 |
121
+ | `S3_PUBLIC_URL` | `http://localhost:9000/intlayer` | URL công khai để trình duyệt tải tài sản |
122
+ | `S3_BUCKET_NAME` | `intlayer` | Tên bucket |
123
+ | `S3_ACCESS_KEY_ID` | _(được tạo)_ | Khóa truy cập MinIO |
124
+ | `S3_SECRET_ACCESS_KEY` | _(được tạo)_ | Khóa bí mật MinIO |
125
+ | `VITE_BACKEND_URL` | `http://localhost:3100` | URL backend được tích hợp vào dashboard khi build |
126
+ | `VITE_DOMAIN` | `localhost` | Miền được tích hợp vào dashboard khi build |
127
+
128
+ ### Tùy chọn (tính năng sẽ suy giảm khi không có)
129
+
130
+ | Biến | Tính năng |
131
+ | -------------------------------------------------------- | -------------------------------------------------------------- |
132
+ | `OPENAI_API_KEY` | Dịch thuật và kiểm tra nội dung có sự hỗ trợ của AI |
133
+ | `STRIPE_SECRET_KEY`, `STRIPE_WEBHOOK_SECRET`, `STRIPE_*` | Quản lý thanh toán và đăng ký |
134
+ | `RESEND_API_KEY` | Email giao dịch qua Resend (ghi đè Mailpit khi được thiết lập) |
135
+ | `GITHUB_CLIENT_ID`, `GITHUB_CLIENT_SECRET` | Đăng nhập GitHub OAuth |
136
+ | `GOOGLE_CLIENT_ID`, `GOOGLE_CLIENT_SECRET` | Đăng nhập Google OAuth |
137
+ | `GITLAB_CLIENT_ID`, `GITLAB_CLIENT_SECRET` | Đăng nhập GitLab OAuth |
138
+ | `MICROSOFT_CLIENT_ID`, `MICROSOFT_CLIENT_SECRET` | Đăng nhập Microsoft OAuth |
139
+ | `LINKEDIN_CLIENT_ID`, `LINKEDIN_CLIENT_SECRET` | Đăng nhập LinkedIn OAuth |
140
+ | `ATLASSIAN_CLIENT_ID`, `ATLASSIAN_CLIENT_SECRET` | Đăng nhập Atlassian OAuth |
141
+
142
+ ---
143
+
144
+ ## Kết nối dự án Intlayer của bạn
145
+
146
+ Khi stack đang chạy, hãy trỏ dự án của bạn đến backend và dashboard được tự host thay vì `intlayer.org`.
147
+
148
+ ### Cấu hình dự án
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 của dashboard CMS được tự host.
160
+ * Mặc định: https://app.intlayer.org
161
+ */
162
+ cmsURL: process.env.INTLAYER_CMS_URL, // ví dụ: http://localhost:3000
163
+
164
+ /**
165
+ * URL của API backend được tự host.
166
+ * Mặc định: https://back.intlayer.org
167
+ */
168
+ backendURL: process.env.INTLAYER_BACKEND_URL, // ví dụ: http://localhost:3100
169
+ },
170
+ };
171
+
172
+ export default config;
173
+ ```
174
+
175
+ Thiết lập các biến môi trường trong file `.env` của dự án bạn:
176
+
177
+ ```sh
178
+ INTLAYER_CMS_URL=http://localhost:3000
179
+ INTLAYER_BACKEND_URL=http://localhost:3100
180
+ INTLAYER_CLIENT_ID=<your-client-id>
181
+ INTLAYER_CLIENT_SECRET=<your-client-secret>
182
+ ```
183
+
184
+ Tạo thông tin truy cập trong dashboard được tự host của bạn dưới mục **Projects → Access keys** tại `http://localhost:3000/projects`.
185
+
186
+ ### SDK `@intlayer/api`
187
+
188
+ Khi sử dụng SDK `@intlayer/api` theo cách lập trình, hãy truyền `backendURL` một cách rõ ràng:
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
+ ## Nâng cấp
208
+
209
+ Chạy lại trình cài đặt trên một triển khai hiện có sẽ thực hiện nâng cấp cuốn chiếu (rolling upgrade):
210
+
211
+ ```sh
212
+ curl -fsSL https://intlayer.org/install.sh | sh
213
+ ```
214
+
215
+ Thao tác này sẽ kéo các image mới nhất và khởi động lại các container với `docker compose pull && docker compose up -d`. Các volume hiện có (`mongo-data`, `redis-data`, `minio-data`) được bảo toàn — không mất dữ liệu.
216
+
217
+ Để nâng cấp thủ công từ bên trong thư mục `./intlayer/`:
218
+
219
+ ```sh
220
+ docker compose pull
221
+ docker compose up -d
222
+ ```
223
+
224
+ ---
225
+
226
+ ## Sao lưu và phục hồi
227
+
228
+ Tất cả dữ liệu bền vững nằm trong ba Docker volume được đặt tên.
229
+
230
+ ### Sao lưu
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
+ ### Phục hồi
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
+ # Lặp lại cho redis-data và minio-data
258
+ ```
259
+
260
+ ---
261
+
262
+ ## Sử dụng reverse proxy (Nginx / Caddy)
263
+
264
+ Đối với các triển khai production, hãy đặt một reverse proxy phía trước các container app và backend thay vì phơi bày chúng trực tiếp.
265
+
266
+ ### Ví dụ 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
+ Cập nhật các biến `.env` sau để khớp với các miền công khai của bạn:
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
+ > Các biến `VITE_*` được tích hợp vào image dashboard tại thời điểm build. Nếu bạn thay đổi chúng sau khi image được build, bạn cần build lại image `app` (`docker compose build app`) hoặc sử dụng cấu hình runtime injection.
303
+
304
+ ---
305
+
306
+ ## Khắc phục sự cố
307
+
308
+ ### Backend bị crash-loop khi khởi động lần đầu
309
+
310
+ MongoDB và Redis phải hoạt động tốt trước khi backend khởi động. File compose sử dụng `depends_on` với `condition: service_healthy`. Nếu bạn thấy backend khởi động lại liên tục, hãy kiểm tra xem healthcheck của `mongo` và `redis` có vượt qua không:
311
+
312
+ ```sh
313
+ docker compose ps
314
+ docker compose logs mongo
315
+ docker compose logs redis
316
+ ```
317
+
318
+ ### Dashboard không thể kết nối tới API
319
+
320
+ Xác minh rằng `VITE_BACKEND_URL` khớp với URL mà backend có thể truy cập được từ **trình duyệt** (không phải mạng Docker). Nếu bạn đã thay đổi cổng backend hoặc thêm reverse proxy, hãy build lại image dashboard:
321
+
322
+ ```sh
323
+ docker compose build app
324
+ docker compose up -d app
325
+ ```
326
+
327
+ ### Email không gửi được
328
+
329
+ Theo mặc định, tất cả email gửi đi được Mailpit thu nhận. Mở `http://localhost:8025` để xem các tin nhắn đã gửi. Để gửi email thật, hãy đặt `MAIL_PROVIDER=resend` và `RESEND_API_KEY=<your-key>` trong `.env`, sau đó khởi động lại backend:
330
+
331
+ ```sh
332
+ docker compose restart backend
333
+ ```
334
+
335
+ ### Thiếu MinIO bucket
336
+
337
+ Nếu dịch vụ một lần chạy `minio-init` không chạy (hoặc chạy trước khi MinIO sẵn sàng), hãy tạo bucket thủ công:
338
+
339
+ ```sh
340
+ docker compose run --rm minio-init
341
+ ```
342
+
343
+ ---
344
+
345
+ ## Các liên kết hữu ích
346
+
347
+ - [Tài liệu Intlayer CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_CMS.md)
348
+ - [Tham chiếu cấu hình](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/configuration.md)
349
+ - [CMS SDK — `@intlayer/api`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/intlayer_CMS.md#programmatic-access-with-the-intlayerapi-sdk)
350
+ - [Docker Image (aymercizip/intlayer-selfhost)](https://hub.docker.com/repository/docker/aymercizip/intlayer-selfhost/general)
@@ -231,6 +231,9 @@ Next.js 需要依靠 `@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` 以决定插件配置,因此上述 Babel 插件能够在进入 SWC 前作为预处理步骤得以执行。
@@ -125,7 +125,7 @@ Intlayer 接受多种配置文件格式:
125
125
 
126
126
  ### 身份验证
127
127
 
128
- - **[Login](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/login.md)** - 在 Intlayer CMS 中进行身份验证并获取访问凭据
128
+ - **[Login](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/cli/login.md)** - 在 Intlayer CMS 中进行身份验证并获取访问凭据
129
129
 
130
130
  ### 核心命令
131
131
 
@@ -150,10 +150,10 @@ await scan("https://example.com", {
150
150
  });
151
151
  ```
152
152
 
153
- 对于更低级别的访问,来自 `@intlayer/chokidar/scan` 的 `scanWebsite` 会返回一个结构化的 `ScanResult` 对象:
153
+ 对于更低级别的访问,来自 `@intlayer/engine/scan` 的 `scanWebsite` 会返回一个结构化的 `ScanResult` 对象:
154
154
 
155
155
  ```ts
156
- import { scanWebsite } from "@intlayer/chokidar/scan";
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);
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2024-08-13
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-07-11
4
4
  title: 配置
5
5
  description: 了解如何为您的应用程序配置 Intlayer。了解可用于根据您的需求自定义 Intlayer 的各种设置和选项。
6
6
  keywords:
@@ -14,6 +14,9 @@ slugs:
14
14
  - concept
15
15
  - configuration
16
16
  history:
17
+ - version: 9.0.0
18
+ date: 2026-07-11
19
+ changes: "添加 `analytics` 配置"
17
20
  - version: 9.0.0
18
21
  date: 2026-06-24
19
22
  changes: "Add `enableProxy` option to the routing configuration"
@@ -355,6 +358,30 @@ const config: IntlayerConfig = {
355
358
  liveSync: true,
356
359
  },
357
360
 
361
+ /**
362
+ * 分析(analytics)配置。
363
+ */
364
+ analytics: {
365
+ /**
366
+ * 是否启用分析数据收集(页面浏览量、内容曝光、A/B 事件)。
367
+ * 需要设置 `editor.clientId` 以进行归因。
368
+ * 默认值:false
369
+ */
370
+ enabled: true,
371
+
372
+ /**
373
+ * 自动批量发送到后端之间的毫秒数。
374
+ * 默认值:20000
375
+ */
376
+ flushInterval: 20000,
377
+
378
+ /**
379
+ * 要记录的会话比例,从 0(不记录)到 1(全部记录)。
380
+ * 默认值:1
381
+ */
382
+ sampleRate: 1,
383
+ },
384
+
358
385
  /**
359
386
  * 使用 AI 进行翻译和生成的设置。
360
387
  */
@@ -671,6 +698,20 @@ export default config;
671
698
 
672
699
  ---
673
700
 
701
+ ### 分析配置 (Analytics)
702
+
703
+ 定义与 Intlayer 分析相关的设置:收集实际展示给用户的内容(页面浏览量、内容曝光),并支持内容的 A/B 测试。
704
+
705
+ 分析功能严格采用选择加入(opt-in)模式:除非将 `analytics.enabled` 显式设置为 `true` **并且** 配置了用于归因的项目密钥(`editor.clientId`),否则不会收集任何数据。禁用时(默认),整个分析集成会从应用程序打包结果中被移除(死代码消除)。
706
+
707
+ | 字段 | 描述 | 类型 | 默认值 | 示例 | 说明 |
708
+ | --------------- | ------------------------------------------------------ | --------- | ------- | ------- | --------------------------------------------------------------------------------------------- |
709
+ | `enabled` | 启用分析数据收集(页面浏览量、内容曝光、A/B 事件)。 | `boolean` | `false` | `true` | 需要设置 `editor.clientId` 以进行归因;否则即使 `enabled` 为 `true`,分析功能仍保持禁用状态。 |
710
+ | `flushInterval` | 自动批量发送到后端之间的毫秒数。 | `number` | `20000` | `10000` | |
711
+ | `sampleRate` | 要记录的会话比例,从 `0`(不记录)到 `1`(全部记录)。 | `number` | `1` | `0.5` | 采样按会话确定性进行,因此被记录的会话会报告其所有事件(不会出现部分漏斗)。 |
712
+
713
+ ---
714
+
674
715
  ### 路由配置 (Routing)
675
716
 
676
717
  控制路由行为的设置,包括 URL 结构、区域设置存储和中间件管理。
@@ -219,9 +219,9 @@ Intlayer 由多个包组成,每个包在翻译过程中都有特定的角色
219
219
 
220
220
  `@intlayer/dictionaries-entry`、`@intlayer/unmerged-dictionaries-entry` 和 `@intlayer/dynamic-dictionaries-entry` 包返回 Intlayer 字典的入口路径。由于浏览器无法搜索文件系统,因此无法使用像 Webpack 或 Rollup 这样的打包工具来获取字典的入口路径。这些包设计为别名,以便在 Vite、Webpack 和 Turbopack 等各种打包工具中进行打包优化。
221
221
 
222
- ### @intlayer/chokidar
222
+ ### @intlayer/engine
223
223
 
224
- `@intlayer/chokidar` 包用于监视内容文件,并在每次修改时重新生成被修改的字典。
224
+ `@intlayer/engine` 包用于监视内容文件,并在每次修改时重新生成被修改的字典。
225
225
 
226
226
  ### @intlayer/editor
227
227
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-08-23
3
- updatedAt: 2025-08-23
3
+ updatedAt: 2026-07-08
4
4
  title: Intlayer CMS | 将您的内容外部化到 Intlayer CMS
5
5
  description: 将您的内容外部化到 Intlayer CMS,以将内容管理委托给您的团队。
6
6
  keywords:
@@ -18,6 +18,9 @@ slugs:
18
18
  - cms
19
19
  youtubeVideo: https://www.youtube.com/watch?v=UDDTnirwi_4
20
20
  history:
21
+ - version: 9.0.0
22
+ date: 2026-07-08
23
+ changes: "将「实时同步」章节移动到独立页面(live-sync.md),此处仅保留简短介绍和链接"
21
24
  - version: 6.0.1
22
25
  date: 2025-09-22
23
26
  changes: "添加实时同步文档"
@@ -245,134 +248,7 @@ bun x intlayer dictionary push -d my-first-dictionary-key --env production
245
248
 
246
249
  实时同步让您的应用在运行时反映 CMS 内容的更改。无需重新构建或重新部署。启用后,更新会被流式传输到实时同步服务器,刷新您的应用读取的字典。
247
250
 
248
- > 实时同步需要持续的服务器连接,并且仅在企业版计划中可用。
249
-
250
- 通过更新您的 Intlayer 配置来启用实时同步:
251
-
252
- ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
253
- import type { IntlayerConfig } from "intlayer";
254
-
255
- const config: IntlayerConfig = {
256
- // ... 其他配置设置
257
- editor: {
258
- /**
259
- * 当检测到更改时,启用本地配置的热重载。
260
- * 例如,当添加或更新字典时,应用程序会更新页面上显示的内容。
261
- *
262
- * 由于热重载需要与服务器保持持续连接,
263
- * 因此仅对 `enterprise` 计划的客户开放。
264
- *
265
- * 默认值:false
266
- */
267
- liveSync: true,
268
- },
269
- dictionary: {
270
- /**
271
- * 控制字典的导入方式:
272
- *
273
- * - "live":字典通过 Live Sync API 动态获取。
274
- * 替换 useIntlayer 为 useDictionaryDynamic。
275
- *
276
- * 注意:Live 模式使用 Live Sync API 获取字典。如果 API 调用失败,
277
- * 字典将动态导入。
278
- * 注意:只有带有远程内容和 "live" 标志的字典使用 live 模式。
279
- * 其他字典为了性能使用动态模式。
280
- */
281
- importMode: "fetch",
282
- },
283
- };
284
-
285
- export default config;
286
- ```
287
-
288
- 启动 Live Sync 服务器以包裹您的应用程序:
289
-
290
- 使用 Next.js 的示例:
291
-
292
- ```json5 fileName="package.json"
293
- {
294
- "scripts": {
295
- // ... 其他脚本
296
- "build": "next build",
297
- "dev": "next dev",
298
- "start": "npx intlayer live --with 'next start'",
299
- },
300
- }
301
- ```
302
-
303
- 使用 Vite 的示例:
304
-
305
- ```json5 fileName="package.json"
306
- {
307
- "scripts": {
308
- // ... 其他脚本
309
- "build": "vite build",
310
- "dev": "vite dev",
311
- "start": "npx intlayer live --with 'vite start'",
312
- },
313
- }
314
- ```
315
-
316
- Live Sync 服务器包裹您的应用程序,并在更新内容到达时自动应用。
317
-
318
- 为了接收来自 CMS 的变更通知,Live Sync 服务器会与后端保持 SSE 连接。当 CMS 中的内容发生变化时,后端会将更新转发给 Live Sync 服务器,服务器会写入新的字典。您的应用将在下一次导航或浏览器刷新时反映更新, 无需重新构建。
319
-
320
- 流程图(CMS/后端 -> Live Sync 服务器 -> 应用服务器 -> 前端):
321
-
322
- ![Live Sync 逻辑示意图](https://github.com/aymericzip/intlayer/blob/main/docs/assets/live_sync_logic_schema.svg)
323
-
324
- 工作原理:
325
-
326
- ![Live Sync 流程 CMS/后端/Live Sync 服务器/应用服务器/前端示意图](https://github.com/aymericzip/intlayer/blob/main/docs/assets/live_sync_flow_scema.svg)
327
-
328
- ### 开发工作流程(本地)
329
-
330
- - 在开发过程中,应用启动时会获取所有远程字典,因此您可以快速测试更新。
331
- - 要在本地使用 Next.js 测试 Live Sync,请包装您的开发服务器:
332
-
333
- ```json5 fileName="package.json"
334
- {
335
- "scripts": {
336
- // ... 其他脚本
337
- "dev": "npx intlayer live --with 'next dev'",
338
- // "dev": "npx intlayer live --with 'vite dev'", // 适用于 Vite
339
- },
340
- }
341
- ```
342
-
343
- 启用优化,以便 Intlayer 在开发期间应用实时导入转换:
344
-
345
- ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
346
- import type { IntlayerConfig } from "intlayer";
347
-
348
- const config: IntlayerConfig = {
349
- editor: {
350
- applicationURL: "http://localhost:5173",
351
- liveSyncURL: "http://localhost:4000",
352
- liveSync: true,
353
- },
354
- dictionary: {
355
- importMode: "fetch",
356
- },
357
- build: {
358
- optimize: true,
359
- },
360
- };
361
-
362
- export default config;
363
- ```
364
-
365
- 此设置将您的开发服务器与实时同步服务器包装在一起,在启动时获取远程字典,并通过 SSE 从 CMS 流式传输更新。刷新页面以查看更改。
366
-
367
- 注意事项和限制:
368
-
369
- - 将实时同步源添加到您的站点安全策略(CSP)中。确保实时同步 URL 被允许在 `connect-src` 中(如果相关,也包括 `frame-ancestors`)。
370
- - 实时同步不适用于静态输出。对于 Next.js,页面必须是动态的才能在运行时接收更新(例如,适当使用 `generateStaticParams`、`generateMetadata`、`getServerSideProps` 或 `getStaticProps`,以避免完全静态的限制)。
371
- - 应用程序 URL 应与您在编辑器配置中设置的 URL (`applicationURL`) 匹配。
372
- - CMS URL
373
- - 确保项目配置已推送到 Intlayer CMS。
374
-
375
- - 可视化编辑器使用 iframe 来显示您的网站。确保您网站的内容安全策略(CSP)允许 CMS URL 作为 `frame-ancestors`(默认是 'https://intlayer.org')。检查编辑器控制台是否有任何错误。
251
+ 完整的设置指南(启用方式、启动 Live Sync 服务器、本地开发工作流程和限制条件)请参阅 [Live Sync 文档](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/live-sync.md)。
376
252
 
377
253
  ## 调试
378
254
 
@@ -60,19 +60,23 @@ See [Application Template](https://github.com/aymericzip/intlayer-adonis-templat
60
60
  要开始使用 `adonis-intlayer`,请使用 npm 安装该包:
61
61
 
62
62
  ```bash packageManager="npm"
63
- npx intlayer-cli init --interactive
63
+ npx intlayer@canary init --interactive # v9
64
+ # npx intlayer init # v8
64
65
  ```
65
66
 
66
67
  ```bash packageManager="pnpm"
67
- pnpm dlx intlayer-cli init --interactive
68
+ pnpm dlx intlayer@canary init --interactive # v9
69
+ # pnpm dlx intlayer init # v8
68
70
  ```
69
71
 
70
72
  ```bash packageManager="yarn"
71
- yarn dlx intlayer-cli init --interactive
73
+ yarn dlx intlayer@canary init --interactive # v9
74
+ # yarn dlx intlayer init # v8
72
75
  ```
73
76
 
74
77
  ```bash packageManager="bun"
75
- bunx intlayer-cli init --interactive
78
+ bunx intlayer@canary init --interactive # v9
79
+ # bunx intlayer init # v8
76
80
  ```
77
81
 
78
82
  > `--interactive` 标志是可选的。如果您是 AI 代理,请使用 `intlayer-cli init`。