@intlayer/docs 9.0.0-canary.11 → 9.0.0-canary.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1021) 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-GB/internationalization_and_SEO.md +6 -0
  26. package/blog/en-GB/intlayer_with_i18next.md +8 -4
  27. package/blog/en-GB/intlayer_with_next-i18next.md +8 -4
  28. package/blog/en-GB/intlayer_with_next-intl.md +8 -4
  29. package/blog/en-GB/intlayer_with_react-i18next.md +8 -4
  30. package/blog/en-GB/intlayer_with_react-intl.md +8 -4
  31. package/blog/en-GB/intlayer_with_vue-i18n.md +8 -4
  32. package/blog/en-GB/nextjs-multilingual-seo-comparison.md +6 -0
  33. package/blog/es/internationalization_and_SEO.md +6 -0
  34. package/blog/es/intlayer_with_i18next.md +8 -4
  35. package/blog/es/intlayer_with_next-i18next.md +8 -4
  36. package/blog/es/intlayer_with_next-intl.md +8 -4
  37. package/blog/es/intlayer_with_react-i18next.md +8 -4
  38. package/blog/es/intlayer_with_react-intl.md +8 -4
  39. package/blog/es/intlayer_with_vue-i18n.md +8 -4
  40. package/blog/es/nextjs-multilingual-seo-comparison.md +6 -0
  41. package/blog/fr/internationalization_and_SEO.md +6 -0
  42. package/blog/fr/intlayer_with_i18next.md +8 -4
  43. package/blog/fr/intlayer_with_next-i18next.md +8 -4
  44. package/blog/fr/intlayer_with_next-intl.md +8 -4
  45. package/blog/fr/intlayer_with_react-i18next.md +8 -4
  46. package/blog/fr/intlayer_with_react-intl.md +8 -4
  47. package/blog/fr/intlayer_with_vue-i18n.md +8 -4
  48. package/blog/fr/nextjs-multilingual-seo-comparison.md +6 -0
  49. package/blog/hi/internationalization_and_SEO.md +6 -0
  50. package/blog/hi/intlayer_with_i18next.md +8 -4
  51. package/blog/hi/intlayer_with_next-i18next.md +8 -4
  52. package/blog/hi/intlayer_with_next-intl.md +8 -4
  53. package/blog/hi/intlayer_with_react-i18next.md +8 -4
  54. package/blog/hi/intlayer_with_react-intl.md +8 -4
  55. package/blog/hi/intlayer_with_vue-i18n.md +8 -4
  56. package/blog/hi/nextjs-multilingual-seo-comparison.md +6 -0
  57. package/blog/id/internationalization_and_SEO.md +6 -0
  58. package/blog/id/intlayer_with_i18next.md +8 -4
  59. package/blog/id/intlayer_with_next-i18next.md +8 -4
  60. package/blog/id/intlayer_with_next-intl.md +8 -4
  61. package/blog/id/intlayer_with_react-i18next.md +8 -4
  62. package/blog/id/intlayer_with_react-intl.md +8 -4
  63. package/blog/id/intlayer_with_vue-i18n.md +8 -4
  64. package/blog/id/nextjs-multilingual-seo-comparison.md +6 -0
  65. package/blog/it/internationalization_and_SEO.md +6 -0
  66. package/blog/it/intlayer_with_i18next.md +8 -4
  67. package/blog/it/intlayer_with_next-i18next.md +8 -4
  68. package/blog/it/intlayer_with_next-intl.md +8 -4
  69. package/blog/it/intlayer_with_react-i18next.md +8 -4
  70. package/blog/it/intlayer_with_react-intl.md +8 -4
  71. package/blog/it/intlayer_with_vue-i18n.md +8 -4
  72. package/blog/it/nextjs-multilingual-seo-comparison.md +6 -0
  73. package/blog/ja/internationalization_and_SEO.md +6 -0
  74. package/blog/ja/intlayer_with_i18next.md +8 -4
  75. package/blog/ja/intlayer_with_next-i18next.md +8 -4
  76. package/blog/ja/intlayer_with_next-intl.md +8 -4
  77. package/blog/ja/intlayer_with_react-i18next.md +8 -4
  78. package/blog/ja/intlayer_with_react-intl.md +8 -4
  79. package/blog/ja/intlayer_with_vue-i18n.md +8 -4
  80. package/blog/ja/nextjs-multilingual-seo-comparison.md +6 -0
  81. package/blog/ko/internationalization_and_SEO.md +6 -0
  82. package/blog/ko/intlayer_with_i18next.md +8 -4
  83. package/blog/ko/intlayer_with_next-i18next.md +8 -4
  84. package/blog/ko/intlayer_with_next-intl.md +8 -4
  85. package/blog/ko/intlayer_with_react-i18next.md +8 -4
  86. package/blog/ko/intlayer_with_react-intl.md +8 -4
  87. package/blog/ko/intlayer_with_vue-i18n.md +8 -4
  88. package/blog/ko/nextjs-multilingual-seo-comparison.md +6 -0
  89. package/blog/pl/internationalization_and_SEO.md +6 -0
  90. package/blog/pl/intlayer_with_i18next.md +8 -4
  91. package/blog/pl/intlayer_with_next-i18next.md +8 -4
  92. package/blog/pl/intlayer_with_next-intl.md +8 -4
  93. package/blog/pl/intlayer_with_react-i18next.md +8 -4
  94. package/blog/pl/intlayer_with_react-intl.md +8 -4
  95. package/blog/pl/intlayer_with_vue-i18n.md +8 -4
  96. package/blog/pl/nextjs-multilingual-seo-comparison.md +6 -0
  97. package/blog/pt/internationalization_and_SEO.md +6 -0
  98. package/blog/pt/intlayer_with_i18next.md +8 -4
  99. package/blog/pt/intlayer_with_next-i18next.md +8 -4
  100. package/blog/pt/intlayer_with_next-intl.md +8 -4
  101. package/blog/pt/intlayer_with_react-i18next.md +8 -4
  102. package/blog/pt/intlayer_with_react-intl.md +8 -4
  103. package/blog/pt/intlayer_with_vue-i18n.md +8 -4
  104. package/blog/pt/nextjs-multilingual-seo-comparison.md +6 -0
  105. package/blog/ru/internationalization_and_SEO.md +6 -0
  106. package/blog/ru/intlayer_with_i18next.md +8 -4
  107. package/blog/ru/intlayer_with_next-i18next.md +8 -4
  108. package/blog/ru/intlayer_with_next-intl.md +8 -4
  109. package/blog/ru/intlayer_with_react-i18next.md +8 -4
  110. package/blog/ru/intlayer_with_react-intl.md +8 -4
  111. package/blog/ru/intlayer_with_vue-i18n.md +8 -4
  112. package/blog/ru/nextjs-multilingual-seo-comparison.md +6 -0
  113. package/blog/tr/internationalization_and_SEO.md +6 -0
  114. package/blog/tr/intlayer_with_i18next.md +8 -4
  115. package/blog/tr/intlayer_with_next-i18next.md +8 -4
  116. package/blog/tr/intlayer_with_next-intl.md +8 -4
  117. package/blog/tr/intlayer_with_react-i18next.md +8 -4
  118. package/blog/tr/intlayer_with_react-intl.md +8 -4
  119. package/blog/tr/intlayer_with_vue-i18n.md +8 -4
  120. package/blog/tr/nextjs-multilingual-seo-comparison.md +6 -0
  121. package/blog/uk/internationalization_and_SEO.md +6 -0
  122. package/blog/uk/intlayer_with_i18next.md +8 -4
  123. package/blog/uk/intlayer_with_next-i18next.md +8 -4
  124. package/blog/uk/intlayer_with_next-intl.md +8 -4
  125. package/blog/uk/intlayer_with_react-i18next.md +8 -4
  126. package/blog/uk/intlayer_with_react-intl.md +8 -4
  127. package/blog/uk/intlayer_with_vue-i18n.md +8 -4
  128. package/blog/uk/nextjs-multilingual-seo-comparison.md +6 -0
  129. package/blog/vi/internationalization_and_SEO.md +6 -0
  130. package/blog/vi/intlayer_with_i18next.md +8 -4
  131. package/blog/vi/intlayer_with_next-i18next.md +8 -4
  132. package/blog/vi/intlayer_with_next-intl.md +8 -4
  133. package/blog/vi/intlayer_with_react-i18next.md +8 -4
  134. package/blog/vi/intlayer_with_react-intl.md +8 -4
  135. package/blog/vi/intlayer_with_vue-i18n.md +8 -4
  136. package/blog/vi/nextjs-multilingual-seo-comparison.md +6 -0
  137. package/blog/zh/internationalization_and_SEO.md +6 -0
  138. package/blog/zh/nextjs-multilingual-seo-comparison.md +6 -0
  139. package/docs/ar/bundle_optimization.md +16 -0
  140. package/docs/ar/cli/scan.md +2 -2
  141. package/docs/ar/how_works_intlayer.md +2 -2
  142. package/docs/ar/intlayer_with_adonisjs.md +8 -4
  143. package/docs/ar/intlayer_with_analog.md +8 -4
  144. package/docs/ar/intlayer_with_angular_19.md +8 -4
  145. package/docs/ar/intlayer_with_angular_21.md +8 -4
  146. package/docs/ar/intlayer_with_astro_lit.md +11 -7
  147. package/docs/ar/intlayer_with_astro_preact.md +8 -4
  148. package/docs/ar/intlayer_with_astro_react.md +8 -4
  149. package/docs/ar/intlayer_with_astro_solid.md +8 -4
  150. package/docs/ar/intlayer_with_astro_svelte.md +8 -4
  151. package/docs/ar/intlayer_with_astro_vanilla.md +8 -4
  152. package/docs/ar/intlayer_with_astro_vue.md +8 -4
  153. package/docs/ar/intlayer_with_create_react_app.md +8 -4
  154. package/docs/ar/intlayer_with_express.md +8 -4
  155. package/docs/ar/intlayer_with_fastify.md +8 -4
  156. package/docs/ar/intlayer_with_hono.md +8 -4
  157. package/docs/ar/intlayer_with_lynx+react.md +8 -4
  158. package/docs/ar/intlayer_with_nestjs.md +8 -4
  159. package/docs/ar/intlayer_with_next-i18next.md +8 -4
  160. package/docs/ar/intlayer_with_nextjs_14.md +8 -4
  161. package/docs/ar/intlayer_with_nextjs_15.md +10 -8
  162. package/docs/ar/intlayer_with_nextjs_16.md +10 -8
  163. package/docs/ar/intlayer_with_nextjs_compiler.md +9 -7
  164. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +10 -8
  165. package/docs/ar/intlayer_with_nextjs_page_router.md +8 -4
  166. package/docs/ar/intlayer_with_nuxt.md +9 -5
  167. package/docs/ar/intlayer_with_react_native+expo.md +8 -4
  168. package/docs/ar/intlayer_with_react_router_v7.md +9 -5
  169. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +9 -5
  170. package/docs/ar/intlayer_with_svelte_kit.md +8 -4
  171. package/docs/ar/intlayer_with_tanstack+solid.md +9 -5
  172. package/docs/ar/intlayer_with_tanstack.md +10 -7
  173. package/docs/ar/intlayer_with_vite+lit.md +8 -4
  174. package/docs/ar/intlayer_with_vite+preact.md +9 -5
  175. package/docs/ar/intlayer_with_vite+react.md +9 -5
  176. package/docs/ar/intlayer_with_vite+react_compiler.md +9 -5
  177. package/docs/ar/intlayer_with_vite+solid.md +9 -5
  178. package/docs/ar/intlayer_with_vite+svelte.md +8 -4
  179. package/docs/ar/intlayer_with_vite+vanilla.md +8 -4
  180. package/docs/ar/intlayer_with_vite+vue.md +9 -5
  181. package/docs/ar/migration_from_i18next_to_intlayer.md +8 -4
  182. package/docs/ar/migration_from_next-i18next_to_intlayer.md +8 -4
  183. package/docs/ar/migration_from_next-intl_to_intlayer.md +9 -7
  184. package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  185. package/docs/ar/migration_from_react-i18next_to_intlayer.md +9 -7
  186. package/docs/ar/migration_from_vue-i18n_to_intlayer.md +8 -4
  187. package/docs/ar/releases/v9.md +0 -18
  188. package/docs/ar/self_hosting.md +1 -0
  189. package/docs/bn/bundle_optimization.md +16 -0
  190. package/docs/bn/cli/scan.md +2 -2
  191. package/docs/bn/intlayer_with_angular_21.md +8 -4
  192. package/docs/bn/intlayer_with_fastify.md +8 -4
  193. package/docs/bn/intlayer_with_hono.md +8 -4
  194. package/docs/bn/intlayer_with_vite+lit.md +8 -4
  195. package/docs/bn/intlayer_with_vite+vanilla.md +8 -4
  196. package/docs/bn/releases/v9.md +0 -18
  197. package/docs/cs/bundle_optimization.md +16 -0
  198. package/docs/cs/cli/scan.md +2 -2
  199. package/docs/cs/intlayer_with_angular_21.md +8 -4
  200. package/docs/cs/intlayer_with_fastify.md +8 -4
  201. package/docs/cs/intlayer_with_hono.md +8 -4
  202. package/docs/cs/intlayer_with_vite+lit.md +8 -4
  203. package/docs/cs/intlayer_with_vite+vanilla.md +8 -4
  204. package/docs/cs/releases/v9.md +0 -18
  205. package/docs/de/bundle_optimization.md +16 -0
  206. package/docs/de/cli/scan.md +2 -2
  207. package/docs/de/how_works_intlayer.md +2 -2
  208. package/docs/de/intlayer_with_adonisjs.md +8 -4
  209. package/docs/de/intlayer_with_analog.md +8 -4
  210. package/docs/de/intlayer_with_angular_19.md +8 -4
  211. package/docs/de/intlayer_with_angular_21.md +8 -4
  212. package/docs/de/intlayer_with_astro_lit.md +11 -7
  213. package/docs/de/intlayer_with_astro_preact.md +8 -4
  214. package/docs/de/intlayer_with_astro_react.md +8 -4
  215. package/docs/de/intlayer_with_astro_solid.md +8 -4
  216. package/docs/de/intlayer_with_astro_svelte.md +8 -4
  217. package/docs/de/intlayer_with_astro_vanilla.md +8 -4
  218. package/docs/de/intlayer_with_astro_vue.md +8 -4
  219. package/docs/de/intlayer_with_create_react_app.md +8 -4
  220. package/docs/de/intlayer_with_express.md +8 -4
  221. package/docs/de/intlayer_with_fastify.md +8 -4
  222. package/docs/de/intlayer_with_hono.md +8 -4
  223. package/docs/de/intlayer_with_lynx+react.md +8 -4
  224. package/docs/de/intlayer_with_nestjs.md +8 -4
  225. package/docs/de/intlayer_with_next-i18next.md +8 -4
  226. package/docs/de/intlayer_with_nextjs_14.md +8 -4
  227. package/docs/de/intlayer_with_nextjs_15.md +10 -8
  228. package/docs/de/intlayer_with_nextjs_16.md +10 -8
  229. package/docs/de/intlayer_with_nextjs_no_locale_path.md +10 -8
  230. package/docs/de/intlayer_with_nextjs_page_router.md +8 -4
  231. package/docs/de/intlayer_with_nuxt.md +9 -5
  232. package/docs/de/intlayer_with_react_native+expo.md +8 -4
  233. package/docs/de/intlayer_with_react_router_v7.md +9 -5
  234. package/docs/de/intlayer_with_svelte_kit.md +8 -4
  235. package/docs/de/intlayer_with_tanstack+solid.md +9 -5
  236. package/docs/de/intlayer_with_tanstack.md +10 -7
  237. package/docs/de/intlayer_with_vite+lit.md +8 -4
  238. package/docs/de/intlayer_with_vite+preact.md +9 -5
  239. package/docs/de/intlayer_with_vite+react.md +9 -5
  240. package/docs/de/intlayer_with_vite+react_compiler.md +9 -5
  241. package/docs/de/intlayer_with_vite+solid.md +9 -5
  242. package/docs/de/intlayer_with_vite+vanilla.md +8 -4
  243. package/docs/de/intlayer_with_vite+vue.md +9 -5
  244. package/docs/de/migration_from_i18next_to_intlayer.md +8 -4
  245. package/docs/de/migration_from_next-i18next_to_intlayer.md +8 -4
  246. package/docs/de/migration_from_next-intl_to_intlayer.md +9 -7
  247. package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  248. package/docs/de/migration_from_react-i18next_to_intlayer.md +9 -7
  249. package/docs/de/migration_from_vue-i18n_to_intlayer.md +8 -4
  250. package/docs/de/releases/v9.md +0 -18
  251. package/docs/de/self_hosting.md +1 -0
  252. package/docs/en/bundle_optimization.md +16 -0
  253. package/docs/en/cli/scan.md +2 -2
  254. package/docs/en/how_works_intlayer.md +2 -2
  255. package/docs/en/intlayer_with_adonisjs.md +8 -4
  256. package/docs/en/intlayer_with_analog.md +8 -4
  257. package/docs/en/intlayer_with_angular_19.md +8 -4
  258. package/docs/en/intlayer_with_angular_21.md +8 -4
  259. package/docs/en/intlayer_with_astro.md +8 -4
  260. package/docs/en/intlayer_with_astro_lit.md +11 -7
  261. package/docs/en/intlayer_with_astro_preact.md +8 -4
  262. package/docs/en/intlayer_with_astro_react.md +8 -4
  263. package/docs/en/intlayer_with_astro_solid.md +8 -4
  264. package/docs/en/intlayer_with_astro_svelte.md +8 -4
  265. package/docs/en/intlayer_with_astro_vanilla.md +8 -4
  266. package/docs/en/intlayer_with_astro_vue.md +8 -4
  267. package/docs/en/intlayer_with_create_react_app.md +8 -4
  268. package/docs/en/intlayer_with_express.md +8 -4
  269. package/docs/en/intlayer_with_fastify.md +8 -4
  270. package/docs/en/intlayer_with_hono.md +8 -4
  271. package/docs/en/intlayer_with_lynx+react.md +8 -4
  272. package/docs/en/intlayer_with_nestjs.md +8 -4
  273. package/docs/en/intlayer_with_next-i18next.md +8 -4
  274. package/docs/en/intlayer_with_nextjs_14.md +8 -4
  275. package/docs/en/intlayer_with_nextjs_15.md +9 -7
  276. package/docs/en/intlayer_with_nextjs_16.md +10 -8
  277. package/docs/en/intlayer_with_nextjs_compiler.md +10 -8
  278. package/docs/en/intlayer_with_nextjs_no_locale_path.md +10 -8
  279. package/docs/en/intlayer_with_nextjs_page_router.md +8 -4
  280. package/docs/en/intlayer_with_nuxt.md +9 -5
  281. package/docs/en/intlayer_with_react_native+expo.md +8 -4
  282. package/docs/en/intlayer_with_react_router_v7.md +9 -5
  283. package/docs/en/intlayer_with_svelte_kit.md +8 -4
  284. package/docs/en/intlayer_with_tanstack+solid.md +9 -5
  285. package/docs/en/intlayer_with_tanstack.md +10 -7
  286. package/docs/en/intlayer_with_vite+lit.md +8 -4
  287. package/docs/en/intlayer_with_vite+preact.md +9 -5
  288. package/docs/en/intlayer_with_vite+react.md +9 -5
  289. package/docs/en/intlayer_with_vite+react_compiler.md +9 -5
  290. package/docs/en/intlayer_with_vite+solid.md +9 -5
  291. package/docs/en/intlayer_with_vite+svelte.md +8 -4
  292. package/docs/en/intlayer_with_vite+vanilla.md +8 -4
  293. package/docs/en/intlayer_with_vite+vue.md +9 -5
  294. package/docs/en/migration_from_i18next_to_intlayer.md +8 -4
  295. package/docs/en/migration_from_next-i18next_to_intlayer.md +8 -4
  296. package/docs/en/migration_from_next-intl_to_intlayer.md +9 -7
  297. package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  298. package/docs/en/migration_from_react-i18next_to_intlayer.md +9 -7
  299. package/docs/en/migration_from_vue-i18n_to_intlayer.md +8 -4
  300. package/docs/en/releases/v9.md +0 -18
  301. package/docs/en/self_hosting.md +105 -162
  302. package/docs/en-GB/bundle_optimization.md +16 -0
  303. package/docs/en-GB/cli/scan.md +2 -2
  304. package/docs/en-GB/how_works_intlayer.md +2 -2
  305. package/docs/en-GB/intlayer_with_adonisjs.md +8 -4
  306. package/docs/en-GB/intlayer_with_analog.md +8 -4
  307. package/docs/en-GB/intlayer_with_angular_19.md +8 -4
  308. package/docs/en-GB/intlayer_with_angular_21.md +8 -4
  309. package/docs/en-GB/intlayer_with_astro_lit.md +11 -7
  310. package/docs/en-GB/intlayer_with_astro_preact.md +8 -4
  311. package/docs/en-GB/intlayer_with_astro_react.md +8 -4
  312. package/docs/en-GB/intlayer_with_astro_solid.md +8 -4
  313. package/docs/en-GB/intlayer_with_astro_svelte.md +8 -4
  314. package/docs/en-GB/intlayer_with_astro_vanilla.md +8 -4
  315. package/docs/en-GB/intlayer_with_astro_vue.md +8 -4
  316. package/docs/en-GB/intlayer_with_create_react_app.md +16 -8
  317. package/docs/en-GB/intlayer_with_express.md +8 -4
  318. package/docs/en-GB/intlayer_with_fastify.md +8 -4
  319. package/docs/en-GB/intlayer_with_hono.md +8 -4
  320. package/docs/en-GB/intlayer_with_lynx+react.md +16 -8
  321. package/docs/en-GB/intlayer_with_nestjs.md +8 -4
  322. package/docs/en-GB/intlayer_with_next-i18next.md +8 -4
  323. package/docs/en-GB/intlayer_with_nextjs_14.md +8 -4
  324. package/docs/en-GB/intlayer_with_nextjs_15.md +10 -8
  325. package/docs/en-GB/intlayer_with_nextjs_16.md +10 -8
  326. package/docs/en-GB/intlayer_with_nextjs_compiler.md +9 -7
  327. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +10 -8
  328. package/docs/en-GB/intlayer_with_nextjs_page_router.md +8 -4
  329. package/docs/en-GB/intlayer_with_nuxt.md +9 -5
  330. package/docs/en-GB/intlayer_with_react_native+expo.md +8 -4
  331. package/docs/en-GB/intlayer_with_react_router_v7.md +9 -5
  332. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +9 -5
  333. package/docs/en-GB/intlayer_with_svelte_kit.md +8 -4
  334. package/docs/en-GB/intlayer_with_tanstack+solid.md +9 -5
  335. package/docs/en-GB/intlayer_with_tanstack.md +10 -7
  336. package/docs/en-GB/intlayer_with_vite+lit.md +8 -4
  337. package/docs/en-GB/intlayer_with_vite+preact.md +9 -5
  338. package/docs/en-GB/intlayer_with_vite+react.md +9 -5
  339. package/docs/en-GB/intlayer_with_vite+react_compiler.md +9 -5
  340. package/docs/en-GB/intlayer_with_vite+solid.md +9 -5
  341. package/docs/en-GB/intlayer_with_vite+svelte.md +8 -4
  342. package/docs/en-GB/intlayer_with_vite+vanilla.md +8 -4
  343. package/docs/en-GB/intlayer_with_vite+vue.md +9 -5
  344. package/docs/en-GB/migration_from_i18next_to_intlayer.md +8 -4
  345. package/docs/en-GB/migration_from_next-i18next_to_intlayer.md +8 -4
  346. package/docs/en-GB/migration_from_next-intl_to_intlayer.md +9 -7
  347. package/docs/en-GB/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  348. package/docs/en-GB/migration_from_react-i18next_to_intlayer.md +9 -7
  349. package/docs/en-GB/migration_from_vue-i18n_to_intlayer.md +8 -4
  350. package/docs/en-GB/releases/v9.md +0 -18
  351. package/docs/en-GB/self_hosting.md +1 -0
  352. package/docs/es/bundle_optimization.md +16 -0
  353. package/docs/es/cli/scan.md +2 -2
  354. package/docs/es/how_works_intlayer.md +2 -2
  355. package/docs/es/intlayer_with_adonisjs.md +8 -4
  356. package/docs/es/intlayer_with_analog.md +8 -4
  357. package/docs/es/intlayer_with_angular_19.md +8 -4
  358. package/docs/es/intlayer_with_angular_21.md +8 -4
  359. package/docs/es/intlayer_with_astro_lit.md +11 -7
  360. package/docs/es/intlayer_with_astro_preact.md +8 -4
  361. package/docs/es/intlayer_with_astro_react.md +8 -4
  362. package/docs/es/intlayer_with_astro_solid.md +8 -4
  363. package/docs/es/intlayer_with_astro_svelte.md +8 -4
  364. package/docs/es/intlayer_with_astro_vanilla.md +8 -4
  365. package/docs/es/intlayer_with_astro_vue.md +8 -4
  366. package/docs/es/intlayer_with_create_react_app.md +8 -4
  367. package/docs/es/intlayer_with_express.md +8 -4
  368. package/docs/es/intlayer_with_fastify.md +8 -4
  369. package/docs/es/intlayer_with_hono.md +8 -4
  370. package/docs/es/intlayer_with_lynx+react.md +8 -4
  371. package/docs/es/intlayer_with_nestjs.md +8 -4
  372. package/docs/es/intlayer_with_next-i18next.md +8 -4
  373. package/docs/es/intlayer_with_nextjs_14.md +8 -4
  374. package/docs/es/intlayer_with_nextjs_15.md +10 -8
  375. package/docs/es/intlayer_with_nextjs_16.md +10 -8
  376. package/docs/es/intlayer_with_nextjs_compiler.md +9 -7
  377. package/docs/es/intlayer_with_nextjs_no_locale_path.md +10 -8
  378. package/docs/es/intlayer_with_nextjs_page_router.md +8 -4
  379. package/docs/es/intlayer_with_nuxt.md +9 -5
  380. package/docs/es/intlayer_with_react_native+expo.md +8 -4
  381. package/docs/es/intlayer_with_react_router_v7.md +9 -5
  382. package/docs/es/intlayer_with_svelte_kit.md +8 -4
  383. package/docs/es/intlayer_with_tanstack+solid.md +9 -5
  384. package/docs/es/intlayer_with_tanstack.md +10 -7
  385. package/docs/es/intlayer_with_vite+lit.md +8 -4
  386. package/docs/es/intlayer_with_vite+preact.md +9 -5
  387. package/docs/es/intlayer_with_vite+react.md +9 -5
  388. package/docs/es/intlayer_with_vite+react_compiler.md +9 -5
  389. package/docs/es/intlayer_with_vite+solid.md +9 -5
  390. package/docs/es/intlayer_with_vite+svelte.md +8 -4
  391. package/docs/es/intlayer_with_vite+vanilla.md +8 -4
  392. package/docs/es/intlayer_with_vite+vue.md +9 -5
  393. package/docs/es/migration_from_i18next_to_intlayer.md +8 -4
  394. package/docs/es/migration_from_next-i18next_to_intlayer.md +8 -4
  395. package/docs/es/migration_from_next-intl_to_intlayer.md +9 -7
  396. package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  397. package/docs/es/migration_from_react-i18next_to_intlayer.md +9 -7
  398. package/docs/es/migration_from_vue-i18n_to_intlayer.md +8 -4
  399. package/docs/es/releases/v9.md +0 -18
  400. package/docs/es/self_hosting.md +1 -0
  401. package/docs/fr/bundle_optimization.md +16 -0
  402. package/docs/fr/cli/scan.md +2 -2
  403. package/docs/fr/how_works_intlayer.md +2 -2
  404. package/docs/fr/intlayer_with_adonisjs.md +8 -4
  405. package/docs/fr/intlayer_with_analog.md +8 -4
  406. package/docs/fr/intlayer_with_angular_19.md +8 -4
  407. package/docs/fr/intlayer_with_angular_21.md +8 -4
  408. package/docs/fr/intlayer_with_astro_lit.md +11 -7
  409. package/docs/fr/intlayer_with_astro_preact.md +8 -4
  410. package/docs/fr/intlayer_with_astro_react.md +8 -4
  411. package/docs/fr/intlayer_with_astro_solid.md +8 -4
  412. package/docs/fr/intlayer_with_astro_svelte.md +8 -4
  413. package/docs/fr/intlayer_with_astro_vanilla.md +8 -4
  414. package/docs/fr/intlayer_with_astro_vue.md +8 -4
  415. package/docs/fr/intlayer_with_create_react_app.md +8 -4
  416. package/docs/fr/intlayer_with_express.md +8 -4
  417. package/docs/fr/intlayer_with_fastify.md +8 -4
  418. package/docs/fr/intlayer_with_hono.md +8 -4
  419. package/docs/fr/intlayer_with_lynx+react.md +8 -4
  420. package/docs/fr/intlayer_with_nestjs.md +8 -4
  421. package/docs/fr/intlayer_with_next-i18next.md +8 -4
  422. package/docs/fr/intlayer_with_nextjs_14.md +8 -4
  423. package/docs/fr/intlayer_with_nextjs_15.md +10 -8
  424. package/docs/fr/intlayer_with_nextjs_16.md +10 -8
  425. package/docs/fr/intlayer_with_nextjs_compiler.md +9 -7
  426. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +10 -8
  427. package/docs/fr/intlayer_with_nextjs_page_router.md +8 -4
  428. package/docs/fr/intlayer_with_nuxt.md +9 -5
  429. package/docs/fr/intlayer_with_react_native+expo.md +8 -4
  430. package/docs/fr/intlayer_with_react_router_v7.md +9 -5
  431. package/docs/fr/intlayer_with_svelte_kit.md +8 -4
  432. package/docs/fr/intlayer_with_tanstack+solid.md +9 -5
  433. package/docs/fr/intlayer_with_tanstack.md +10 -7
  434. package/docs/fr/intlayer_with_vite+lit.md +8 -4
  435. package/docs/fr/intlayer_with_vite+preact.md +9 -5
  436. package/docs/fr/intlayer_with_vite+react.md +9 -5
  437. package/docs/fr/intlayer_with_vite+react_compiler.md +9 -5
  438. package/docs/fr/intlayer_with_vite+solid.md +9 -5
  439. package/docs/fr/intlayer_with_vite+svelte.md +8 -4
  440. package/docs/fr/intlayer_with_vite+vanilla.md +8 -4
  441. package/docs/fr/intlayer_with_vite+vue.md +9 -5
  442. package/docs/fr/migration_from_i18next_to_intlayer.md +8 -4
  443. package/docs/fr/migration_from_next-i18next_to_intlayer.md +8 -4
  444. package/docs/fr/migration_from_next-intl_to_intlayer.md +9 -7
  445. package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  446. package/docs/fr/migration_from_react-i18next_to_intlayer.md +9 -7
  447. package/docs/fr/migration_from_vue-i18n_to_intlayer.md +8 -4
  448. package/docs/fr/releases/v9.md +0 -18
  449. package/docs/fr/self_hosting.md +1 -0
  450. package/docs/hi/bundle_optimization.md +16 -0
  451. package/docs/hi/cli/scan.md +2 -2
  452. package/docs/hi/how_works_intlayer.md +2 -2
  453. package/docs/hi/intlayer_with_adonisjs.md +8 -4
  454. package/docs/hi/intlayer_with_analog.md +8 -4
  455. package/docs/hi/intlayer_with_angular_19.md +8 -4
  456. package/docs/hi/intlayer_with_angular_21.md +8 -4
  457. package/docs/hi/intlayer_with_astro_vue.md +8 -4
  458. package/docs/hi/intlayer_with_create_react_app.md +8 -4
  459. package/docs/hi/intlayer_with_express.md +8 -4
  460. package/docs/hi/intlayer_with_fastify.md +8 -4
  461. package/docs/hi/intlayer_with_hono.md +8 -4
  462. package/docs/hi/intlayer_with_lynx+react.md +8 -4
  463. package/docs/hi/intlayer_with_nestjs.md +8 -4
  464. package/docs/hi/intlayer_with_next-i18next.md +8 -4
  465. package/docs/hi/intlayer_with_nextjs_14.md +8 -4
  466. package/docs/hi/intlayer_with_nextjs_15.md +10 -8
  467. package/docs/hi/intlayer_with_nextjs_16.md +10 -8
  468. package/docs/hi/intlayer_with_nextjs_compiler.md +8 -4
  469. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +10 -8
  470. package/docs/hi/intlayer_with_nextjs_page_router.md +8 -4
  471. package/docs/hi/intlayer_with_nuxt.md +9 -5
  472. package/docs/hi/intlayer_with_react_native+expo.md +8 -4
  473. package/docs/hi/intlayer_with_react_router_v7.md +9 -5
  474. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +9 -5
  475. package/docs/hi/intlayer_with_svelte_kit.md +8 -4
  476. package/docs/hi/intlayer_with_tanstack+solid.md +9 -5
  477. package/docs/hi/intlayer_with_tanstack.md +10 -7
  478. package/docs/hi/intlayer_with_vite+lit.md +8 -4
  479. package/docs/hi/intlayer_with_vite+preact.md +9 -5
  480. package/docs/hi/intlayer_with_vite+react.md +9 -5
  481. package/docs/hi/intlayer_with_vite+react_compiler.md +9 -5
  482. package/docs/hi/intlayer_with_vite+solid.md +9 -5
  483. package/docs/hi/intlayer_with_vite+svelte.md +8 -4
  484. package/docs/hi/intlayer_with_vite+vanilla.md +8 -4
  485. package/docs/hi/intlayer_with_vite+vue.md +9 -5
  486. package/docs/hi/migration_from_i18next_to_intlayer.md +8 -4
  487. package/docs/hi/migration_from_next-i18next_to_intlayer.md +8 -4
  488. package/docs/hi/migration_from_next-intl_to_intlayer.md +9 -7
  489. package/docs/hi/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  490. package/docs/hi/migration_from_react-i18next_to_intlayer.md +9 -7
  491. package/docs/hi/migration_from_vue-i18n_to_intlayer.md +8 -4
  492. package/docs/hi/packages/intlayer/index.md +8 -4
  493. package/docs/hi/releases/v9.md +0 -18
  494. package/docs/hi/self_hosting.md +1 -0
  495. package/docs/id/bundle_optimization.md +16 -0
  496. package/docs/id/cli/scan.md +2 -2
  497. package/docs/id/how_works_intlayer.md +2 -2
  498. package/docs/id/intlayer_with_adonisjs.md +8 -4
  499. package/docs/id/intlayer_with_analog.md +8 -4
  500. package/docs/id/intlayer_with_angular_19.md +8 -4
  501. package/docs/id/intlayer_with_angular_21.md +8 -4
  502. package/docs/id/intlayer_with_astro_lit.md +11 -7
  503. package/docs/id/intlayer_with_astro_preact.md +8 -4
  504. package/docs/id/intlayer_with_astro_react.md +8 -4
  505. package/docs/id/intlayer_with_astro_solid.md +8 -4
  506. package/docs/id/intlayer_with_astro_svelte.md +8 -4
  507. package/docs/id/intlayer_with_astro_vanilla.md +8 -4
  508. package/docs/id/intlayer_with_astro_vue.md +8 -4
  509. package/docs/id/intlayer_with_create_react_app.md +8 -4
  510. package/docs/id/intlayer_with_express.md +8 -4
  511. package/docs/id/intlayer_with_fastify.md +8 -4
  512. package/docs/id/intlayer_with_hono.md +8 -4
  513. package/docs/id/intlayer_with_lynx+react.md +8 -4
  514. package/docs/id/intlayer_with_nestjs.md +8 -4
  515. package/docs/id/intlayer_with_next-i18next.md +8 -4
  516. package/docs/id/intlayer_with_nextjs_14.md +8 -4
  517. package/docs/id/intlayer_with_nextjs_15.md +9 -7
  518. package/docs/id/intlayer_with_nextjs_16.md +10 -8
  519. package/docs/id/intlayer_with_nextjs_compiler.md +8 -4
  520. package/docs/id/intlayer_with_nextjs_no_locale_path.md +10 -8
  521. package/docs/id/intlayer_with_nextjs_page_router.md +8 -4
  522. package/docs/id/intlayer_with_nuxt.md +9 -5
  523. package/docs/id/intlayer_with_react_native+expo.md +8 -4
  524. package/docs/id/intlayer_with_react_router_v7.md +9 -5
  525. package/docs/id/intlayer_with_svelte_kit.md +8 -4
  526. package/docs/id/intlayer_with_tanstack+solid.md +9 -5
  527. package/docs/id/intlayer_with_tanstack.md +10 -7
  528. package/docs/id/intlayer_with_vite+lit.md +8 -4
  529. package/docs/id/intlayer_with_vite+preact.md +9 -5
  530. package/docs/id/intlayer_with_vite+react.md +9 -5
  531. package/docs/id/intlayer_with_vite+react_compiler.md +9 -5
  532. package/docs/id/intlayer_with_vite+solid.md +9 -5
  533. package/docs/id/intlayer_with_vite+svelte.md +8 -4
  534. package/docs/id/intlayer_with_vite+vanilla.md +8 -4
  535. package/docs/id/intlayer_with_vite+vue.md +9 -5
  536. package/docs/id/migration_from_i18next_to_intlayer.md +8 -4
  537. package/docs/id/migration_from_next-i18next_to_intlayer.md +8 -4
  538. package/docs/id/migration_from_next-intl_to_intlayer.md +9 -7
  539. package/docs/id/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  540. package/docs/id/migration_from_react-i18next_to_intlayer.md +9 -7
  541. package/docs/id/migration_from_vue-i18n_to_intlayer.md +8 -4
  542. package/docs/id/releases/v9.md +0 -18
  543. package/docs/id/self_hosting.md +1 -0
  544. package/docs/it/bundle_optimization.md +16 -0
  545. package/docs/it/cli/scan.md +2 -2
  546. package/docs/it/how_works_intlayer.md +2 -2
  547. package/docs/it/intlayer_with_adonisjs.md +8 -4
  548. package/docs/it/intlayer_with_analog.md +8 -4
  549. package/docs/it/intlayer_with_angular_19.md +8 -4
  550. package/docs/it/intlayer_with_angular_21.md +8 -4
  551. package/docs/it/intlayer_with_astro_lit.md +11 -7
  552. package/docs/it/intlayer_with_astro_preact.md +8 -4
  553. package/docs/it/intlayer_with_astro_react.md +8 -4
  554. package/docs/it/intlayer_with_astro_solid.md +8 -4
  555. package/docs/it/intlayer_with_astro_svelte.md +8 -4
  556. package/docs/it/intlayer_with_astro_vanilla.md +8 -4
  557. package/docs/it/intlayer_with_astro_vue.md +8 -4
  558. package/docs/it/intlayer_with_create_react_app.md +8 -4
  559. package/docs/it/intlayer_with_express.md +8 -4
  560. package/docs/it/intlayer_with_fastify.md +8 -4
  561. package/docs/it/intlayer_with_hono.md +8 -4
  562. package/docs/it/intlayer_with_lynx+react.md +8 -4
  563. package/docs/it/intlayer_with_nestjs.md +8 -4
  564. package/docs/it/intlayer_with_next-i18next.md +8 -4
  565. package/docs/it/intlayer_with_nextjs_14.md +8 -4
  566. package/docs/it/intlayer_with_nextjs_15.md +10 -8
  567. package/docs/it/intlayer_with_nextjs_16.md +10 -8
  568. package/docs/it/intlayer_with_nextjs_compiler.md +9 -7
  569. package/docs/it/intlayer_with_nextjs_no_locale_path.md +10 -8
  570. package/docs/it/intlayer_with_nextjs_page_router.md +8 -4
  571. package/docs/it/intlayer_with_nuxt.md +9 -5
  572. package/docs/it/intlayer_with_react_native+expo.md +8 -4
  573. package/docs/it/intlayer_with_react_router_v7.md +9 -5
  574. package/docs/it/intlayer_with_svelte_kit.md +8 -4
  575. package/docs/it/intlayer_with_tanstack+solid.md +9 -5
  576. package/docs/it/intlayer_with_tanstack.md +10 -7
  577. package/docs/it/intlayer_with_vite+lit.md +8 -4
  578. package/docs/it/intlayer_with_vite+preact.md +9 -5
  579. package/docs/it/intlayer_with_vite+react.md +10 -6
  580. package/docs/it/intlayer_with_vite+react_compiler.md +9 -5
  581. package/docs/it/intlayer_with_vite+solid.md +9 -5
  582. package/docs/it/intlayer_with_vite+svelte.md +8 -4
  583. package/docs/it/intlayer_with_vite+vanilla.md +8 -4
  584. package/docs/it/intlayer_with_vite+vue.md +9 -5
  585. package/docs/it/migration_from_i18next_to_intlayer.md +8 -4
  586. package/docs/it/migration_from_next-i18next_to_intlayer.md +8 -4
  587. package/docs/it/migration_from_next-intl_to_intlayer.md +8 -4
  588. package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  589. package/docs/it/migration_from_react-i18next_to_intlayer.md +9 -7
  590. package/docs/it/migration_from_vue-i18n_to_intlayer.md +8 -4
  591. package/docs/it/releases/v9.md +0 -18
  592. package/docs/it/self_hosting.md +1 -0
  593. package/docs/ja/bundle_optimization.md +16 -0
  594. package/docs/ja/cli/scan.md +2 -2
  595. package/docs/ja/how_works_intlayer.md +2 -2
  596. package/docs/ja/intlayer_with_adonisjs.md +8 -4
  597. package/docs/ja/intlayer_with_analog.md +8 -4
  598. package/docs/ja/intlayer_with_angular_19.md +8 -4
  599. package/docs/ja/intlayer_with_angular_21.md +8 -4
  600. package/docs/ja/intlayer_with_astro_lit.md +11 -7
  601. package/docs/ja/intlayer_with_astro_preact.md +8 -4
  602. package/docs/ja/intlayer_with_astro_react.md +8 -4
  603. package/docs/ja/intlayer_with_astro_solid.md +8 -4
  604. package/docs/ja/intlayer_with_astro_svelte.md +8 -4
  605. package/docs/ja/intlayer_with_astro_vanilla.md +8 -4
  606. package/docs/ja/intlayer_with_astro_vue.md +8 -4
  607. package/docs/ja/intlayer_with_create_react_app.md +8 -4
  608. package/docs/ja/intlayer_with_express.md +8 -4
  609. package/docs/ja/intlayer_with_fastify.md +8 -4
  610. package/docs/ja/intlayer_with_hono.md +8 -4
  611. package/docs/ja/intlayer_with_lynx+react.md +8 -4
  612. package/docs/ja/intlayer_with_nestjs.md +8 -4
  613. package/docs/ja/intlayer_with_next-i18next.md +8 -4
  614. package/docs/ja/intlayer_with_nextjs_14.md +8 -4
  615. package/docs/ja/intlayer_with_nextjs_15.md +10 -8
  616. package/docs/ja/intlayer_with_nextjs_16.md +10 -8
  617. package/docs/ja/intlayer_with_nextjs_compiler.md +8 -4
  618. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +10 -8
  619. package/docs/ja/intlayer_with_nextjs_page_router.md +8 -4
  620. package/docs/ja/intlayer_with_nuxt.md +9 -5
  621. package/docs/ja/intlayer_with_react_native+expo.md +8 -4
  622. package/docs/ja/intlayer_with_tanstack+solid.md +9 -5
  623. package/docs/ja/intlayer_with_tanstack.md +10 -7
  624. package/docs/ja/intlayer_with_vite+lit.md +8 -4
  625. package/docs/ja/intlayer_with_vite+preact.md +9 -5
  626. package/docs/ja/intlayer_with_vite+react_compiler.md +9 -5
  627. package/docs/ja/intlayer_with_vite+solid.md +9 -5
  628. package/docs/ja/intlayer_with_vite+svelte.md +8 -4
  629. package/docs/ja/intlayer_with_vite+vanilla.md +8 -4
  630. package/docs/ja/intlayer_with_vite+vue.md +9 -5
  631. package/docs/ja/migration_from_i18next_to_intlayer.md +8 -4
  632. package/docs/ja/migration_from_next-i18next_to_intlayer.md +8 -4
  633. package/docs/ja/migration_from_next-intl_to_intlayer.md +9 -7
  634. package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  635. package/docs/ja/migration_from_react-i18next_to_intlayer.md +9 -7
  636. package/docs/ja/migration_from_vue-i18n_to_intlayer.md +8 -4
  637. package/docs/ja/releases/v9.md +0 -18
  638. package/docs/ja/self_hosting.md +1 -0
  639. package/docs/ko/bundle_optimization.md +16 -0
  640. package/docs/ko/cli/scan.md +2 -2
  641. package/docs/ko/how_works_intlayer.md +2 -2
  642. package/docs/ko/intlayer_with_adonisjs.md +8 -4
  643. package/docs/ko/intlayer_with_analog.md +8 -4
  644. package/docs/ko/intlayer_with_angular_19.md +8 -4
  645. package/docs/ko/intlayer_with_angular_21.md +8 -4
  646. package/docs/ko/intlayer_with_astro_vue.md +8 -4
  647. package/docs/ko/intlayer_with_create_react_app.md +8 -4
  648. package/docs/ko/intlayer_with_express.md +8 -4
  649. package/docs/ko/intlayer_with_fastify.md +8 -4
  650. package/docs/ko/intlayer_with_hono.md +8 -4
  651. package/docs/ko/intlayer_with_nestjs.md +8 -4
  652. package/docs/ko/intlayer_with_next-i18next.md +8 -4
  653. package/docs/ko/intlayer_with_nextjs_15.md +10 -8
  654. package/docs/ko/intlayer_with_nextjs_16.md +10 -8
  655. package/docs/ko/intlayer_with_nextjs_compiler.md +9 -7
  656. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +10 -8
  657. package/docs/ko/intlayer_with_nextjs_page_router.md +8 -4
  658. package/docs/ko/intlayer_with_nuxt.md +9 -5
  659. package/docs/ko/intlayer_with_react_native+expo.md +8 -4
  660. package/docs/ko/intlayer_with_react_router_v7.md +9 -5
  661. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +9 -5
  662. package/docs/ko/intlayer_with_svelte_kit.md +8 -4
  663. package/docs/ko/intlayer_with_tanstack+solid.md +9 -5
  664. package/docs/ko/intlayer_with_tanstack.md +10 -7
  665. package/docs/ko/intlayer_with_vite+lit.md +8 -4
  666. package/docs/ko/intlayer_with_vite+preact.md +9 -5
  667. package/docs/ko/intlayer_with_vite+react_compiler.md +9 -5
  668. package/docs/ko/intlayer_with_vite+solid.md +9 -5
  669. package/docs/ko/intlayer_with_vite+svelte.md +8 -4
  670. package/docs/ko/intlayer_with_vite+vanilla.md +8 -4
  671. package/docs/ko/intlayer_with_vite+vue.md +9 -5
  672. package/docs/ko/migration_from_i18next_to_intlayer.md +8 -4
  673. package/docs/ko/migration_from_next-i18next_to_intlayer.md +8 -4
  674. package/docs/ko/migration_from_next-intl_to_intlayer.md +9 -7
  675. package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  676. package/docs/ko/migration_from_react-i18next_to_intlayer.md +9 -7
  677. package/docs/ko/migration_from_vue-i18n_to_intlayer.md +8 -4
  678. package/docs/ko/releases/v9.md +0 -18
  679. package/docs/ko/self_hosting.md +1 -0
  680. package/docs/nl/bundle_optimization.md +16 -0
  681. package/docs/nl/cli/scan.md +2 -2
  682. package/docs/nl/intlayer_with_angular_21.md +8 -4
  683. package/docs/nl/intlayer_with_fastify.md +8 -4
  684. package/docs/nl/intlayer_with_hono.md +8 -4
  685. package/docs/nl/intlayer_with_vite+lit.md +8 -4
  686. package/docs/nl/intlayer_with_vite+vanilla.md +8 -4
  687. package/docs/nl/releases/v9.md +0 -18
  688. package/docs/pl/bundle_optimization.md +16 -0
  689. package/docs/pl/cli/scan.md +2 -2
  690. package/docs/pl/how_works_intlayer.md +2 -2
  691. package/docs/pl/intlayer_with_adonisjs.md +8 -4
  692. package/docs/pl/intlayer_with_analog.md +8 -4
  693. package/docs/pl/intlayer_with_angular_19.md +8 -4
  694. package/docs/pl/intlayer_with_angular_21.md +8 -4
  695. package/docs/pl/intlayer_with_astro_lit.md +11 -7
  696. package/docs/pl/intlayer_with_astro_preact.md +8 -4
  697. package/docs/pl/intlayer_with_astro_react.md +8 -4
  698. package/docs/pl/intlayer_with_astro_solid.md +8 -4
  699. package/docs/pl/intlayer_with_astro_svelte.md +8 -4
  700. package/docs/pl/intlayer_with_astro_vanilla.md +8 -4
  701. package/docs/pl/intlayer_with_astro_vue.md +8 -4
  702. package/docs/pl/intlayer_with_create_react_app.md +8 -4
  703. package/docs/pl/intlayer_with_express.md +8 -4
  704. package/docs/pl/intlayer_with_fastify.md +8 -4
  705. package/docs/pl/intlayer_with_hono.md +8 -4
  706. package/docs/pl/intlayer_with_lynx+react.md +8 -4
  707. package/docs/pl/intlayer_with_nestjs.md +8 -4
  708. package/docs/pl/intlayer_with_next-i18next.md +8 -4
  709. package/docs/pl/intlayer_with_nextjs_14.md +8 -4
  710. package/docs/pl/intlayer_with_nextjs_15.md +9 -7
  711. package/docs/pl/intlayer_with_nextjs_16.md +10 -8
  712. package/docs/pl/intlayer_with_nextjs_compiler.md +8 -4
  713. package/docs/pl/intlayer_with_nextjs_no_locale_path.md +10 -8
  714. package/docs/pl/intlayer_with_nextjs_page_router.md +8 -4
  715. package/docs/pl/intlayer_with_nuxt.md +9 -5
  716. package/docs/pl/intlayer_with_react_native+expo.md +8 -4
  717. package/docs/pl/intlayer_with_react_router_v7.md +9 -5
  718. package/docs/pl/intlayer_with_svelte_kit.md +8 -4
  719. package/docs/pl/intlayer_with_tanstack+solid.md +9 -5
  720. package/docs/pl/intlayer_with_tanstack.md +10 -7
  721. package/docs/pl/intlayer_with_vite+lit.md +8 -4
  722. package/docs/pl/intlayer_with_vite+preact.md +9 -5
  723. package/docs/pl/intlayer_with_vite+react.md +9 -5
  724. package/docs/pl/intlayer_with_vite+react_compiler.md +9 -5
  725. package/docs/pl/intlayer_with_vite+solid.md +9 -5
  726. package/docs/pl/intlayer_with_vite+svelte.md +8 -4
  727. package/docs/pl/intlayer_with_vite+vanilla.md +8 -4
  728. package/docs/pl/intlayer_with_vite+vue.md +9 -5
  729. package/docs/pl/migration_from_next-i18next_to_intlayer.md +8 -4
  730. package/docs/pl/migration_from_next-intl_to_intlayer.md +9 -7
  731. package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  732. package/docs/pl/migration_from_react-i18next_to_intlayer.md +9 -7
  733. package/docs/pl/releases/v9.md +0 -18
  734. package/docs/pl/self_hosting.md +1 -0
  735. package/docs/pt/bundle_optimization.md +16 -0
  736. package/docs/pt/cli/scan.md +2 -2
  737. package/docs/pt/how_works_intlayer.md +2 -2
  738. package/docs/pt/intlayer_with_adonisjs.md +8 -4
  739. package/docs/pt/intlayer_with_analog.md +8 -4
  740. package/docs/pt/intlayer_with_angular_19.md +8 -4
  741. package/docs/pt/intlayer_with_angular_21.md +8 -4
  742. package/docs/pt/intlayer_with_astro_lit.md +11 -7
  743. package/docs/pt/intlayer_with_astro_preact.md +8 -4
  744. package/docs/pt/intlayer_with_astro_react.md +8 -4
  745. package/docs/pt/intlayer_with_astro_solid.md +8 -4
  746. package/docs/pt/intlayer_with_astro_svelte.md +8 -4
  747. package/docs/pt/intlayer_with_astro_vanilla.md +8 -4
  748. package/docs/pt/intlayer_with_astro_vue.md +8 -4
  749. package/docs/pt/intlayer_with_create_react_app.md +8 -4
  750. package/docs/pt/intlayer_with_express.md +8 -4
  751. package/docs/pt/intlayer_with_fastify.md +8 -4
  752. package/docs/pt/intlayer_with_hono.md +8 -4
  753. package/docs/pt/intlayer_with_lynx+react.md +8 -4
  754. package/docs/pt/intlayer_with_nestjs.md +8 -4
  755. package/docs/pt/intlayer_with_next-i18next.md +8 -4
  756. package/docs/pt/intlayer_with_nextjs_14.md +8 -4
  757. package/docs/pt/intlayer_with_nextjs_15.md +10 -8
  758. package/docs/pt/intlayer_with_nextjs_16.md +10 -8
  759. package/docs/pt/intlayer_with_nextjs_compiler.md +9 -7
  760. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +10 -8
  761. package/docs/pt/intlayer_with_nextjs_page_router.md +8 -4
  762. package/docs/pt/intlayer_with_nuxt.md +9 -5
  763. package/docs/pt/intlayer_with_react_native+expo.md +8 -4
  764. package/docs/pt/intlayer_with_react_router_v7.md +9 -5
  765. package/docs/pt/intlayer_with_svelte_kit.md +8 -4
  766. package/docs/pt/intlayer_with_tanstack+solid.md +9 -5
  767. package/docs/pt/intlayer_with_tanstack.md +10 -7
  768. package/docs/pt/intlayer_with_vite+lit.md +8 -4
  769. package/docs/pt/intlayer_with_vite+preact.md +9 -5
  770. package/docs/pt/intlayer_with_vite+react.md +9 -5
  771. package/docs/pt/intlayer_with_vite+react_compiler.md +9 -5
  772. package/docs/pt/intlayer_with_vite+solid.md +9 -5
  773. package/docs/pt/intlayer_with_vite+svelte.md +8 -4
  774. package/docs/pt/intlayer_with_vite+vanilla.md +8 -4
  775. package/docs/pt/intlayer_with_vite+vue.md +9 -5
  776. package/docs/pt/migration_from_i18next_to_intlayer.md +8 -4
  777. package/docs/pt/migration_from_next-i18next_to_intlayer.md +8 -4
  778. package/docs/pt/migration_from_next-intl_to_intlayer.md +9 -7
  779. package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  780. package/docs/pt/migration_from_react-i18next_to_intlayer.md +9 -7
  781. package/docs/pt/migration_from_vue-i18n_to_intlayer.md +8 -4
  782. package/docs/pt/releases/v9.md +0 -18
  783. package/docs/pt/self_hosting.md +1 -0
  784. package/docs/ru/bundle_optimization.md +16 -0
  785. package/docs/ru/cli/scan.md +2 -2
  786. package/docs/ru/how_works_intlayer.md +2 -2
  787. package/docs/ru/intlayer_with_adonisjs.md +8 -4
  788. package/docs/ru/intlayer_with_analog.md +8 -4
  789. package/docs/ru/intlayer_with_angular_19.md +8 -4
  790. package/docs/ru/intlayer_with_angular_21.md +8 -4
  791. package/docs/ru/intlayer_with_astro_vue.md +8 -4
  792. package/docs/ru/intlayer_with_create_react_app.md +8 -4
  793. package/docs/ru/intlayer_with_express.md +8 -4
  794. package/docs/ru/intlayer_with_fastify.md +8 -4
  795. package/docs/ru/intlayer_with_hono.md +8 -4
  796. package/docs/ru/intlayer_with_lynx+react.md +8 -4
  797. package/docs/ru/intlayer_with_nestjs.md +8 -4
  798. package/docs/ru/intlayer_with_next-i18next.md +8 -4
  799. package/docs/ru/intlayer_with_nextjs_14.md +8 -4
  800. package/docs/ru/intlayer_with_nextjs_15.md +10 -8
  801. package/docs/ru/intlayer_with_nextjs_16.md +10 -8
  802. package/docs/ru/intlayer_with_nextjs_compiler.md +9 -7
  803. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +10 -8
  804. package/docs/ru/intlayer_with_nextjs_page_router.md +8 -4
  805. package/docs/ru/intlayer_with_nuxt.md +9 -5
  806. package/docs/ru/intlayer_with_react_native+expo.md +8 -4
  807. package/docs/ru/intlayer_with_react_router_v7.md +9 -5
  808. package/docs/ru/intlayer_with_svelte_kit.md +8 -4
  809. package/docs/ru/intlayer_with_tanstack+solid.md +9 -5
  810. package/docs/ru/intlayer_with_tanstack.md +10 -7
  811. package/docs/ru/intlayer_with_vite+lit.md +8 -4
  812. package/docs/ru/intlayer_with_vite+preact.md +9 -5
  813. package/docs/ru/intlayer_with_vite+react.md +9 -5
  814. package/docs/ru/intlayer_with_vite+react_compiler.md +9 -5
  815. package/docs/ru/intlayer_with_vite+solid.md +9 -5
  816. package/docs/ru/intlayer_with_vite+svelte.md +8 -4
  817. package/docs/ru/intlayer_with_vite+vanilla.md +8 -4
  818. package/docs/ru/intlayer_with_vite+vue.md +9 -5
  819. package/docs/ru/migration_from_i18next_to_intlayer.md +8 -4
  820. package/docs/ru/migration_from_next-i18next_to_intlayer.md +8 -4
  821. package/docs/ru/migration_from_next-intl_to_intlayer.md +9 -7
  822. package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  823. package/docs/ru/migration_from_react-i18next_to_intlayer.md +9 -7
  824. package/docs/ru/migration_from_vue-i18n_to_intlayer.md +8 -4
  825. package/docs/ru/releases/v9.md +0 -18
  826. package/docs/ru/self_hosting.md +1 -0
  827. package/docs/tr/bundle_optimization.md +16 -0
  828. package/docs/tr/cli/scan.md +2 -2
  829. package/docs/tr/how_works_intlayer.md +2 -2
  830. package/docs/tr/intlayer_with_adonisjs.md +8 -4
  831. package/docs/tr/intlayer_with_analog.md +8 -4
  832. package/docs/tr/intlayer_with_angular_19.md +8 -4
  833. package/docs/tr/intlayer_with_angular_21.md +8 -4
  834. package/docs/tr/intlayer_with_astro_lit.md +11 -7
  835. package/docs/tr/intlayer_with_astro_preact.md +8 -4
  836. package/docs/tr/intlayer_with_astro_react.md +8 -4
  837. package/docs/tr/intlayer_with_astro_solid.md +8 -4
  838. package/docs/tr/intlayer_with_astro_svelte.md +8 -4
  839. package/docs/tr/intlayer_with_astro_vanilla.md +8 -4
  840. package/docs/tr/intlayer_with_astro_vue.md +8 -4
  841. package/docs/tr/intlayer_with_create_react_app.md +8 -4
  842. package/docs/tr/intlayer_with_express.md +8 -4
  843. package/docs/tr/intlayer_with_fastify.md +8 -4
  844. package/docs/tr/intlayer_with_hono.md +8 -4
  845. package/docs/tr/intlayer_with_lynx+react.md +8 -4
  846. package/docs/tr/intlayer_with_nestjs.md +8 -4
  847. package/docs/tr/intlayer_with_next-i18next.md +8 -4
  848. package/docs/tr/intlayer_with_nextjs_14.md +8 -4
  849. package/docs/tr/intlayer_with_nextjs_15.md +10 -8
  850. package/docs/tr/intlayer_with_nextjs_16.md +10 -8
  851. package/docs/tr/intlayer_with_nextjs_compiler.md +8 -4
  852. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +10 -8
  853. package/docs/tr/intlayer_with_nextjs_page_router.md +8 -4
  854. package/docs/tr/intlayer_with_nuxt.md +9 -5
  855. package/docs/tr/intlayer_with_react_native+expo.md +8 -4
  856. package/docs/tr/intlayer_with_react_router_v7.md +9 -5
  857. package/docs/tr/intlayer_with_svelte_kit.md +8 -4
  858. package/docs/tr/intlayer_with_tanstack+solid.md +9 -5
  859. package/docs/tr/intlayer_with_tanstack.md +10 -7
  860. package/docs/tr/intlayer_with_vite+lit.md +8 -4
  861. package/docs/tr/intlayer_with_vite+preact.md +9 -5
  862. package/docs/tr/intlayer_with_vite+react.md +9 -5
  863. package/docs/tr/intlayer_with_vite+react_compiler.md +9 -5
  864. package/docs/tr/intlayer_with_vite+solid.md +9 -5
  865. package/docs/tr/intlayer_with_vite+svelte.md +8 -4
  866. package/docs/tr/intlayer_with_vite+vanilla.md +8 -4
  867. package/docs/tr/intlayer_with_vite+vue.md +9 -5
  868. package/docs/tr/migration_from_i18next_to_intlayer.md +8 -4
  869. package/docs/tr/migration_from_next-i18next_to_intlayer.md +8 -4
  870. package/docs/tr/migration_from_next-intl_to_intlayer.md +9 -7
  871. package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  872. package/docs/tr/migration_from_react-i18next_to_intlayer.md +9 -7
  873. package/docs/tr/migration_from_vue-i18n_to_intlayer.md +8 -4
  874. package/docs/tr/releases/v9.md +0 -18
  875. package/docs/tr/self_hosting.md +1 -0
  876. package/docs/uk/bundle_optimization.md +16 -0
  877. package/docs/uk/cli/scan.md +2 -2
  878. package/docs/uk/how_works_intlayer.md +2 -2
  879. package/docs/uk/intlayer_with_adonisjs.md +8 -4
  880. package/docs/uk/intlayer_with_analog.md +8 -4
  881. package/docs/uk/intlayer_with_angular_19.md +8 -4
  882. package/docs/uk/intlayer_with_angular_21.md +8 -4
  883. package/docs/uk/intlayer_with_astro_lit.md +11 -7
  884. package/docs/uk/intlayer_with_astro_preact.md +8 -4
  885. package/docs/uk/intlayer_with_astro_react.md +8 -4
  886. package/docs/uk/intlayer_with_astro_solid.md +8 -4
  887. package/docs/uk/intlayer_with_astro_svelte.md +8 -4
  888. package/docs/uk/intlayer_with_astro_vanilla.md +8 -4
  889. package/docs/uk/intlayer_with_astro_vue.md +8 -4
  890. package/docs/uk/intlayer_with_create_react_app.md +8 -4
  891. package/docs/uk/intlayer_with_express.md +8 -4
  892. package/docs/uk/intlayer_with_fastify.md +8 -4
  893. package/docs/uk/intlayer_with_hono.md +8 -4
  894. package/docs/uk/intlayer_with_lynx+react.md +8 -4
  895. package/docs/uk/intlayer_with_nestjs.md +8 -4
  896. package/docs/uk/intlayer_with_next-i18next.md +8 -4
  897. package/docs/uk/intlayer_with_nextjs_14.md +8 -4
  898. package/docs/uk/intlayer_with_nextjs_15.md +10 -8
  899. package/docs/uk/intlayer_with_nextjs_16.md +10 -8
  900. package/docs/uk/intlayer_with_nextjs_compiler.md +8 -4
  901. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +10 -8
  902. package/docs/uk/intlayer_with_nextjs_page_router.md +8 -4
  903. package/docs/uk/intlayer_with_nuxt.md +9 -5
  904. package/docs/uk/intlayer_with_react_native+expo.md +8 -4
  905. package/docs/uk/intlayer_with_react_router_v7.md +9 -5
  906. package/docs/uk/intlayer_with_svelte_kit.md +8 -4
  907. package/docs/uk/intlayer_with_tanstack+solid.md +9 -5
  908. package/docs/uk/intlayer_with_tanstack.md +10 -7
  909. package/docs/uk/intlayer_with_vite+lit.md +8 -4
  910. package/docs/uk/intlayer_with_vite+preact.md +9 -5
  911. package/docs/uk/intlayer_with_vite+react.md +9 -5
  912. package/docs/uk/intlayer_with_vite+react_compiler.md +9 -5
  913. package/docs/uk/intlayer_with_vite+solid.md +9 -5
  914. package/docs/uk/intlayer_with_vite+svelte.md +8 -4
  915. package/docs/uk/intlayer_with_vite+vanilla.md +8 -4
  916. package/docs/uk/intlayer_with_vite+vue.md +9 -5
  917. package/docs/uk/migration_from_i18next_to_intlayer.md +8 -4
  918. package/docs/uk/migration_from_next-i18next_to_intlayer.md +8 -4
  919. package/docs/uk/migration_from_next-intl_to_intlayer.md +9 -7
  920. package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  921. package/docs/uk/migration_from_react-i18next_to_intlayer.md +9 -7
  922. package/docs/uk/migration_from_vue-i18n_to_intlayer.md +8 -4
  923. package/docs/uk/releases/v9.md +0 -18
  924. package/docs/uk/self_hosting.md +1 -0
  925. package/docs/ur/bundle_optimization.md +16 -0
  926. package/docs/ur/cli/scan.md +2 -2
  927. package/docs/ur/intlayer_with_angular_21.md +8 -4
  928. package/docs/ur/intlayer_with_fastify.md +8 -4
  929. package/docs/ur/intlayer_with_hono.md +8 -4
  930. package/docs/ur/intlayer_with_vite+lit.md +8 -4
  931. package/docs/ur/intlayer_with_vite+vanilla.md +8 -4
  932. package/docs/vi/bundle_optimization.md +16 -0
  933. package/docs/vi/cli/scan.md +2 -2
  934. package/docs/vi/how_works_intlayer.md +2 -2
  935. package/docs/vi/intlayer_with_adonisjs.md +8 -4
  936. package/docs/vi/intlayer_with_analog.md +8 -4
  937. package/docs/vi/intlayer_with_angular_19.md +8 -4
  938. package/docs/vi/intlayer_with_angular_21.md +8 -4
  939. package/docs/vi/intlayer_with_astro_lit.md +11 -7
  940. package/docs/vi/intlayer_with_astro_preact.md +8 -4
  941. package/docs/vi/intlayer_with_astro_react.md +8 -4
  942. package/docs/vi/intlayer_with_astro_solid.md +8 -4
  943. package/docs/vi/intlayer_with_astro_svelte.md +8 -4
  944. package/docs/vi/intlayer_with_astro_vanilla.md +8 -4
  945. package/docs/vi/intlayer_with_astro_vue.md +8 -4
  946. package/docs/vi/intlayer_with_create_react_app.md +8 -4
  947. package/docs/vi/intlayer_with_express.md +8 -4
  948. package/docs/vi/intlayer_with_fastify.md +8 -4
  949. package/docs/vi/intlayer_with_hono.md +8 -4
  950. package/docs/vi/intlayer_with_lynx+react.md +8 -4
  951. package/docs/vi/intlayer_with_nestjs.md +8 -4
  952. package/docs/vi/intlayer_with_next-i18next.md +8 -4
  953. package/docs/vi/intlayer_with_nextjs_14.md +8 -4
  954. package/docs/vi/intlayer_with_nextjs_15.md +9 -7
  955. package/docs/vi/intlayer_with_nextjs_16.md +10 -8
  956. package/docs/vi/intlayer_with_nextjs_compiler.md +8 -4
  957. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +10 -8
  958. package/docs/vi/intlayer_with_nextjs_page_router.md +8 -4
  959. package/docs/vi/intlayer_with_nuxt.md +9 -5
  960. package/docs/vi/intlayer_with_react_native+expo.md +8 -4
  961. package/docs/vi/intlayer_with_react_router_v7.md +9 -5
  962. package/docs/vi/intlayer_with_svelte_kit.md +8 -4
  963. package/docs/vi/intlayer_with_tanstack+solid.md +9 -5
  964. package/docs/vi/intlayer_with_tanstack.md +10 -7
  965. package/docs/vi/intlayer_with_vite+lit.md +8 -4
  966. package/docs/vi/intlayer_with_vite+preact.md +9 -5
  967. package/docs/vi/intlayer_with_vite+react.md +9 -5
  968. package/docs/vi/intlayer_with_vite+react_compiler.md +9 -5
  969. package/docs/vi/intlayer_with_vite+solid.md +9 -5
  970. package/docs/vi/intlayer_with_vite+svelte.md +8 -4
  971. package/docs/vi/intlayer_with_vite+vanilla.md +8 -4
  972. package/docs/vi/intlayer_with_vite+vue.md +9 -5
  973. package/docs/vi/migration_from_i18next_to_intlayer.md +8 -4
  974. package/docs/vi/migration_from_next-i18next_to_intlayer.md +8 -4
  975. package/docs/vi/migration_from_next-intl_to_intlayer.md +9 -7
  976. package/docs/vi/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  977. package/docs/vi/migration_from_react-i18next_to_intlayer.md +9 -7
  978. package/docs/vi/migration_from_vue-i18n_to_intlayer.md +8 -4
  979. package/docs/vi/releases/v9.md +0 -18
  980. package/docs/vi/self_hosting.md +1 -0
  981. package/docs/zh/bundle_optimization.md +16 -0
  982. package/docs/zh/cli/scan.md +2 -2
  983. package/docs/zh/how_works_intlayer.md +2 -2
  984. package/docs/zh/intlayer_with_adonisjs.md +8 -4
  985. package/docs/zh/intlayer_with_angular_21.md +8 -4
  986. package/docs/zh/intlayer_with_astro.md +8 -4
  987. package/docs/zh/intlayer_with_astro_lit.md +11 -7
  988. package/docs/zh/intlayer_with_astro_preact.md +8 -4
  989. package/docs/zh/intlayer_with_astro_react.md +8 -4
  990. package/docs/zh/intlayer_with_astro_solid.md +8 -4
  991. package/docs/zh/intlayer_with_astro_svelte.md +8 -4
  992. package/docs/zh/intlayer_with_astro_vanilla.md +8 -4
  993. package/docs/zh/intlayer_with_astro_vue.md +8 -4
  994. package/docs/zh/intlayer_with_create_react_app.md +8 -4
  995. package/docs/zh/intlayer_with_express.md +8 -4
  996. package/docs/zh/intlayer_with_fastify.md +8 -4
  997. package/docs/zh/intlayer_with_hono.md +8 -4
  998. package/docs/zh/intlayer_with_nestjs.md +8 -4
  999. package/docs/zh/intlayer_with_next-i18next.md +8 -4
  1000. package/docs/zh/intlayer_with_nextjs_14.md +8 -4
  1001. package/docs/zh/intlayer_with_nextjs_15.md +10 -8
  1002. package/docs/zh/intlayer_with_nextjs_16.md +10 -8
  1003. package/docs/zh/intlayer_with_nextjs_compiler.md +9 -7
  1004. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +10 -8
  1005. package/docs/zh/intlayer_with_nextjs_page_router.md +8 -4
  1006. package/docs/zh/intlayer_with_react_native+expo.md +8 -4
  1007. package/docs/zh/intlayer_with_react_router_v7.md +9 -5
  1008. package/docs/zh/intlayer_with_vite+solid.md +9 -5
  1009. package/docs/zh/intlayer_with_vite+svelte.md +8 -4
  1010. package/docs/zh/intlayer_with_vite+vue.md +9 -5
  1011. package/docs/zh/migration_from_i18next_to_intlayer.md +8 -4
  1012. package/docs/zh/migration_from_next-i18next_to_intlayer.md +8 -4
  1013. package/docs/zh/migration_from_next-intl_to_intlayer.md +9 -7
  1014. package/docs/zh/migration_from_nuxtjs_i18n_to_intlayer.md +8 -4
  1015. package/docs/zh/migration_from_react-i18next_to_intlayer.md +9 -7
  1016. package/docs/zh/migration_from_vue-i18n_to_intlayer.md +8 -4
  1017. package/docs/zh/releases/v9.md +0 -18
  1018. package/docs/zh/self_hosting.md +1 -0
  1019. package/docs/zh-TW/bundle_optimization.md +16 -0
  1020. package/docs/zh-TW/intlayer_with_angular_21.md +8 -4
  1021. package/package.json +6 -6
@@ -94,7 +94,7 @@ More than just an i18n solution, Intlayer provides an **self-hosted [visual edit
94
94
 
95
95
  <Tabs defaultTab="video">
96
96
  <Tab label="Video" value="video">
97
-
97
+
98
98
  <iframe title="The best i18n solution for Vite and Vue? Discover Intlayer" class="m-auto aspect-16/9 w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/IE3XWkZ6a5U?autoplay=0&amp;origin=https://intlayer.org&amp;controls=0&amp;rel=1"/>
99
99
 
100
100
  </Tab>
@@ -131,19 +131,23 @@ See [Application Template](https://github.com/aymericzip/intlayer-vite-vue-templ
131
131
  Install the necessary packages using npm:
132
132
 
133
133
  ```bash packageManager="npm"
134
- npx intlayer-cli init --interactive
134
+ npx intlayer@canary init --interactive # v9
135
+ # npx intlayer init # v8
135
136
  ```
136
137
 
137
138
  ```bash packageManager="pnpm"
138
- pnpm dlx intlayer-cli init --interactive
139
+ pnpm dlx intlayer@canary init --interactive # v9
140
+ # pnpm dlx intlayer init # v8
139
141
  ```
140
142
 
141
143
  ```bash packageManager="yarn"
142
- yarn dlx intlayer-cli init --interactive
144
+ yarn dlx intlayer@canary init --interactive # v9
145
+ # yarn dlx intlayer init # v8
143
146
  ```
144
147
 
145
148
  ```bash packageManager="bun"
146
- bunx intlayer-cli init --interactive
149
+ bunx intlayer@canary init --interactive # v9
150
+ # bunx intlayer init # v8
147
151
  ```
148
152
 
149
153
  > the `--interactive` flag is optional. Use `intlayer-cli init` if you're an AI agent.
@@ -99,19 +99,23 @@ The following steps are the minimum required to get your existing `i18next` app
99
99
  Install the Intlayer core packages and the compat adapter:
100
100
 
101
101
  ```bash packageManager="npm"
102
- npx intlayer-cli init --interactive
102
+ npx intlayer@canary init --interactive # v9
103
+ # npx intlayer init # v8
103
104
  ```
104
105
 
105
106
  ```bash packageManager="pnpm"
106
- pnpm dlx intlayer-cli init --interactive
107
+ pnpm dlx intlayer@canary init --interactive # v9
108
+ # pnpm dlx intlayer init # v8
107
109
  ```
108
110
 
109
111
  ```bash packageManager="yarn"
110
- yarn dlx intlayer-cli init --interactive
112
+ yarn dlx intlayer@canary init --interactive # v9
113
+ # yarn dlx intlayer init # v8
111
114
  ```
112
115
 
113
116
  ```bash packageManager="bun"
114
- bunx intlayer-cli init --interactive
117
+ bunx intlayer@canary init --interactive # v9
118
+ # bunx intlayer init # v8
115
119
  ```
116
120
 
117
121
  > the `--interactive` flag is optional. Use `intlayer-cli init` if you're an AI agent.
@@ -102,19 +102,23 @@ The following steps are the minimum required to get your existing Next.js Pages
102
102
  Install the Intlayer core packages and the compat adapters:
103
103
 
104
104
  ```bash packageManager="npm"
105
- npx intlayer-cli init --interactive
105
+ npx intlayer@canary init --interactive # v9
106
+ # npx intlayer init # v8
106
107
  ```
107
108
 
108
109
  ```bash packageManager="pnpm"
109
- pnpm dlx intlayer-cli init --interactive
110
+ pnpm dlx intlayer@canary init --interactive # v9
111
+ # pnpm dlx intlayer init # v8
110
112
  ```
111
113
 
112
114
  ```bash packageManager="yarn"
113
- yarn dlx intlayer-cli init --interactive
115
+ yarn dlx intlayer@canary init --interactive # v9
116
+ # yarn dlx intlayer init # v8
114
117
  ```
115
118
 
116
119
  ```bash packageManager="bun"
117
- bunx intlayer-cli init --interactive
120
+ bunx intlayer@canary init --interactive # v9
121
+ # bunx intlayer init # v8
118
122
  ```
119
123
 
120
124
  > the `--interactive` flag is optional. Use `intlayer-cli init` if you're an AI agent.
@@ -98,19 +98,23 @@ The following steps are the minimum required to get your existing `next-intl` ap
98
98
  Install the Intlayer core packages and the `@intlayer/next-intl` compat adapter:
99
99
 
100
100
  ```bash packageManager="npm"
101
- npx intlayer-cli init --interactive
101
+ npx intlayer@canary init --interactive # v9
102
+ # npx intlayer init # v8
102
103
  ```
103
104
 
104
105
  ```bash packageManager="pnpm"
105
- pnpm dlx intlayer-cli init --interactive
106
+ pnpm dlx intlayer@canary init --interactive # v9
107
+ # pnpm dlx intlayer init # v8
106
108
  ```
107
109
 
108
110
  ```bash packageManager="yarn"
109
- yarn dlx intlayer-cli init --interactive
111
+ yarn dlx intlayer@canary init --interactive # v9
112
+ # yarn dlx intlayer init # v8
110
113
  ```
111
114
 
112
115
  ```bash packageManager="bun"
113
- bunx intlayer-cli init --interactive
116
+ bunx intlayer@canary init --interactive # v9
117
+ # bunx intlayer init # v8
114
118
  ```
115
119
 
116
120
  > the `--interactive` flag is optional. Use `intlayer-cli init` if you're an AI agent.
@@ -184,9 +188,7 @@ import { createNextIntlPlugin } from "@intlayer/next-intl/plugin";
184
188
 
185
189
  const withIntlayer = createNextIntlPlugin();
186
190
 
187
- const nextConfig: NextConfig = {
188
- /* your existing config options */
189
- };
191
+ const nextConfig: NextConfig = {/* your existing config options */};
190
192
 
191
193
  export default withIntlayer(nextConfig);
192
194
  ```
@@ -101,19 +101,23 @@ The following steps are the minimum required to get your existing Nuxt app runni
101
101
  Install the Intlayer core packages and the compat adapter:
102
102
 
103
103
  ```bash packageManager="npm"
104
- npx intlayer-cli init --interactive
104
+ npx intlayer@canary init --interactive # v9
105
+ # npx intlayer init # v8
105
106
  ```
106
107
 
107
108
  ```bash packageManager="pnpm"
108
- pnpm dlx intlayer-cli init --interactive
109
+ pnpm dlx intlayer@canary init --interactive # v9
110
+ # pnpm dlx intlayer init # v8
109
111
  ```
110
112
 
111
113
  ```bash packageManager="yarn"
112
- yarn dlx intlayer-cli init --interactive
114
+ yarn dlx intlayer@canary init --interactive # v9
115
+ # yarn dlx intlayer init # v8
113
116
  ```
114
117
 
115
118
  ```bash packageManager="bun"
116
- bunx intlayer-cli init --interactive
119
+ bunx intlayer@canary init --interactive # v9
120
+ # bunx intlayer init # v8
117
121
  ```
118
122
 
119
123
  > the `--interactive` flag is optional. Use `intlayer-cli init` if you're an AI agent.
@@ -101,19 +101,23 @@ The following steps are the minimum required to get your existing `react-i18next
101
101
  Install the Intlayer core packages and the compat adapters:
102
102
 
103
103
  ```bash packageManager="npm"
104
- npx intlayer-cli init --interactive
104
+ npx intlayer@canary init --interactive # v9
105
+ # npx intlayer init # v8
105
106
  ```
106
107
 
107
108
  ```bash packageManager="pnpm"
108
- pnpm dlx intlayer-cli init --interactive
109
+ pnpm dlx intlayer@canary init --interactive # v9
110
+ # pnpm dlx intlayer init # v8
109
111
  ```
110
112
 
111
113
  ```bash packageManager="yarn"
112
- yarn dlx intlayer-cli init --interactive
114
+ yarn dlx intlayer@canary init --interactive # v9
115
+ # yarn dlx intlayer init # v8
113
116
  ```
114
117
 
115
118
  ```bash packageManager="bun"
116
- bunx intlayer-cli init --interactive
119
+ bunx intlayer@canary init --interactive # v9
120
+ # bunx intlayer init # v8
117
121
  ```
118
122
 
119
123
  > the `--interactive` flag is optional. Use `intlayer-cli init` if you're an AI agent.
@@ -209,9 +213,7 @@ import { createNextI18nPlugin } from "@intlayer/next-i18next/plugin";
209
213
 
210
214
  const withIntlayer = createNextI18nPlugin();
211
215
 
212
- const nextConfig: NextConfig = {
213
- /* your options */
214
- };
216
+ const nextConfig: NextConfig = {/* your options */};
215
217
 
216
218
  export default withIntlayer(nextConfig);
217
219
  ```
@@ -100,19 +100,23 @@ The following steps are the minimum required to get your existing `vue-i18n` app
100
100
  Install the Intlayer core packages and the compat adapter:
101
101
 
102
102
  ```bash packageManager="npm"
103
- npx intlayer-cli init --interactive
103
+ npx intlayer@canary init --interactive # v9
104
+ # npx intlayer init # v8
104
105
  ```
105
106
 
106
107
  ```bash packageManager="pnpm"
107
- pnpm dlx intlayer-cli init --interactive
108
+ pnpm dlx intlayer@canary init --interactive # v9
109
+ # pnpm dlx intlayer init # v8
108
110
  ```
109
111
 
110
112
  ```bash packageManager="yarn"
111
- yarn dlx intlayer-cli init --interactive
113
+ yarn dlx intlayer@canary init --interactive # v9
114
+ # yarn dlx intlayer init # v8
112
115
  ```
113
116
 
114
117
  ```bash packageManager="bun"
115
- bunx intlayer-cli init --interactive
118
+ bunx intlayer@canary init --interactive # v9
119
+ # bunx intlayer init # v8
116
120
  ```
117
121
 
118
122
  > the `--interactive` flag is optional. Use `intlayer-cli init` if you're an AI agent.
@@ -201,24 +201,6 @@ const product = useIntlayer("product-copy", {
201
201
 
202
202
  ---
203
203
 
204
- ## Dynamic Loading & Bundle Size Optimizations
205
-
206
- To keep bundles extremely small, Intlayer v9 supports dynamic lazy loading.
207
-
208
- In your configuration, set `importMode` to `'dynamic'` or `'fetch'`:
209
-
210
- ```ts fileName="intlayer.config.ts"
211
- export default {
212
- dictionary: {
213
- importMode: "dynamic", // "static" | "dynamic" | "fetch"
214
- },
215
- };
216
- ```
217
-
218
- At build time, `@intlayer/swc` and `@intlayer/babel` scan your files and replace `useIntlayer` / `getIntlayer` calls with tree-shakeable wrappers (`useDictionary` / `useDictionaryDynamic`). Only the content required for the selected collection item, variant, or locale is loaded, preventing your production bundle from containing unused translations.
219
-
220
- ---
221
-
222
204
  ## Vite Plugin: Bundled Compiler & Proxy
223
205
 
224
206
  The `intlayer()` Vite plugin now bundles the **compiler** and the **locale-routing proxy** directly, so most projects only need a single plugin in `vite.config.ts`:
@@ -1,12 +1,11 @@
1
1
  ---
2
2
  createdAt: 2026-06-30
3
- updatedAt: 2026-06-30
3
+ updatedAt: 2026-07-02
4
4
  title: Self-Hosting Intlayer
5
- description: Run a complete Intlayer instance on your own infrastructure with a single command. No Intlayer Cloud account required.
5
+ description: Run a complete Intlayer instance on your own infrastructure with a single container. No Intlayer Cloud account required.
6
6
  keywords:
7
7
  - Self-Hosting
8
8
  - Docker
9
- - Docker Compose
10
9
  - Intlayer
11
10
  - CMS
12
11
  - Installation
@@ -19,13 +18,9 @@ author: aymericzip
19
18
 
20
19
  # Self-Hosting Intlayer
21
20
 
22
- Intlayer can run entirely on your own infrastructure — no Intlayer Cloud account required. A single command boots a production-ready stack:
21
+ Intlayer can run on your own infrastructure — no Intlayer Cloud account required. A single all-in-one Docker image bundles the dashboard, the API, and the local datastores (Redis and MinIO) it needs, supervised by [s6-overlay](https://github.com/just-containers/s6-overlay).
23
22
 
24
- ```sh
25
- curl -fsSL https://intlayer.org/install.sh | sh
26
- ```
27
-
28
- The installer downloads a `docker-compose.yml` and a `.env`, auto-generates the required secrets, and starts all containers with `docker compose up -d`.
23
+ The only external dependency is **MongoDB**: the backend connects to a MongoDB **Atlas** cluster, which you provide. Everything else runs inside the container.
29
24
 
30
25
  ## Table of Contents
31
26
 
@@ -38,60 +33,79 @@ The installer downloads a `docker-compose.yml` and a `.env`, auto-generates the
38
33
  ```
39
34
  ┌─────────────────────────────┐
40
35
  browser ──────▶ │ app (TanStack Start) :3000│ ──┐
41
- └─────────────────────────────┘ │ VITE_BACKEND_URL
36
+ (localhost) └─────────────────────────────┘ │ VITE_BACKEND_URL (baked at build)
42
37
  ┌─────────────────────────────┐ │
43
38
  │ backend (Fastify/Bun) :3100│ ◀─┘
44
39
  └──────────────┬──────────────┘
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)
40
+ ┌──────────┬─────────┼───────────────────────┐
41
+ ▼ ▼ ▼
42
+ redis:6379 minio:9000 Chromium MongoDB Atlas
43
+ (bundled) (S3 API) (in-image) (external, via DB_*)
44
+ minio:9001
45
+ (console)
51
46
  ```
52
47
 
53
- Chromium (used for Puppeteer screenshot generation) is bundled inside the backend image — no separate container is needed.
48
+ Chromium (used for Puppeteer screenshot generation) is bundled inside the image — no separate container is needed. Redis and MinIO run inside the container. MongoDB is **not** hosted by the image; the backend connects to your Atlas cluster over `mongodb+srv://`.
54
49
 
55
50
  ---
56
51
 
57
52
  ## Prerequisites
58
53
 
59
- - **Docker** ≥ 24 and **Docker Compose** ≥ v2. If either is missing, the installer prints the install link and exits.
60
- - Ports `3000`, `3100`, `8025`, `9000`, and `9001` available on the host.
54
+ - **Docker** ≥ 24.
55
+ - Ports `3000`, `3100`, `9000`, and `9001` available on the host.
61
56
  - A Linux or macOS host (or WSL2 on Windows).
57
+ - A **MongoDB Atlas** cluster (a free tier works). Create one at [mongodb.com/atlas](https://www.mongodb.com/atlas).
58
+ - A **Resend** API key for transactional email. Get one at [resend.com](https://resend.com).
62
59
 
63
60
  ---
64
61
 
65
62
  ## Quick start
66
63
 
64
+ Pull and run the published image, supplying your MongoDB Atlas credentials and secrets:
65
+
67
66
  ```sh
68
- curl -fsSL https://intlayer.org/install.sh | sh
67
+ docker run -d --name intlayer \
68
+ -p 3000:3000 \
69
+ -p 3100:3100 \
70
+ -p 9000:9000 \
71
+ -p 9001:9001 \
72
+ -v intlayer-data:/data \
73
+ -e DB_ID="<atlas-user>" \
74
+ -e DB_MDP="<atlas-password>" \
75
+ -e DB_CLUSTER="<cluster>.xxxxx.mongodb.net" \
76
+ -e BETTER_AUTH_SECRET="$(openssl rand -hex 32)" \
77
+ -e S3_SECRET_ACCESS_KEY="$(openssl rand -hex 16)" \
78
+ -e RESEND_API_KEY="<your-resend-key>" \
79
+ aymericzip/intlayer-selfhost
69
80
  ```
70
81
 
71
- What the installer does:
82
+ Then open **http://localhost:3000**.
83
+
84
+ > The dashboard is served on `localhost`. See [Limitations](#limitations) — custom domains are not supported by the published image.
72
85
 
73
- 1. Checks that `docker` and `docker compose` are present.
74
- 2. Downloads `docker-compose.yml` and `.env.example` into `./intlayer/`.
75
- 3. If no `.env` exists, copies the example and generates random secrets for `BETTER_AUTH_SECRET`, `S3_ACCESS_KEY_ID`, and `S3_SECRET_ACCESS_KEY` via `openssl rand`.
76
- 4. Runs `docker compose pull` + `docker compose up -d`.
77
- 5. Prints the URLs: dashboard `:3000`, API `:3100`, email UI `:8025`, MinIO console `:9001`.
86
+ ---
87
+
88
+ ## First-run setup
89
+
90
+ On a fresh instance (empty database), opening the dashboard redirects you to the **`/init`** page:
78
91
 
79
- After the stack is up, open **http://localhost:3000** and create your first account.
92
+ 1. Create the first account. Because the users collection is empty, this account is automatically promoted to **super admin**.
93
+ 2. A verification email is sent (via Resend). Email verification is **mandatory** — this is why `RESEND_API_KEY` must be set before you start.
94
+ 3. Click the link in the email, then sign in.
95
+
96
+ Once an admin exists, `/init` redirects to the standard sign-in page.
80
97
 
81
98
  ---
82
99
 
83
100
  ## Services
84
101
 
85
- | Service | Image | Host port(s) | Purpose |
86
- | ----------- | ------------------------------------ | ------------------------------ | -------------------------------------------------------- |
87
- | **app** | built from `apps/app/Dockerfile` | `3000` | TanStack Start dashboard (CMS UI) |
88
- | **backend** | built from `apps/backend/Dockerfile` | `3100` | Fastify REST API (`/health` endpoint) |
89
- | **mongo** | `mongo:7` | internal | Single-node replica set (`rs0`) |
90
- | **redis** | `redis:7-alpine` | internal | Job queues (BullMQ) and caching (ioredis) |
91
- | **minio** | `minio/minio` | `9000` (S3), `9001` (console) | S3-compatible object storage for avatars and screenshots |
92
- | **mailpit** | `axllent/mailpit` | `1025` (SMTP), `8025` (web UI) | Local transactional email sink |
93
-
94
- Internal ports (mongo, redis) are not exposed to the host by default.
102
+ | Service | Location | Host port(s) | Purpose |
103
+ | ----------- | ------------------ | ----------------------------- | ------------------------------------------------------------- |
104
+ | **app** | bundled | `3000` | TanStack Start dashboard (CMS UI) |
105
+ | **backend** | bundled | `3100` | Fastify REST API (`/health` endpoint) |
106
+ | **redis** | bundled | internal | Job queues (BullMQ) and caching (ioredis) |
107
+ | **minio** | bundled | `9000` (S3), `9001` (console) | S3-compatible object storage for avatars and screenshots |
108
+ | **mongo** | **external** (you) | | MongoDB Atlas, provided via `DB_ID` / `DB_MDP` / `DB_CLUSTER` |
95
109
 
96
110
  > MinIO port `9000` must be reachable by the browser because uploaded assets (avatars, screenshots) are loaded directly from `S3_PUBLIC_URL=http://localhost:9000/intlayer`.
97
111
 
@@ -99,45 +113,41 @@ Internal ports (mongo, redis) are not exposed to the host by default.
99
113
 
100
114
  ## Environment variables
101
115
 
102
- The installer generates a ready-to-use `.env`. The table below describes every variable.
103
-
104
- ### Required (auto-generated or prompted)
105
-
106
- | Variable | Example | Description |
107
- | ---------------------- | ----------------------------------------------- | -------------------------------------------------- |
108
- | `NODE_ENV` | `production` | Runtime environment |
109
- | `PORT` | `3100` | Backend listening port |
110
- | `BACKEND_URL` | `http://localhost:3100` | Public URL of the backend API |
111
- | `APP_URL` | `http://localhost:3000` | Public URL of the dashboard |
112
- | `DOMAIN` | `localhost` | Cookie domain |
113
- | `MONGODB_URI` | `mongodb://mongo:27017/intlayer?replicaSet=rs0` | Full MongoDB connection URI |
114
- | `REDIS_URL` | `redis://redis:6379` | Redis connection URL |
115
- | `BETTER_AUTH_SECRET` | _(generated)_ | 32-byte secret for session signing |
116
- | `MAIL_PROVIDER` | `smtp` | Mail transport: `smtp` or `resend` |
117
- | `MAIL_SMTP_HOST` | `mailpit` | SMTP hostname (Mailpit container name) |
118
- | `MAIL_SMTP_PORT` | `1025` | SMTP port |
119
- | `MAIL_FROM` | `Intlayer <no-reply@localhost>` | Sender address |
120
- | `S3_ENDPOINT` | `http://minio:9000` | S3-compatible endpoint |
121
- | `S3_PUBLIC_URL` | `http://localhost:9000/intlayer` | Public URL for browser asset loading |
122
- | `S3_BUCKET_NAME` | `intlayer` | Bucket name |
123
- | `S3_ACCESS_KEY_ID` | _(generated)_ | MinIO access key |
124
- | `S3_SECRET_ACCESS_KEY` | _(generated)_ | MinIO secret key |
125
- | `VITE_BACKEND_URL` | `http://localhost:3100` | Backend URL baked into the dashboard at build time |
126
- | `VITE_DOMAIN` | `localhost` | Domain baked into the dashboard at build time |
116
+ ### Required
117
+
118
+ | Variable | Example | Description |
119
+ | ---------------------- | ---------------------------- | ------------------------------------------------------------- |
120
+ | `DB_ID` | `intlayer` | MongoDB Atlas user |
121
+ | `DB_MDP` | _(your password)_ | MongoDB Atlas password |
122
+ | `DB_CLUSTER` | `cluster0.xxxxx.mongodb.net` | MongoDB Atlas cluster host (used in the `mongodb+srv://` URI) |
123
+ | `BETTER_AUTH_SECRET` | _(generated)_ | 32-byte secret for session signing |
124
+ | `S3_SECRET_ACCESS_KEY` | _(generated)_ | Secret for the bundled MinIO |
125
+ | `RESEND_API_KEY` | _(your key)_ | Transactional email; required to complete first-run setup |
126
+
127
+ ### Baked-in defaults (override only if needed)
128
+
129
+ | Variable | Default | Description |
130
+ | ------------------ | -------------------------------- | ------------------------------------ |
131
+ | `PORT` | `3100` | Backend listening port |
132
+ | `APP_URL` | `http://localhost:3000` | Public URL of the dashboard |
133
+ | `BACKEND_URL` | `http://localhost:3100` | Public URL of the backend API |
134
+ | `DOMAIN` | `localhost` | Cookie domain |
135
+ | `REDIS_URL` | `redis://127.0.0.1:6379` | Bundled Redis |
136
+ | `S3_ENDPOINT` | `http://127.0.0.1:9000` | Bundled MinIO (server-to-server) |
137
+ | `S3_PUBLIC_URL` | `http://localhost:9000/intlayer` | Public URL for browser asset loading |
138
+ | `S3_BUCKET_NAME` | `intlayer` | Bucket name |
139
+ | `S3_ACCESS_KEY_ID` | `intlayer` | MinIO access key |
127
140
 
128
141
  ### Optional (features degrade gracefully when absent)
129
142
 
130
- | Variable | Feature |
131
- | -------------------------------------------------------- | ----------------------------------------------------------- |
132
- | `OPENAI_API_KEY` | AI-assisted translation and content audit |
133
- | `STRIPE_SECRET_KEY`, `STRIPE_WEBHOOK_SECRET`, `STRIPE_*` | Billing and subscription management |
134
- | `RESEND_API_KEY` | Transactional email via Resend (overrides Mailpit when set) |
135
- | `GITHUB_CLIENT_ID`, `GITHUB_CLIENT_SECRET` | GitHub OAuth login |
136
- | `GOOGLE_CLIENT_ID`, `GOOGLE_CLIENT_SECRET` | Google OAuth login |
137
- | `GITLAB_CLIENT_ID`, `GITLAB_CLIENT_SECRET` | GitLab OAuth login |
138
- | `MICROSOFT_CLIENT_ID`, `MICROSOFT_CLIENT_SECRET` | Microsoft OAuth login |
139
- | `LINKEDIN_CLIENT_ID`, `LINKEDIN_CLIENT_SECRET` | LinkedIn OAuth login |
140
- | `ATLASSIAN_CLIENT_ID`, `ATLASSIAN_CLIENT_SECRET` | Atlassian OAuth login |
143
+ | Variable | Feature |
144
+ | -------------------------------------------------------- | ----------------------------------------- |
145
+ | `OPENAI_API_KEY` | AI-assisted translation and content audit |
146
+ | `STRIPE_SECRET_KEY`, `STRIPE_WEBHOOK_SECRET`, `STRIPE_*` | Billing and subscription management |
147
+ | `GITHUB_CLIENT_ID`, `GITHUB_CLIENT_SECRET` | GitHub OAuth login |
148
+ | `GOOGLE_CLIENT_ID`, `GOOGLE_CLIENT_SECRET` | Google OAuth login |
149
+ | `GITLAB_CLIENT_ID`, `GITLAB_CLIENT_SECRET` | GitLab OAuth login |
150
+ | `MICROSOFT_CLIENT_ID`, `MICROSOFT_CLIENT_SECRET` | Microsoft OAuth login |
141
151
 
142
152
  ---
143
153
 
@@ -206,138 +216,70 @@ const { data: dictionaries } = await dictionaryEndpoint(cms).getDictionaries();
206
216
 
207
217
  ## Upgrading
208
218
 
209
- Re-running the installer on an existing deployment performs a rolling upgrade:
219
+ Pull the latest image and recreate the container. Your data is preserved in the named volume (MinIO/Redis) and in your Atlas cluster (MongoDB):
210
220
 
211
221
  ```sh
212
- curl -fsSL https://intlayer.org/install.sh | sh
213
- ```
214
-
215
- This pulls the latest images and restarts containers with `docker compose pull && docker compose up -d`. Existing volumes (`mongo-data`, `redis-data`, `minio-data`) are preserved — no data loss.
216
-
217
- To upgrade manually from inside the `./intlayer/` directory:
218
-
219
- ```sh
220
- docker compose pull
221
- docker compose up -d
222
+ docker pull aymericzip/intlayer-selfhost
223
+ docker stop intlayer && docker rm intlayer
224
+ # re-run the `docker run …` command from Quick start
222
225
  ```
223
226
 
224
227
  ---
225
228
 
226
229
  ## Backup and restore
227
230
 
228
- All persistent data lives in three named Docker volumes.
231
+ MongoDB data lives in your Atlas cluster — back it up with Atlas' own tools. The bundled local datastores live under the `intlayer-data` volume.
229
232
 
230
233
  ### Backup
231
234
 
232
235
  ```sh
233
236
  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 \
237
+ -v intlayer-data:/data \
245
238
  -v "$(pwd)":/backup \
246
- busybox tar czf /backup/minio-data.tar.gz /data
239
+ busybox tar czf /backup/intlayer-data.tar.gz /data
247
240
  ```
248
241
 
249
242
  ### Restore
250
243
 
251
244
  ```sh
252
245
  docker run --rm \
253
- -v intlayer_mongo-data:/data \
246
+ -v intlayer-data:/data \
254
247
  -v "$(pwd)":/backup \
255
- busybox tar xzf /backup/mongo-data.tar.gz -C /
256
-
257
- # Repeat for redis-data and minio-data
248
+ busybox tar xzf /backup/intlayer-data.tar.gz -C /
258
249
  ```
259
250
 
260
251
  ---
261
252
 
262
- ## Using a reverse proxy (Nginx / Caddy)
263
-
264
- For production deployments, place a reverse proxy in front of the app and backend containers instead of exposing them directly.
265
-
266
- ### Nginx example
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
- Update the following `.env` variables to match your public domains:
253
+ ## Limitations
293
254
 
294
- ```sh
295
- BACKEND_URL=https://api.example.com
296
- APP_URL=https://cms.example.com
297
- DOMAIN=example.com
298
- VITE_BACKEND_URL=https://api.example.com
299
- VITE_DOMAIN=example.com
300
- ```
301
-
302
- > `VITE_*` variables are baked into the dashboard image at build time. If you change them after the image is built, you need to rebuild the `app` image (`docker compose build app`) or use runtime config injection.
255
+ - **MongoDB must be external (Atlas).** The backend connects only over `mongodb+srv://` (built from `DB_ID` / `DB_MDP` / `DB_CLUSTER`), so a plain `mongodb://host:27017` — including the container's own bundled `mongod` — cannot be used. Provide a MongoDB Atlas cluster.
256
+ - **No custom domain.** All browser-facing `VITE_*` URLs are inlined into the app at build time, and the published image ships with `localhost` values. The dashboard must be accessed at `http://localhost:3000`; serving it on a public domain would require rebuilding the image with the target URLs baked in and is not supported out of the box.
257
+ - **Email requires Resend.** First-run setup enforces email verification, so `RESEND_API_KEY` must be set. After the first admin signs in, each organization can configure its own SMTP or Resend mailer from the dashboard.
303
258
 
304
259
  ---
305
260
 
306
261
  ## Troubleshooting
307
262
 
308
- ### Backend crash-loops on first start
309
-
310
- MongoDB and Redis must be healthy before the backend starts. The compose file uses `depends_on` with `condition: service_healthy`. If you see repeated backend restarts, check that the `mongo` and `redis` healthchecks pass:
311
-
312
- ```sh
313
- docker compose ps
314
- docker compose logs mongo
315
- docker compose logs redis
316
- ```
317
-
318
- ### Dashboard cannot reach the API
263
+ ### Dashboard loads but the API resets the connection (`ERR_CONNECTION_RESET` on `:3100`)
319
264
 
320
- Verify that `VITE_BACKEND_URL` matches the URL where the backend is reachable from the **browser** (not the Docker network). If you changed the backend port or added a reverse proxy, rebuild the dashboard image:
265
+ The backend crashed on startup and is not listening. The most common cause is a missing or invalid MongoDB connection: check that `DB_ID`, `DB_MDP`, and `DB_CLUSTER` are set and correct.
321
266
 
322
267
  ```sh
323
- docker compose build app
324
- docker compose up -d app
268
+ docker logs intlayer
325
269
  ```
326
270
 
327
- ### Email not sending
271
+ Look for `MongoDB connection error` near the top of the log.
328
272
 
329
- By default, all outbound email is captured by Mailpit. Open `http://localhost:8025` to see sent messages. To send real email, set `MAIL_PROVIDER=resend` and `RESEND_API_KEY=<your-key>` in `.env`, then restart the backend:
273
+ ### First account can't be verified
330
274
 
331
- ```sh
332
- docker compose restart backend
333
- ```
275
+ Email verification is mandatory. Make sure `RESEND_API_KEY` is set and valid, then re-check your inbox (and spam). Without a working mailer, the verification link is never delivered.
334
276
 
335
277
  ### MinIO bucket missing
336
278
 
337
- If the `minio-init` one-shot service didn't run (or ran before MinIO was ready), create the bucket manually:
279
+ The `init-minio` one-shot creates the bucket on first boot. If assets fail to load, restart the container so it runs again:
338
280
 
339
281
  ```sh
340
- docker compose run --rm minio-init
282
+ docker restart intlayer
341
283
  ```
342
284
 
343
285
  ---
@@ -347,3 +289,4 @@ docker compose run --rm minio-init
347
289
  - [Intlayer CMS documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md)
348
290
  - [Configuration reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/configuration.md)
349
291
  - [CMS SDK — `@intlayer/api`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/intlayer_CMS.md#programmatic-access-with-the-intlayerapi-sdk)
292
+ - [Docker Image (aymercizip/intlayer-selfhost)](https://hub.docker.com/repository/docker/aymercizip/intlayer-selfhost/general)