@intlayer/docs 9.5.5 → 9.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (447) hide show
  1. package/README.md +0 -1
  2. package/blog/ar/transform_existing_vite_react_app_using_compiler.md +4 -2
  3. package/blog/de/transform_existing_vite_react_app_using_compiler.md +4 -2
  4. package/blog/en/transform_existing_vite_react_app_using_compiler.md +4 -2
  5. package/blog/en-GB/transform_existing_vite_react_app_using_compiler.md +4 -2
  6. package/blog/es/transform_existing_vite_react_app_using_compiler.md +4 -2
  7. package/blog/fr/transform_existing_vite_react_app_using_compiler.md +4 -2
  8. package/blog/hi/transform_existing_vite_react_app_using_compiler.md +4 -2
  9. package/blog/id/transform_existing_vite_react_app_using_compiler.md +4 -2
  10. package/blog/it/transform_existing_vite_react_app_using_compiler.md +4 -2
  11. package/blog/ja/transform_existing_vite_react_app_using_compiler.md +4 -2
  12. package/blog/ko/transform_existing_vite_react_app_using_compiler.md +4 -2
  13. package/blog/pl/transform_existing_vite_react_app_using_compiler.md +4 -2
  14. package/blog/pt/transform_existing_vite_react_app_using_compiler.md +4 -2
  15. package/blog/ru/transform_existing_vite_react_app_using_compiler.md +4 -2
  16. package/blog/tr/transform_existing_vite_react_app_using_compiler.md +4 -2
  17. package/blog/uk/transform_existing_vite_react_app_using_compiler.md +4 -2
  18. package/blog/vi/transform_existing_vite_react_app_using_compiler.md +4 -2
  19. package/blog/zh/transform_existing_vite_react_app_using_compiler.md +4 -2
  20. package/docs/ar/intlayer_with_astro.md +19 -32
  21. package/docs/ar/intlayer_with_astro_lit.md +32 -36
  22. package/docs/ar/intlayer_with_astro_preact.md +32 -36
  23. package/docs/ar/intlayer_with_astro_react.md +32 -36
  24. package/docs/ar/intlayer_with_astro_solid.md +32 -36
  25. package/docs/ar/intlayer_with_astro_svelte.md +32 -36
  26. package/docs/ar/intlayer_with_astro_vue.md +32 -36
  27. package/docs/ar/intlayer_with_react_router_v7.md +12 -1
  28. package/docs/ar/intlayer_with_solid_start.md +14 -7
  29. package/docs/ar/intlayer_with_svelte_kit.md +12 -1
  30. package/docs/ar/intlayer_with_tanstack+solid.md +13 -2
  31. package/docs/ar/intlayer_with_tanstack.md +13 -6
  32. package/docs/ar/intlayer_with_vite+lit.md +75 -3
  33. package/docs/ar/intlayer_with_vite+preact.md +27 -19
  34. package/docs/ar/intlayer_with_vite+react.md +27 -19
  35. package/docs/ar/intlayer_with_vite+solid.md +27 -19
  36. package/docs/ar/intlayer_with_vite+svelte.md +27 -19
  37. package/docs/ar/intlayer_with_vite+vanilla.md +16 -3
  38. package/docs/ar/intlayer_with_vite+vue.md +27 -19
  39. package/docs/ar/introduction.md +0 -1
  40. package/docs/ar/readme.md +0 -1
  41. package/docs/ar/releases/v8.md +1 -5
  42. package/docs/bn/intlayer_with_vite+lit.md +75 -3
  43. package/docs/bn/intlayer_with_vite+vanilla.md +16 -3
  44. package/docs/bn/introduction.md +0 -1
  45. package/docs/cs/intlayer_with_vite+lit.md +75 -3
  46. package/docs/cs/intlayer_with_vite+vanilla.md +16 -3
  47. package/docs/cs/introduction.md +0 -1
  48. package/docs/de/intlayer_with_astro.md +12 -25
  49. package/docs/de/intlayer_with_astro_lit.md +23 -27
  50. package/docs/de/intlayer_with_astro_preact.md +23 -27
  51. package/docs/de/intlayer_with_astro_react.md +23 -27
  52. package/docs/de/intlayer_with_astro_solid.md +23 -27
  53. package/docs/de/intlayer_with_astro_svelte.md +23 -27
  54. package/docs/de/intlayer_with_astro_vue.md +23 -27
  55. package/docs/de/intlayer_with_react_router_v7.md +12 -1
  56. package/docs/de/intlayer_with_solid_start.md +14 -7
  57. package/docs/de/intlayer_with_svelte_kit.md +12 -1
  58. package/docs/de/intlayer_with_tanstack+solid.md +13 -2
  59. package/docs/de/intlayer_with_tanstack.md +13 -6
  60. package/docs/de/intlayer_with_vite+lit.md +75 -3
  61. package/docs/de/intlayer_with_vite+preact.md +16 -3
  62. package/docs/de/intlayer_with_vite+react.md +16 -3
  63. package/docs/de/intlayer_with_vite+solid.md +16 -3
  64. package/docs/de/intlayer_with_vite+svelte.md +16 -3
  65. package/docs/de/intlayer_with_vite+vanilla.md +16 -3
  66. package/docs/de/intlayer_with_vite+vue.md +16 -3
  67. package/docs/de/introduction.md +0 -1
  68. package/docs/de/readme.md +0 -1
  69. package/docs/de/releases/v8.md +1 -5
  70. package/docs/en/intlayer_with_astro.md +5 -20
  71. package/docs/en/intlayer_with_astro_lit.md +22 -26
  72. package/docs/en/intlayer_with_astro_preact.md +22 -26
  73. package/docs/en/intlayer_with_astro_react.md +22 -26
  74. package/docs/en/intlayer_with_astro_solid.md +22 -26
  75. package/docs/en/intlayer_with_astro_svelte.md +22 -26
  76. package/docs/en/intlayer_with_astro_vanilla.md +20 -13
  77. package/docs/en/intlayer_with_astro_vue.md +22 -26
  78. package/docs/en/intlayer_with_react_router_v7.md +12 -1
  79. package/docs/en/intlayer_with_solid_start.md +14 -7
  80. package/docs/en/intlayer_with_svelte_kit.md +12 -1
  81. package/docs/en/intlayer_with_tanstack+solid.md +13 -2
  82. package/docs/en/intlayer_with_tanstack.md +12 -5
  83. package/docs/en/intlayer_with_vite+lit.md +75 -3
  84. package/docs/en/intlayer_with_vite+preact.md +16 -3
  85. package/docs/en/intlayer_with_vite+react.md +16 -3
  86. package/docs/en/intlayer_with_vite+solid.md +16 -3
  87. package/docs/en/intlayer_with_vite+svelte.md +16 -3
  88. package/docs/en/intlayer_with_vite+vanilla.md +16 -3
  89. package/docs/en/intlayer_with_vite+vue.md +16 -3
  90. package/docs/en/introduction.md +0 -1
  91. package/docs/en/readme.md +0 -1
  92. package/docs/en/releases/v8.md +1 -5
  93. package/docs/en-GB/intlayer_with_astro.md +12 -25
  94. package/docs/en-GB/intlayer_with_astro_lit.md +23 -27
  95. package/docs/en-GB/intlayer_with_astro_preact.md +23 -27
  96. package/docs/en-GB/intlayer_with_astro_react.md +23 -27
  97. package/docs/en-GB/intlayer_with_astro_solid.md +23 -27
  98. package/docs/en-GB/intlayer_with_astro_svelte.md +23 -27
  99. package/docs/en-GB/intlayer_with_astro_vue.md +23 -27
  100. package/docs/en-GB/intlayer_with_react_router_v7.md +12 -1
  101. package/docs/en-GB/intlayer_with_solid_start.md +14 -7
  102. package/docs/en-GB/intlayer_with_svelte_kit.md +12 -1
  103. package/docs/en-GB/intlayer_with_tanstack+solid.md +13 -2
  104. package/docs/en-GB/intlayer_with_tanstack.md +13 -6
  105. package/docs/en-GB/intlayer_with_vite+lit.md +75 -3
  106. package/docs/en-GB/intlayer_with_vite+preact.md +16 -3
  107. package/docs/en-GB/intlayer_with_vite+react.md +16 -3
  108. package/docs/en-GB/intlayer_with_vite+solid.md +25 -15
  109. package/docs/en-GB/intlayer_with_vite+svelte.md +16 -3
  110. package/docs/en-GB/intlayer_with_vite+vanilla.md +16 -3
  111. package/docs/en-GB/intlayer_with_vite+vue.md +16 -3
  112. package/docs/en-GB/introduction.md +0 -1
  113. package/docs/en-GB/readme.md +0 -1
  114. package/docs/en-GB/releases/v8.md +1 -5
  115. package/docs/es/intlayer_with_astro.md +12 -25
  116. package/docs/es/intlayer_with_astro_lit.md +23 -27
  117. package/docs/es/intlayer_with_astro_preact.md +23 -27
  118. package/docs/es/intlayer_with_astro_react.md +23 -27
  119. package/docs/es/intlayer_with_astro_solid.md +23 -27
  120. package/docs/es/intlayer_with_astro_svelte.md +23 -27
  121. package/docs/es/intlayer_with_astro_vue.md +23 -27
  122. package/docs/es/intlayer_with_react_router_v7.md +12 -1
  123. package/docs/es/intlayer_with_solid_start.md +14 -7
  124. package/docs/es/intlayer_with_svelte_kit.md +12 -1
  125. package/docs/es/intlayer_with_tanstack+solid.md +13 -2
  126. package/docs/es/intlayer_with_tanstack.md +13 -6
  127. package/docs/es/intlayer_with_vite+lit.md +75 -3
  128. package/docs/es/intlayer_with_vite+preact.md +16 -3
  129. package/docs/es/intlayer_with_vite+react.md +16 -3
  130. package/docs/es/intlayer_with_vite+solid.md +16 -3
  131. package/docs/es/intlayer_with_vite+svelte.md +16 -3
  132. package/docs/es/intlayer_with_vite+vanilla.md +16 -3
  133. package/docs/es/intlayer_with_vite+vue.md +16 -3
  134. package/docs/es/introduction.md +0 -1
  135. package/docs/es/readme.md +0 -1
  136. package/docs/es/releases/v8.md +1 -5
  137. package/docs/fr/intlayer_with_astro.md +13 -26
  138. package/docs/fr/intlayer_with_astro_lit.md +24 -28
  139. package/docs/fr/intlayer_with_astro_preact.md +24 -28
  140. package/docs/fr/intlayer_with_astro_react.md +24 -28
  141. package/docs/fr/intlayer_with_astro_solid.md +24 -28
  142. package/docs/fr/intlayer_with_astro_svelte.md +24 -28
  143. package/docs/fr/intlayer_with_astro_vue.md +24 -28
  144. package/docs/fr/intlayer_with_react_router_v7.md +15 -4
  145. package/docs/fr/intlayer_with_solid_start.md +14 -7
  146. package/docs/fr/intlayer_with_svelte_kit.md +15 -4
  147. package/docs/fr/intlayer_with_tanstack+solid.md +15 -4
  148. package/docs/fr/intlayer_with_tanstack.md +13 -6
  149. package/docs/fr/intlayer_with_vite+lit.md +75 -3
  150. package/docs/fr/intlayer_with_vite+preact.md +19 -6
  151. package/docs/fr/intlayer_with_vite+react.md +19 -6
  152. package/docs/fr/intlayer_with_vite+solid.md +19 -6
  153. package/docs/fr/intlayer_with_vite+svelte.md +19 -6
  154. package/docs/fr/intlayer_with_vite+vanilla.md +19 -6
  155. package/docs/fr/intlayer_with_vite+vue.md +19 -6
  156. package/docs/fr/introduction.md +0 -1
  157. package/docs/fr/readme.md +0 -1
  158. package/docs/fr/releases/v8.md +1 -5
  159. package/docs/hi/intlayer_with_astro.md +15 -31
  160. package/docs/hi/intlayer_with_astro_lit.md +26 -33
  161. package/docs/hi/intlayer_with_astro_preact.md +26 -33
  162. package/docs/hi/intlayer_with_astro_react.md +26 -33
  163. package/docs/hi/intlayer_with_astro_solid.md +26 -33
  164. package/docs/hi/intlayer_with_astro_svelte.md +26 -33
  165. package/docs/hi/intlayer_with_astro_vue.md +26 -33
  166. package/docs/hi/intlayer_with_react_router_v7.md +20 -12
  167. package/docs/hi/intlayer_with_solid_start.md +14 -7
  168. package/docs/hi/intlayer_with_svelte_kit.md +20 -12
  169. package/docs/hi/intlayer_with_tanstack+solid.md +13 -2
  170. package/docs/hi/intlayer_with_tanstack.md +21 -17
  171. package/docs/hi/intlayer_with_vite+lit.md +75 -3
  172. package/docs/hi/intlayer_with_vite+preact.md +24 -14
  173. package/docs/hi/intlayer_with_vite+react.md +24 -14
  174. package/docs/hi/intlayer_with_vite+solid.md +24 -14
  175. package/docs/hi/intlayer_with_vite+svelte.md +24 -14
  176. package/docs/hi/intlayer_with_vite+vanilla.md +16 -3
  177. package/docs/hi/intlayer_with_vite+vue.md +24 -14
  178. package/docs/hi/introduction.md +0 -1
  179. package/docs/hi/readme.md +0 -1
  180. package/docs/hi/releases/v8.md +1 -5
  181. package/docs/id/intlayer_with_astro.md +12 -25
  182. package/docs/id/intlayer_with_astro_lit.md +23 -27
  183. package/docs/id/intlayer_with_astro_preact.md +23 -27
  184. package/docs/id/intlayer_with_astro_react.md +23 -27
  185. package/docs/id/intlayer_with_astro_solid.md +23 -27
  186. package/docs/id/intlayer_with_astro_svelte.md +23 -27
  187. package/docs/id/intlayer_with_astro_vue.md +23 -27
  188. package/docs/id/intlayer_with_react_router_v7.md +12 -1
  189. package/docs/id/intlayer_with_solid_start.md +14 -7
  190. package/docs/id/intlayer_with_svelte_kit.md +12 -1
  191. package/docs/id/intlayer_with_tanstack+solid.md +13 -2
  192. package/docs/id/intlayer_with_tanstack.md +13 -6
  193. package/docs/id/intlayer_with_vite+lit.md +75 -3
  194. package/docs/id/intlayer_with_vite+preact.md +16 -3
  195. package/docs/id/intlayer_with_vite+react.md +16 -3
  196. package/docs/id/intlayer_with_vite+solid.md +16 -3
  197. package/docs/id/intlayer_with_vite+svelte.md +16 -3
  198. package/docs/id/intlayer_with_vite+vanilla.md +16 -3
  199. package/docs/id/intlayer_with_vite+vue.md +16 -3
  200. package/docs/id/introduction.md +0 -1
  201. package/docs/id/readme.md +0 -1
  202. package/docs/id/releases/v8.md +1 -5
  203. package/docs/it/intlayer_with_astro.md +12 -25
  204. package/docs/it/intlayer_with_astro_lit.md +23 -27
  205. package/docs/it/intlayer_with_astro_preact.md +23 -27
  206. package/docs/it/intlayer_with_astro_react.md +23 -27
  207. package/docs/it/intlayer_with_astro_solid.md +23 -27
  208. package/docs/it/intlayer_with_astro_svelte.md +23 -27
  209. package/docs/it/intlayer_with_astro_vue.md +23 -27
  210. package/docs/it/intlayer_with_react_router_v7.md +12 -1
  211. package/docs/it/intlayer_with_solid_start.md +14 -7
  212. package/docs/it/intlayer_with_svelte_kit.md +12 -1
  213. package/docs/it/intlayer_with_tanstack+solid.md +13 -2
  214. package/docs/it/intlayer_with_tanstack.md +13 -6
  215. package/docs/it/intlayer_with_vite+lit.md +75 -3
  216. package/docs/it/intlayer_with_vite+preact.md +16 -3
  217. package/docs/it/intlayer_with_vite+react.md +16 -3
  218. package/docs/it/intlayer_with_vite+solid.md +16 -3
  219. package/docs/it/intlayer_with_vite+svelte.md +16 -3
  220. package/docs/it/intlayer_with_vite+vanilla.md +16 -3
  221. package/docs/it/intlayer_with_vite+vue.md +16 -3
  222. package/docs/it/introduction.md +0 -1
  223. package/docs/it/readme.md +0 -1
  224. package/docs/it/releases/v8.md +1 -5
  225. package/docs/ja/intlayer_with_astro.md +12 -25
  226. package/docs/ja/intlayer_with_astro_lit.md +23 -27
  227. package/docs/ja/intlayer_with_astro_preact.md +23 -27
  228. package/docs/ja/intlayer_with_astro_react.md +23 -27
  229. package/docs/ja/intlayer_with_astro_solid.md +23 -27
  230. package/docs/ja/intlayer_with_astro_svelte.md +23 -27
  231. package/docs/ja/intlayer_with_astro_vue.md +23 -27
  232. package/docs/ja/intlayer_with_react_router_v7.md +12 -1
  233. package/docs/ja/intlayer_with_solid_start.md +14 -7
  234. package/docs/ja/intlayer_with_svelte_kit.md +21 -15
  235. package/docs/ja/intlayer_with_tanstack+solid.md +13 -2
  236. package/docs/ja/intlayer_with_tanstack.md +13 -6
  237. package/docs/ja/intlayer_with_vite+lit.md +75 -3
  238. package/docs/ja/intlayer_with_vite+preact.md +16 -3
  239. package/docs/ja/intlayer_with_vite+react.md +16 -3
  240. package/docs/ja/intlayer_with_vite+solid.md +16 -3
  241. package/docs/ja/intlayer_with_vite+svelte.md +16 -3
  242. package/docs/ja/intlayer_with_vite+vanilla.md +16 -3
  243. package/docs/ja/intlayer_with_vite+vue.md +16 -3
  244. package/docs/ja/introduction.md +0 -1
  245. package/docs/ja/readme.md +0 -1
  246. package/docs/ja/releases/v8.md +1 -5
  247. package/docs/ko/intlayer_with_astro.md +6 -21
  248. package/docs/ko/intlayer_with_astro_lit.md +23 -27
  249. package/docs/ko/intlayer_with_astro_preact.md +23 -27
  250. package/docs/ko/intlayer_with_astro_react.md +23 -27
  251. package/docs/ko/intlayer_with_astro_solid.md +23 -27
  252. package/docs/ko/intlayer_with_astro_svelte.md +23 -27
  253. package/docs/ko/intlayer_with_astro_vue.md +23 -27
  254. package/docs/ko/intlayer_with_react_router_v7.md +12 -1
  255. package/docs/ko/intlayer_with_solid_start.md +14 -7
  256. package/docs/ko/intlayer_with_svelte_kit.md +12 -1
  257. package/docs/ko/intlayer_with_tanstack+solid.md +13 -2
  258. package/docs/ko/intlayer_with_tanstack.md +13 -6
  259. package/docs/ko/intlayer_with_vite+lit.md +75 -3
  260. package/docs/ko/intlayer_with_vite+preact.md +16 -3
  261. package/docs/ko/intlayer_with_vite+react.md +16 -3
  262. package/docs/ko/intlayer_with_vite+solid.md +26 -16
  263. package/docs/ko/intlayer_with_vite+svelte.md +16 -3
  264. package/docs/ko/intlayer_with_vite+vanilla.md +16 -3
  265. package/docs/ko/intlayer_with_vite+vue.md +16 -3
  266. package/docs/ko/introduction.md +0 -1
  267. package/docs/ko/readme.md +0 -1
  268. package/docs/ko/releases/v8.md +1 -5
  269. package/docs/nl/intlayer_with_vite+lit.md +75 -3
  270. package/docs/nl/intlayer_with_vite+vanilla.md +16 -3
  271. package/docs/nl/introduction.md +0 -1
  272. package/docs/pl/intlayer_with_astro.md +6 -21
  273. package/docs/pl/intlayer_with_astro_lit.md +23 -27
  274. package/docs/pl/intlayer_with_astro_preact.md +23 -27
  275. package/docs/pl/intlayer_with_astro_react.md +23 -27
  276. package/docs/pl/intlayer_with_astro_solid.md +23 -27
  277. package/docs/pl/intlayer_with_astro_svelte.md +23 -27
  278. package/docs/pl/intlayer_with_astro_vue.md +23 -27
  279. package/docs/pl/intlayer_with_react_router_v7.md +12 -1
  280. package/docs/pl/intlayer_with_solid_start.md +14 -7
  281. package/docs/pl/intlayer_with_svelte_kit.md +12 -1
  282. package/docs/pl/intlayer_with_tanstack+solid.md +13 -2
  283. package/docs/pl/intlayer_with_tanstack.md +13 -6
  284. package/docs/pl/intlayer_with_vite+lit.md +75 -3
  285. package/docs/pl/intlayer_with_vite+preact.md +16 -3
  286. package/docs/pl/intlayer_with_vite+react.md +16 -3
  287. package/docs/pl/intlayer_with_vite+solid.md +16 -3
  288. package/docs/pl/intlayer_with_vite+svelte.md +16 -3
  289. package/docs/pl/intlayer_with_vite+vanilla.md +16 -3
  290. package/docs/pl/intlayer_with_vite+vue.md +16 -3
  291. package/docs/pl/introduction.md +0 -1
  292. package/docs/pl/readme.md +0 -1
  293. package/docs/pl/releases/v8.md +1 -5
  294. package/docs/pt/intlayer_with_astro.md +6 -21
  295. package/docs/pt/intlayer_with_astro_lit.md +23 -27
  296. package/docs/pt/intlayer_with_astro_preact.md +23 -27
  297. package/docs/pt/intlayer_with_astro_react.md +23 -27
  298. package/docs/pt/intlayer_with_astro_solid.md +23 -27
  299. package/docs/pt/intlayer_with_astro_svelte.md +23 -27
  300. package/docs/pt/intlayer_with_astro_vue.md +23 -27
  301. package/docs/pt/intlayer_with_react_router_v7.md +12 -1
  302. package/docs/pt/intlayer_with_solid_start.md +14 -7
  303. package/docs/pt/intlayer_with_svelte_kit.md +12 -1
  304. package/docs/pt/intlayer_with_tanstack+solid.md +13 -2
  305. package/docs/pt/intlayer_with_tanstack.md +13 -6
  306. package/docs/pt/intlayer_with_vite+lit.md +75 -3
  307. package/docs/pt/intlayer_with_vite+preact.md +16 -3
  308. package/docs/pt/intlayer_with_vite+react.md +16 -3
  309. package/docs/pt/intlayer_with_vite+solid.md +16 -3
  310. package/docs/pt/intlayer_with_vite+svelte.md +16 -3
  311. package/docs/pt/intlayer_with_vite+vanilla.md +16 -3
  312. package/docs/pt/intlayer_with_vite+vue.md +16 -3
  313. package/docs/pt/introduction.md +0 -1
  314. package/docs/pt/readme.md +0 -1
  315. package/docs/pt/releases/v8.md +1 -5
  316. package/docs/ru/intlayer_with_astro.md +12 -25
  317. package/docs/ru/intlayer_with_astro_lit.md +23 -27
  318. package/docs/ru/intlayer_with_astro_preact.md +23 -27
  319. package/docs/ru/intlayer_with_astro_react.md +23 -27
  320. package/docs/ru/intlayer_with_astro_solid.md +23 -27
  321. package/docs/ru/intlayer_with_astro_svelte.md +23 -27
  322. package/docs/ru/intlayer_with_astro_vue.md +23 -27
  323. package/docs/ru/intlayer_with_react_router_v7.md +12 -1
  324. package/docs/ru/intlayer_with_solid_start.md +14 -7
  325. package/docs/ru/intlayer_with_svelte_kit.md +12 -1
  326. package/docs/ru/intlayer_with_tanstack+solid.md +13 -2
  327. package/docs/ru/intlayer_with_tanstack.md +13 -6
  328. package/docs/ru/intlayer_with_vite+lit.md +75 -3
  329. package/docs/ru/intlayer_with_vite+preact.md +16 -3
  330. package/docs/ru/intlayer_with_vite+react.md +16 -3
  331. package/docs/ru/intlayer_with_vite+solid.md +16 -3
  332. package/docs/ru/intlayer_with_vite+svelte.md +16 -3
  333. package/docs/ru/intlayer_with_vite+vanilla.md +16 -3
  334. package/docs/ru/intlayer_with_vite+vue.md +16 -3
  335. package/docs/ru/introduction.md +0 -1
  336. package/docs/ru/readme.md +0 -1
  337. package/docs/ru/releases/v8.md +1 -5
  338. package/docs/tr/intlayer_with_astro.md +12 -25
  339. package/docs/tr/intlayer_with_astro_lit.md +24 -28
  340. package/docs/tr/intlayer_with_astro_preact.md +24 -28
  341. package/docs/tr/intlayer_with_astro_react.md +24 -28
  342. package/docs/tr/intlayer_with_astro_solid.md +24 -28
  343. package/docs/tr/intlayer_with_astro_svelte.md +24 -28
  344. package/docs/tr/intlayer_with_astro_vue.md +24 -28
  345. package/docs/tr/intlayer_with_react_router_v7.md +12 -1
  346. package/docs/tr/intlayer_with_solid_start.md +14 -7
  347. package/docs/tr/intlayer_with_svelte_kit.md +12 -1
  348. package/docs/tr/intlayer_with_tanstack+solid.md +13 -2
  349. package/docs/tr/intlayer_with_tanstack.md +13 -6
  350. package/docs/tr/intlayer_with_vite+lit.md +75 -3
  351. package/docs/tr/intlayer_with_vite+preact.md +16 -3
  352. package/docs/tr/intlayer_with_vite+react.md +16 -3
  353. package/docs/tr/intlayer_with_vite+solid.md +16 -3
  354. package/docs/tr/intlayer_with_vite+svelte.md +16 -3
  355. package/docs/tr/intlayer_with_vite+vanilla.md +16 -3
  356. package/docs/tr/intlayer_with_vite+vue.md +16 -3
  357. package/docs/tr/introduction.md +0 -1
  358. package/docs/tr/readme.md +0 -1
  359. package/docs/tr/releases/v8.md +1 -5
  360. package/docs/uk/intlayer_with_astro.md +12 -25
  361. package/docs/uk/intlayer_with_astro_lit.md +23 -27
  362. package/docs/uk/intlayer_with_astro_preact.md +23 -27
  363. package/docs/uk/intlayer_with_astro_react.md +23 -27
  364. package/docs/uk/intlayer_with_astro_solid.md +23 -27
  365. package/docs/uk/intlayer_with_astro_svelte.md +23 -27
  366. package/docs/uk/intlayer_with_astro_vue.md +23 -27
  367. package/docs/uk/intlayer_with_react_router_v7.md +12 -1
  368. package/docs/uk/intlayer_with_solid_start.md +14 -7
  369. package/docs/uk/intlayer_with_svelte_kit.md +12 -1
  370. package/docs/uk/intlayer_with_tanstack+solid.md +13 -2
  371. package/docs/uk/intlayer_with_tanstack.md +13 -6
  372. package/docs/uk/intlayer_with_vite+lit.md +75 -3
  373. package/docs/uk/intlayer_with_vite+preact.md +16 -3
  374. package/docs/uk/intlayer_with_vite+react.md +16 -3
  375. package/docs/uk/intlayer_with_vite+solid.md +16 -3
  376. package/docs/uk/intlayer_with_vite+svelte.md +16 -3
  377. package/docs/uk/intlayer_with_vite+vanilla.md +16 -3
  378. package/docs/uk/intlayer_with_vite+vue.md +16 -3
  379. package/docs/uk/introduction.md +0 -1
  380. package/docs/uk/readme.md +0 -1
  381. package/docs/uk/releases/v8.md +1 -5
  382. package/docs/ur/intlayer_with_vite+lit.md +75 -3
  383. package/docs/ur/intlayer_with_vite+vanilla.md +16 -3
  384. package/docs/ur/introduction.md +0 -1
  385. package/docs/vi/intlayer_with_astro.md +12 -25
  386. package/docs/vi/intlayer_with_astro_lit.md +23 -27
  387. package/docs/vi/intlayer_with_astro_preact.md +23 -27
  388. package/docs/vi/intlayer_with_astro_react.md +23 -27
  389. package/docs/vi/intlayer_with_astro_solid.md +23 -27
  390. package/docs/vi/intlayer_with_astro_svelte.md +23 -27
  391. package/docs/vi/intlayer_with_astro_vue.md +23 -27
  392. package/docs/vi/intlayer_with_react_router_v7.md +12 -1
  393. package/docs/vi/intlayer_with_solid_start.md +14 -7
  394. package/docs/vi/intlayer_with_svelte_kit.md +12 -1
  395. package/docs/vi/intlayer_with_tanstack+solid.md +13 -2
  396. package/docs/vi/intlayer_with_tanstack.md +13 -6
  397. package/docs/vi/intlayer_with_vite+lit.md +75 -3
  398. package/docs/vi/intlayer_with_vite+preact.md +16 -3
  399. package/docs/vi/intlayer_with_vite+react.md +16 -3
  400. package/docs/vi/intlayer_with_vite+solid.md +16 -3
  401. package/docs/vi/intlayer_with_vite+svelte.md +16 -3
  402. package/docs/vi/intlayer_with_vite+vanilla.md +16 -3
  403. package/docs/vi/intlayer_with_vite+vue.md +16 -3
  404. package/docs/vi/introduction.md +0 -1
  405. package/docs/vi/readme.md +0 -1
  406. package/docs/vi/releases/v8.md +1 -5
  407. package/docs/zh/intlayer_with_astro.md +6 -21
  408. package/docs/zh/intlayer_with_astro_lit.md +23 -27
  409. package/docs/zh/intlayer_with_astro_preact.md +23 -27
  410. package/docs/zh/intlayer_with_astro_react.md +23 -27
  411. package/docs/zh/intlayer_with_astro_solid.md +23 -27
  412. package/docs/zh/intlayer_with_astro_svelte.md +23 -27
  413. package/docs/zh/intlayer_with_astro_vue.md +23 -27
  414. package/docs/zh/intlayer_with_react_router_v7.md +12 -1
  415. package/docs/zh/intlayer_with_solid_start.md +14 -7
  416. package/docs/zh/intlayer_with_svelte_kit.md +12 -1
  417. package/docs/zh/intlayer_with_tanstack+solid.md +13 -2
  418. package/docs/zh/intlayer_with_tanstack.md +13 -6
  419. package/docs/zh/intlayer_with_vite+lit.md +75 -3
  420. package/docs/zh/intlayer_with_vite+preact.md +16 -3
  421. package/docs/zh/intlayer_with_vite+react.md +16 -3
  422. package/docs/zh/intlayer_with_vite+solid.md +16 -3
  423. package/docs/zh/intlayer_with_vite+svelte.md +16 -3
  424. package/docs/zh/intlayer_with_vite+vanilla.md +16 -3
  425. package/docs/zh/intlayer_with_vite+vue.md +16 -3
  426. package/docs/zh/introduction.md +0 -1
  427. package/docs/zh/readme.md +0 -1
  428. package/docs/zh/releases/v8.md +1 -5
  429. package/docs/zh-TW/introduction.md +0 -1
  430. package/package.json +6 -6
  431. package/docs/ar/intlayer_with_astro_vanilla.md +0 -709
  432. package/docs/de/intlayer_with_astro_vanilla.md +0 -705
  433. package/docs/en-GB/intlayer_with_astro_vanilla.md +0 -709
  434. package/docs/es/intlayer_with_astro_vanilla.md +0 -701
  435. package/docs/fr/intlayer_with_astro_vanilla.md +0 -701
  436. package/docs/hi/intlayer_with_astro_vanilla.md +0 -720
  437. package/docs/id/intlayer_with_astro_vanilla.md +0 -705
  438. package/docs/it/intlayer_with_astro_vanilla.md +0 -705
  439. package/docs/ja/intlayer_with_astro_vanilla.md +0 -708
  440. package/docs/ko/intlayer_with_astro_vanilla.md +0 -720
  441. package/docs/pl/intlayer_with_astro_vanilla.md +0 -705
  442. package/docs/pt/intlayer_with_astro_vanilla.md +0 -705
  443. package/docs/ru/intlayer_with_astro_vanilla.md +0 -716
  444. package/docs/tr/intlayer_with_astro_vanilla.md +0 -705
  445. package/docs/uk/intlayer_with_astro_vanilla.md +0 -705
  446. package/docs/vi/intlayer_with_astro_vanilla.md +0 -705
  447. package/docs/zh/intlayer_with_astro_vanilla.md +0 -704
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2026-04-24
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-09-20
4
4
  title: "Astro + Vue i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng Astro + Vue đa ngôn ngữ (i18n). Dịch với các AI agent và tối ưu hóa kích thước bundle, SEO và hiệu suất."
6
6
  keywords:
@@ -19,6 +19,9 @@ slugs:
19
19
  applicationTemplate: https://github.com/aymericzip/intlayer-astro-template
20
20
  applicationShowcase: https://intlayer-astro-template.vercel.app
21
21
  history:
22
+ - version: 9.5.5
23
+ date: 2026-09-19
24
+ changes: "Sử dụng các hook useIntlayer / useLocale của astro-intlayer trong trang Astro"
22
25
  - version: 8.9.0
23
26
  date: 2026-05-04
24
27
  changes: "Cập nhật cách sử dụng API useIntlayer của Solid sang truy cập thuộc tính trực tiếp"
@@ -150,7 +153,7 @@ bun add intlayer astro-intlayer vue vue-intlayer @astrojs/vue
150
153
  Gói cốt lõi cung cấp các công cụ i18n để quản lý cấu hình, bản dịch, [khai báo nội dung](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/dictionary/content_file.md), chuyển mã và [các lệnh CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/vi/cli/index.md).
151
154
 
152
155
  - **astro-intlayer**
153
- Plugin tích hợp Astro để kết nối Intlayer với [trình đóng gói Vite](https://vite.dev/guide/why.html#why-bundle-for-production); nó cũng bao gồm middleware để phát hiện ngôn ngữ ưa thích của người dùng, quản lý cookie và xử lý chuyển hướng URL.
156
+ Bao gồm plugin tích hợp Astro để tích hợp Intlayer với [Vite bundler](https://vite.dev/guide/why.html#why-bundle-for-production), một middleware phân giải ngôn ngữ của mỗi yêu cầu vào `Astro.locals.intlayer`, và các hook `useIntlayer` / `useDictionary` / `useLocale`. Cùng một đường dẫn import sẽ phân giải thành triển khai máy chủ trong frontmatter `.astro` của bạn và thành triển khai máy khách (được hỗ trợ bởi `vanilla-intlayer`) trong các khối `<script>`.
154
157
 
155
158
  - **vue**
156
159
  Gói Vue cốt lõi.
@@ -239,19 +242,21 @@ export default appContent;
239
242
  </Step>
240
243
  <Step number={5} title="Sử dụng nội dung trong Astro">
241
244
 
242
- Bạn có thể sử dụng các từ điển trực tiếp trong các file `.astro` bằng cách sử dụng các hàm hỗ trợ cốt lõi được xuất từ `intlayer`. Bạn cũng nên thêm metadata cho SEO (như hreflang và liên kết canonical) vào mỗi trang và giới thiệu một Vue island cho nội dung tương tác phía client.
245
+ Sử dụng từ điển của bạn trong các tệp `.astro` với các hook được xuất bởi `astro-intlayer`. Chúng chia sẻ chữ ký của `react-intlayer`: `useIntlayer("key")` trả về nội dung của từ điển và `useLocale()` trả về ngôn ngữ hiện tại mà không cần truyền tham số.
246
+
247
+ Ngôn ngữ đến từ middleware `astro-intlayer`, mà tích hợp tự động đăng ký trước `src/middleware.ts` của riêng bạn. Nó phân giải ngôn ngữ cho mỗi yêu cầu, từ tiền tố URL, sau đó đến ngôn ngữ được lưu trữ bởi máy khách (cookie hoặc tiêu đề), sau đó đến `Accept-Language`, và lưu trữ trong `Astro.locals.intlayer`. Các trang được kết xuất trước chỉ sử dụng URL vì chúng được kết xuất một lần cho mọi khách truy cập.
248
+
249
+ Bạn cũng nên thêm metadata cho SEO (như hreflang và liên kết canonical) vào mỗi trang và giới thiệu một Vue island cho nội dung tương tác phía client.
243
250
 
244
251
  ```astro fileName="src/pages/[...locale]/index.astro"
245
252
  ---
253
+ import { useIntlayer, useLocale } from "astro-intlayer";
246
254
  import {
247
- getIntlayer,
248
- getLocaleFromPath,
249
255
  getLocalizedUrl,
250
- getHTMLTextDir,
251
256
  getPrefix,
252
257
  localeMap,
253
258
  defaultLocale,
254
- type LocalesValues,
259
+ getHTMLTextDir,
255
260
  } from "intlayer";
256
261
  import VueIsland from "../../components/vue/VueIsland.vue";
257
262
 
@@ -261,8 +266,11 @@ export const getStaticPaths = () => {
261
266
  }));
262
267
  };
263
268
 
264
- const locale = getLocaleFromPath(Astro.url.pathname) as LocalesValues;
265
- const { title } = getIntlayer("app", locale);
269
+ // Ngôn ngữ được phân giải bởi middleware (ví dụ /vi/about -> 'vi')
270
+ const { locale } = useLocale();
271
+
272
+ // Nội dung của từ điển 'app' cho ngôn ngữ đó
273
+ const { title } = useIntlayer("app");
266
274
  ---
267
275
 
268
276
  <!doctype html>
@@ -310,6 +318,8 @@ const { title } = getIntlayer("app", locale);
310
318
  </html>
311
319
  ```
312
320
 
321
+ > `Astro.locals.intlayer` cũng hiển thị `locale`, `defaultLocale` và `availableLocales` cho middleware và điểm cuối của riêng bạn. Truyền ngôn ngữ hoặc bộ chọn làm đối số thứ hai (`useIntlayer("app", "fr")`, `useIntlayer("faq", { item: 2 })`) để ghi đè ngôn ngữ yêu cầu cho một lệnh gọi.
322
+
313
323
  > **Lưu ý về thiết lập định tuyến:**
314
324
  > Cấu trúc thư mục bạn sử dụng phụ thuộc vào cài đặt `middleware.routing` trong `intlayer.config.ts`:
315
325
  >
@@ -448,10 +458,10 @@ const pathList: SitemapUrlEntry[] = [
448
458
  { path: "/about", changefreq: "monthly", priority: 0.7 },
449
459
  ];
450
460
 
451
- const SITE_URL = import.meta.env.SITE ?? "http://localhost:4321";
452
-
453
461
  export const GET: APIRoute = async ({ site }) => {
454
- const xmlOutput = generateSitemap(pathList, { siteUrl: SITE_URL });
462
+ const xmlOutput = generateSitemap(pathList, {
463
+ siteUrl: "https://example.com",
464
+ });
455
465
 
456
466
  return new Response(xmlOutput, {
457
467
  headers: { "Content-Type": "application/xml" },
@@ -551,21 +561,7 @@ bun x intlayer extract
551
561
  </Tab>
552
562
  <Tab value='Trình biên dịch Babel'>
553
563
 
554
- > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
555
-
556
- Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
557
-
558
- ```ts fileName="vite.config.ts"
559
- import { defineConfig } from "vite";
560
- import { intlayer, intlayerCompiler } from "vite-intlayer";
561
-
562
- export default defineConfig({
563
- plugins: [
564
- intlayer(),
565
- intlayerCompiler(), // Adds the compiler plugin
566
- ],
567
- });
568
- ```
564
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
569
565
 
570
566
  ```bash packageManager="npm"
571
567
  npm run build # Hoặc npm run dev
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-04
3
- updatedAt: 2026-09-06
3
+ updatedAt: 2026-09-20
4
4
  title: "React Router v7 i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng React Router v7 đa ngôn ngữ (i18n). Dịch với các AI agent và tối ưu hóa kích thước bundle, SEO và hiệu suất."
6
6
  keywords:
@@ -889,8 +889,14 @@ bun x intlayer extract
889
889
  </Tab>
890
890
  <Tab value='Trình biên dịch Babel'>
891
891
 
892
+ <Tabs>
893
+ <Tab value='intlayer >= 9'>
894
+
892
895
  > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
893
896
 
897
+ </Tab>
898
+ <Tab value='intlayer < 9'>
899
+
894
900
  Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
895
901
 
896
902
  ```ts fileName="vite.config.ts"
@@ -905,6 +911,11 @@ export default defineConfig({
905
911
  });
906
912
  ```
907
913
 
914
+ </Tab>
915
+ </Tabs>
916
+
917
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
918
+
908
919
  ```bash packageManager="npm"
909
920
  npm run build # Hoặc npm run dev
910
921
  ```
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-08-06
3
- updatedAt: 2026-08-06
3
+ updatedAt: 2026-09-20
4
4
  title: "Solid Start i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng SolidStart đa ngôn ngữ (i18n). Định tuyến locale được render trên server, hreflang, sitemap và dịch thuật với sự hỗ trợ của AI."
6
6
  keywords:
@@ -748,15 +748,13 @@ SolidStart chuyển đổi một tệp xuất ra phương thức HTTP thành m
748
748
  import type { APIEvent } from "@solidjs/start/server";
749
749
  import { generateSitemap } from "intlayer";
750
750
 
751
- const SITE_URL = process.env.SITE_URL ?? "http://localhost:3000";
752
-
753
751
  export const GET = (_event: APIEvent) => {
754
752
  const sitemap = generateSitemap(
755
753
  [
756
754
  { path: "/", changefreq: "daily", priority: 1.0 },
757
755
  { path: "/about", changefreq: "monthly", priority: 0.8 },
758
756
  ],
759
- { siteUrl: SITE_URL }
757
+ { siteUrl: "https://example.com" }
760
758
  );
761
759
 
762
760
  return new Response(sitemap, {
@@ -790,8 +788,6 @@ Bạn có thể xây dựng `robots.txt` theo cách tương tự với `getMulti
790
788
  ```typescript fileName="src/routes/robots.txt.ts" codeFormat={["typescript", "esm", "commonjs"]}
791
789
  import { getMultilingualUrls } from "intlayer";
792
790
 
793
- const SITE_URL = process.env.SITE_URL ?? "http://localhost:3000";
794
-
795
791
  const disallowedPaths = ["/admin", "/private"].flatMap((path) =>
796
792
  Object.values(getMultilingualUrls(path))
797
793
  );
@@ -803,7 +799,7 @@ export const GET = () =>
803
799
  "Allow: /",
804
800
  ...disallowedPaths.map((path) => `Disallow: ${path}`),
805
801
  "",
806
- `Sitemap: ${SITE_URL}/sitemap.xml`,
802
+ `Sitemap: https://example.com/sitemap.xml`,
807
803
  ].join("\n"),
808
804
  { headers: { "Content-Type": "text/plain" } }
809
805
  );
@@ -922,8 +918,14 @@ bun x intlayer extract
922
918
  </Tab>
923
919
  <Tab value='Babel compiler'>
924
920
 
921
+ <Tabs>
922
+ <Tab value='intlayer >= 9'>
923
+
925
924
  > Kể từ v9, `intlayerCompiler` được bao gồm trong plugin `intlayer`. Vì vậy bạn không cần thêm nó thủ công.
926
925
 
926
+ </Tab>
927
+ <Tab value='intlayer < 9'>
928
+
927
929
  Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
928
930
 
929
931
  ```ts fileName="vite.config.ts"
@@ -942,6 +944,11 @@ export default defineConfig({
942
944
  });
943
945
  ```
944
946
 
947
+ </Tab>
948
+ </Tabs>
949
+
950
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
951
+
945
952
  ```bash packageManager="npm"
946
953
  npm run build # Hoặc npm run dev
947
954
  ```
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-11-20
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-09-20
4
4
  title: "SvelteKit i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng SvelteKit đa ngôn ngữ (i18n). Dịch với các AI agent và tối ưu hóa kích thước bundle, SEO và hiệu suất."
6
6
  keywords:
@@ -707,8 +707,14 @@ bun x intlayer extract
707
707
  </Tab>
708
708
  <Tab value='Trình biên dịch Babel'>
709
709
 
710
+ <Tabs>
711
+ <Tab value='intlayer >= 9'>
712
+
710
713
  > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
711
714
 
715
+ </Tab>
716
+ <Tab value='intlayer < 9'>
717
+
712
718
  Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
713
719
 
714
720
  ```ts fileName="vite.config.ts"
@@ -723,6 +729,11 @@ export default defineConfig({
723
729
  });
724
730
  ```
725
731
 
732
+ </Tab>
733
+ </Tabs>
734
+
735
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
736
+
726
737
  ```bash packageManager="npm"
727
738
  npm run build # Hoặc npm run dev
728
739
  ```
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-03-25
3
- updatedAt: 2026-08-25
3
+ updatedAt: 2026-09-20
4
4
  title: "TanStack Start + Solid i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng TanStack Start + Solid đa ngôn ngữ (i18n). Dịch với các AI agent và tối ưu hóa kích thước bundle, SEO và hiệu suất."
6
6
  keywords:
@@ -986,8 +986,14 @@ bun x intlayer extract
986
986
  </Tab>
987
987
  <Tab value='Babel compiler'>
988
988
 
989
+ <Tabs>
990
+ <Tab value='intlayer >= 9'>
991
+
989
992
  > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
990
993
 
994
+ </Tab>
995
+ <Tab value='intlayer < 9'>
996
+
991
997
  Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
992
998
 
993
999
  ```ts fileName="vite.config.ts"
@@ -1013,6 +1019,11 @@ export default defineConfig({
1013
1019
  });
1014
1020
  ```
1015
1021
 
1022
+ </Tab>
1023
+ </Tabs>
1024
+
1025
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
1026
+
1016
1027
  ```bash packageManager="npm"
1017
1028
  npm run build # Hoặc npm run dev
1018
1029
  ```
@@ -1092,7 +1103,7 @@ export const Route = createFileRoute("/sitemap.xml")({
1092
1103
  { path: "/", changefreq: "daily", priority: 1.0 },
1093
1104
  { path: "/about", changefreq: "monthly", priority: 0.8 },
1094
1105
  ],
1095
- { siteUrl: SITE_URL }
1106
+ { siteUrl: "https://example.com" }
1096
1107
  );
1097
1108
 
1098
1109
  return new Response(sitemap, {
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-09
3
- updatedAt: 2026-08-25
3
+ updatedAt: 2026-09-20
4
4
  title: "TanStack Start i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng TanStack Start đa ngôn ngữ (i18n). Dịch với các AI agent và tối ưu hóa kích thước bundle, SEO và hiệu suất."
6
6
  keywords:
@@ -1068,8 +1068,14 @@ bun x intlayer extract
1068
1068
  </Tab>
1069
1069
  <Tab value="Trình biên dịch Babel">
1070
1070
 
1071
+ <Tabs>
1072
+ <Tab value='intlayer >= 9'>
1073
+
1071
1074
  > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
1072
1075
 
1076
+ </Tab>
1077
+ <Tab value='intlayer < 9'>
1078
+
1073
1079
  Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
1074
1080
 
1075
1081
  ```ts fileName="vite.config.ts"
@@ -1084,6 +1090,11 @@ export default defineConfig({
1084
1090
  });
1085
1091
  ```
1086
1092
 
1093
+ </Tab>
1094
+ </Tabs>
1095
+
1096
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
1097
+
1087
1098
  ```bash packageManager="npm"
1088
1099
  npm run build # Hoặc npm run dev
1089
1100
  ```
@@ -1152,10 +1163,6 @@ Sau đó, tạo một route `src/routes/sitemap[.]xml.ts` sử dụng hàm `gene
1152
1163
  import { createFileRoute } from "@tanstack/react-router";
1153
1164
  import { generateSitemap } from "intlayer";
1154
1165
 
1155
- const SITE_URL = (
1156
- import.meta.env.VITE_SITE_URL ?? "http://localhost:3000"
1157
- ).replace(/\/$/, "");
1158
-
1159
1166
  export const Route = createFileRoute("/sitemap.xml")({
1160
1167
  server: {
1161
1168
  handlers: {
@@ -1165,7 +1172,7 @@ export const Route = createFileRoute("/sitemap.xml")({
1165
1172
  { path: "/", changefreq: "daily", priority: 1.0 },
1166
1173
  { path: "/about", changefreq: "monthly", priority: 0.8 },
1167
1174
  ],
1168
- { siteUrl: SITE_URL }
1175
+ { siteUrl: "https://example.com" }
1169
1176
  );
1170
1177
 
1171
1178
  return new Response(sitemap, {
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2026-03-23
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-09-20
4
4
  title: "Vite + Lit i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng Vite + Lit đa ngôn ngữ (i18n). Dịch với các AI agent và tối ưu hóa kích thước bundle, SEO và hiệu suất."
6
6
  keywords:
@@ -600,6 +600,76 @@ const config: IntlayerConfig = {
600
600
  export default config;
601
601
  ```
602
602
 
603
+ <Tabs>
604
+ <Tab value='Lệnh Extract'>
605
+
606
+ Chạy trình trích xuất để chuyển đổi các thành phần và trích xuất nội dung
607
+
608
+ ```bash packageManager="npm"
609
+ npx intlayer extract
610
+ ```
611
+
612
+ ```bash packageManager="pnpm"
613
+ pnpm intlayer extract
614
+ ```
615
+
616
+ ```bash packageManager="yarn"
617
+ yarn intlayer extract
618
+ ```
619
+
620
+ ```bash packageManager="bun"
621
+ bun x intlayer extract
622
+ ```
623
+
624
+ </Tab>
625
+ <Tab value='Trình biên dịch Babel'>
626
+
627
+ <Tabs>
628
+ <Tab value='intlayer >= 9'>
629
+
630
+ > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
631
+
632
+ </Tab>
633
+ <Tab value='intlayer < 9'>
634
+
635
+ Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
636
+
637
+ ```ts fileName="vite.config.ts"
638
+ import { defineConfig } from "vite";
639
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
640
+
641
+ export default defineConfig({
642
+ plugins: [
643
+ intlayer(),
644
+ intlayerCompiler(), // Adds the compiler plugin
645
+ ],
646
+ });
647
+ ```
648
+
649
+ </Tab>
650
+ </Tabs>
651
+
652
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
653
+
654
+ ```bash packageManager="npm"
655
+ npm run build # Hoặc npm run dev
656
+ ```
657
+
658
+ ```bash packageManager="pnpm"
659
+ pnpm run build # Hoặc pnpm run dev
660
+ ```
661
+
662
+ ```bash packageManager="yarn"
663
+ yarn build # Hoặc yarn dev
664
+ ```
665
+
666
+ ```bash packageManager="bun"
667
+ bun run build # Hoặc bun run dev
668
+ ```
669
+
670
+ </Tab>
671
+ </Tabs>
672
+
603
673
  </Step>
604
674
 
605
675
  </Steps>
@@ -638,7 +708,9 @@ const pathList = [
638
708
  { path: "/about", changefreq: "monthly", priority: 0.7 },
639
709
  ];
640
710
 
641
- const sitemapXml = generateSitemap(pathList, { siteUrl: SITE_URL });
711
+ const sitemapXml = generateSitemap(pathList, {
712
+ siteUrl: "https://example.com",
713
+ });
642
714
  fs.writeFileSync(path.join(__dirname, "public", "sitemap.xml"), sitemapXml);
643
715
 
644
716
  const getAllMultilingualUrls = (urls) =>
@@ -651,7 +723,7 @@ const robotsTxt = [
651
723
  "Allow: /",
652
724
  ...disallowedPaths.map((path) => `Disallow: ${path}`),
653
725
  "",
654
- `Sitemap: ${SITE_URL}/sitemap.xml`,
726
+ `Sitemap: https://example.com/sitemap.xml`,
655
727
  ].join("\n");
656
728
 
657
729
  fs.writeFileSync(path.join(__dirname, "public", "robots.txt"), robotsTxt);
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-04-18
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-09-20
4
4
  title: "Vite + Preact i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng Vite + Preact đa ngôn ngữ (i18n). Dịch với các AI agent và tối ưu hóa kích thước bundle, SEO và hiệu suất."
6
6
  keywords:
@@ -863,8 +863,14 @@ bun x intlayer extract
863
863
  </Tab>
864
864
  <Tab value='Trình biên dịch Babel'>
865
865
 
866
+ <Tabs>
867
+ <Tab value='intlayer >= 9'>
868
+
866
869
  > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
867
870
 
871
+ </Tab>
872
+ <Tab value='intlayer < 9'>
873
+
868
874
  Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
869
875
 
870
876
  ```ts fileName="vite.config.ts"
@@ -879,6 +885,11 @@ export default defineConfig({
879
885
  });
880
886
  ```
881
887
 
888
+ </Tab>
889
+ </Tabs>
890
+
891
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
892
+
882
893
  ```bash packageManager="npm"
883
894
  npm run build # Hoặc npm run dev
884
895
  ```
@@ -935,7 +946,9 @@ const pathList = [
935
946
  { path: "/about", changefreq: "monthly", priority: 0.7 },
936
947
  ];
937
948
 
938
- const sitemapXml = generateSitemap(pathList, { siteUrl: SITE_URL });
949
+ const sitemapXml = generateSitemap(pathList, {
950
+ siteUrl: "https://example.com",
951
+ });
939
952
  fs.writeFileSync(path.join(__dirname, "public", "sitemap.xml"), sitemapXml);
940
953
 
941
954
  const getAllMultilingualUrls = (urls) =>
@@ -948,7 +961,7 @@ const robotsTxt = [
948
961
  "Allow: /",
949
962
  ...disallowedPaths.map((path) => `Disallow: ${path}`),
950
963
  "",
951
- `Sitemap: ${SITE_URL}/sitemap.xml`,
964
+ `Sitemap: https://example.com/sitemap.xml`,
952
965
  ].join("\n");
953
966
 
954
967
  fs.writeFileSync(path.join(__dirname, "public", "robots.txt"), robotsTxt);
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2024-03-07
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-09-20
4
4
  title: "Vite + React i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng Vite + React đa ngôn ngữ (i18n). Dịch với các AI agent và tối ưu hóa kích thước bundle, SEO và hiệu suất."
6
6
  keywords:
@@ -832,8 +832,14 @@ bun x intlayer extract
832
832
  </Tab>
833
833
  <Tab value='Babel compiler'>
834
834
 
835
+ <Tabs>
836
+ <Tab value='intlayer >= 9'>
837
+
835
838
  > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
836
839
 
840
+ </Tab>
841
+ <Tab value='intlayer < 9'>
842
+
837
843
  Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
838
844
 
839
845
  ```ts fileName="vite.config.ts"
@@ -848,6 +854,11 @@ export default defineConfig({
848
854
  });
849
855
  ```
850
856
 
857
+ </Tab>
858
+ </Tabs>
859
+
860
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
861
+
851
862
  ```bash packageManager="npm"
852
863
  npm run build # Hoặc npm run dev
853
864
  ```
@@ -904,7 +915,9 @@ const pathList = [
904
915
  { path: "/about", changefreq: "monthly", priority: 0.7 },
905
916
  ];
906
917
 
907
- const sitemapXml = generateSitemap(pathList, { siteUrl: SITE_URL });
918
+ const sitemapXml = generateSitemap(pathList, {
919
+ siteUrl: "https://example.com",
920
+ });
908
921
  fs.writeFileSync(path.join(__dirname, "public", "sitemap.xml"), sitemapXml);
909
922
 
910
923
  const getAllMultilingualUrls = (urls) =>
@@ -917,7 +930,7 @@ const robotsTxt = [
917
930
  "Allow: /",
918
931
  ...disallowedPaths.map((path) => `Disallow: ${path}`),
919
932
  "",
920
- `Sitemap: ${SITE_URL}/sitemap.xml`,
933
+ `Sitemap: https://example.com/sitemap.xml`,
921
934
  ].join("\n");
922
935
 
923
936
  fs.writeFileSync(path.join(__dirname, "public", "robots.txt"), robotsTxt);
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-04-18
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-09-20
4
4
  title: "Vite + Solid i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng Vite + Solid đa ngôn ngữ (i18n). Dịch với các AI agent và tối ưu hóa kích thước bundle, SEO và hiệu suất."
6
6
  keywords:
@@ -585,8 +585,14 @@ bun x intlayer extract
585
585
  </Tab>
586
586
  <Tab value='Trình biên dịch Babel'>
587
587
 
588
+ <Tabs>
589
+ <Tab value='intlayer >= 9'>
590
+
588
591
  > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
589
592
 
593
+ </Tab>
594
+ <Tab value='intlayer < 9'>
595
+
590
596
  Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
591
597
 
592
598
  ```ts fileName="vite.config.ts"
@@ -601,6 +607,11 @@ export default defineConfig({
601
607
  });
602
608
  ```
603
609
 
610
+ </Tab>
611
+ </Tabs>
612
+
613
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
614
+
604
615
  ```bash packageManager="npm"
605
616
  npm run build # Hoặc npm run dev
606
617
  ```
@@ -657,7 +668,9 @@ const pathList = [
657
668
  { path: "/about", changefreq: "monthly", priority: 0.7 },
658
669
  ];
659
670
 
660
- const sitemapXml = generateSitemap(pathList, { siteUrl: SITE_URL });
671
+ const sitemapXml = generateSitemap(pathList, {
672
+ siteUrl: "https://example.com",
673
+ });
661
674
  fs.writeFileSync(path.join(__dirname, "public", "sitemap.xml"), sitemapXml);
662
675
 
663
676
  const getAllMultilingualUrls = (urls) =>
@@ -670,7 +683,7 @@ const robotsTxt = [
670
683
  "Allow: /",
671
684
  ...disallowedPaths.map((path) => `Disallow: ${path}`),
672
685
  "",
673
- `Sitemap: ${SITE_URL}/sitemap.xml`,
686
+ `Sitemap: https://example.com/sitemap.xml`,
674
687
  ].join("\n");
675
688
 
676
689
  fs.writeFileSync(path.join(__dirname, "public", "robots.txt"), robotsTxt);
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-04-18
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-09-20
4
4
  title: "Vite + Svelte i18n - Hướng dẫn đầy đủ để dịch ứng dụng của bạn"
5
5
  description: "Không còn i18next nữa. Hướng dẫn 2026 để xây dựng ứng dụng Vite + Svelte đa ngôn ngữ (i18n). Dịch với các AI agent và tối ưu hóa kích thước bundle, SEO và hiệu suất."
6
6
  keywords:
@@ -599,8 +599,14 @@ bun x intlayer extract
599
599
  </Tab>
600
600
  <Tab value='Trình biên dịch Babel'>
601
601
 
602
+ <Tabs>
603
+ <Tab value='intlayer >= 9'>
604
+
602
605
  > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
603
606
 
607
+ </Tab>
608
+ <Tab value='intlayer < 9'>
609
+
604
610
  Cập nhật `vite.config.ts` của bạn để bao gồm plugin `intlayerCompiler`:
605
611
 
606
612
  ```ts fileName="vite.config.ts"
@@ -615,6 +621,11 @@ export default defineConfig({
615
621
  });
616
622
  ```
617
623
 
624
+ </Tab>
625
+ </Tabs>
626
+
627
+ Build ứng dụng của bạn để chuyển đổi các thành phần và trích xuất nội dung
628
+
618
629
  ```bash packageManager="npm"
619
630
  npm run build # Hoặc npm run dev
620
631
  ```
@@ -671,7 +682,9 @@ const pathList = [
671
682
  { path: "/about", changefreq: "monthly", priority: 0.7 },
672
683
  ];
673
684
 
674
- const sitemapXml = generateSitemap(pathList, { siteUrl: SITE_URL });
685
+ const sitemapXml = generateSitemap(pathList, {
686
+ siteUrl: "https://example.com",
687
+ });
675
688
  fs.writeFileSync(path.join(__dirname, "public", "sitemap.xml"), sitemapXml);
676
689
 
677
690
  const getAllMultilingualUrls = (urls) =>
@@ -684,7 +697,7 @@ const robotsTxt = [
684
697
  "Allow: /",
685
698
  ...disallowedPaths.map((path) => `Disallow: ${path}`),
686
699
  "",
687
- `Sitemap: ${SITE_URL}/sitemap.xml`,
700
+ `Sitemap: https://example.com/sitemap.xml`,
688
701
  ].join("\n");
689
702
 
690
703
  fs.writeFileSync(path.join(__dirname, "public", "robots.txt"), robotsTxt);