@intlayer/docs 9.5.4 → 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 (814) hide show
  1. package/README.md +2 -2
  2. package/blog/ar/how_to_pick_react_i18n_library.md +28 -0
  3. package/blog/ar/how_to_pick_solid_i18n_library.md +19 -5
  4. package/blog/ar/transform_existing_vite_react_app_using_compiler.md +4 -2
  5. package/blog/de/how_to_pick_react_i18n_library.md +28 -0
  6. package/blog/de/how_to_pick_solid_i18n_library.md +19 -5
  7. package/blog/de/transform_existing_vite_react_app_using_compiler.md +4 -2
  8. package/blog/en/how_to_pick_react_i18n_library.md +28 -0
  9. package/blog/en/how_to_pick_solid_i18n_library.md +19 -5
  10. package/blog/en/transform_existing_vite_react_app_using_compiler.md +4 -2
  11. package/blog/en-GB/how_to_pick_react_i18n_library.md +28 -0
  12. package/blog/en-GB/how_to_pick_solid_i18n_library.md +19 -5
  13. package/blog/en-GB/transform_existing_vite_react_app_using_compiler.md +4 -2
  14. package/blog/es/how_to_pick_react_i18n_library.md +28 -0
  15. package/blog/es/how_to_pick_solid_i18n_library.md +19 -5
  16. package/blog/es/transform_existing_vite_react_app_using_compiler.md +4 -2
  17. package/blog/fr/how_to_pick_react_i18n_library.md +28 -0
  18. package/blog/fr/how_to_pick_solid_i18n_library.md +19 -5
  19. package/blog/fr/transform_existing_vite_react_app_using_compiler.md +4 -2
  20. package/blog/hi/how_to_pick_react_i18n_library.md +28 -0
  21. package/blog/hi/how_to_pick_solid_i18n_library.md +19 -5
  22. package/blog/hi/transform_existing_vite_react_app_using_compiler.md +4 -2
  23. package/blog/id/how_to_pick_react_i18n_library.md +28 -0
  24. package/blog/id/how_to_pick_solid_i18n_library.md +19 -5
  25. package/blog/id/transform_existing_vite_react_app_using_compiler.md +4 -2
  26. package/blog/it/how_to_pick_react_i18n_library.md +28 -0
  27. package/blog/it/how_to_pick_solid_i18n_library.md +19 -5
  28. package/blog/it/transform_existing_vite_react_app_using_compiler.md +4 -2
  29. package/blog/ja/how_to_pick_react_i18n_library.md +28 -0
  30. package/blog/ja/how_to_pick_solid_i18n_library.md +19 -5
  31. package/blog/ja/transform_existing_vite_react_app_using_compiler.md +4 -2
  32. package/blog/ko/how_to_pick_react_i18n_library.md +28 -0
  33. package/blog/ko/how_to_pick_solid_i18n_library.md +19 -5
  34. package/blog/ko/transform_existing_vite_react_app_using_compiler.md +4 -2
  35. package/blog/pl/how_to_pick_react_i18n_library.md +28 -0
  36. package/blog/pl/how_to_pick_solid_i18n_library.md +19 -5
  37. package/blog/pl/transform_existing_vite_react_app_using_compiler.md +4 -2
  38. package/blog/pt/how_to_pick_react_i18n_library.md +28 -0
  39. package/blog/pt/how_to_pick_solid_i18n_library.md +19 -5
  40. package/blog/pt/transform_existing_vite_react_app_using_compiler.md +4 -2
  41. package/blog/ru/how_to_pick_react_i18n_library.md +28 -0
  42. package/blog/ru/how_to_pick_solid_i18n_library.md +19 -5
  43. package/blog/ru/transform_existing_vite_react_app_using_compiler.md +4 -2
  44. package/blog/tr/how_to_pick_react_i18n_library.md +28 -0
  45. package/blog/tr/how_to_pick_solid_i18n_library.md +19 -5
  46. package/blog/tr/transform_existing_vite_react_app_using_compiler.md +4 -2
  47. package/blog/uk/how_to_pick_react_i18n_library.md +28 -0
  48. package/blog/uk/how_to_pick_solid_i18n_library.md +19 -5
  49. package/blog/uk/transform_existing_vite_react_app_using_compiler.md +4 -2
  50. package/blog/vi/how_to_pick_react_i18n_library.md +28 -0
  51. package/blog/vi/how_to_pick_solid_i18n_library.md +19 -5
  52. package/blog/vi/transform_existing_vite_react_app_using_compiler.md +4 -2
  53. package/blog/zh/how_to_pick_react_i18n_library.md +28 -0
  54. package/blog/zh/how_to_pick_solid_i18n_library.md +19 -5
  55. package/blog/zh/transform_existing_vite_react_app_using_compiler.md +4 -2
  56. package/dist/cjs/generated/docs.entry.cjs +220 -0
  57. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  58. package/dist/esm/generated/docs.entry.mjs +220 -0
  59. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  60. package/dist/types/generated/docs.entry.d.ts +11 -0
  61. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  62. package/docs/ar/how_works_intlayer.md +86 -14
  63. package/docs/ar/intlayer_visual_editor.md +7 -0
  64. package/docs/ar/intlayer_with_astro.md +77 -66
  65. package/docs/ar/intlayer_with_astro_lit.md +32 -36
  66. package/docs/ar/intlayer_with_astro_preact.md +39 -36
  67. package/docs/ar/intlayer_with_astro_react.md +39 -36
  68. package/docs/ar/intlayer_with_astro_solid.md +39 -36
  69. package/docs/ar/intlayer_with_astro_svelte.md +39 -36
  70. package/docs/ar/intlayer_with_astro_vue.md +39 -36
  71. package/docs/ar/intlayer_with_nextjs_14.md +7 -0
  72. package/docs/ar/intlayer_with_nextjs_15.md +7 -0
  73. package/docs/ar/intlayer_with_nextjs_16.md +7 -0
  74. package/docs/ar/intlayer_with_react_router_v7.md +19 -1
  75. package/docs/ar/intlayer_with_remix_3.md +73 -112
  76. package/docs/ar/intlayer_with_solid_start.md +14 -7
  77. package/docs/ar/intlayer_with_svelte_kit.md +12 -1
  78. package/docs/ar/intlayer_with_tanstack+solid.md +20 -2
  79. package/docs/ar/intlayer_with_tanstack.md +20 -6
  80. package/docs/ar/intlayer_with_vite+lit.md +75 -3
  81. package/docs/ar/intlayer_with_vite+preact.md +34 -19
  82. package/docs/ar/intlayer_with_vite+react.md +34 -19
  83. package/docs/ar/intlayer_with_vite+solid.md +34 -19
  84. package/docs/ar/intlayer_with_vite+svelte.md +27 -19
  85. package/docs/ar/intlayer_with_vite+vanilla.md +16 -3
  86. package/docs/ar/intlayer_with_vite+vue.md +27 -19
  87. package/docs/ar/introduction.md +0 -1
  88. package/docs/ar/packages/astro-intlayer/exports.md +161 -9
  89. package/docs/ar/packages/astro-intlayer/intlayer.md +76 -0
  90. package/docs/ar/packages/astro-intlayer/onRequest.md +76 -0
  91. package/docs/ar/packages/astro-intlayer/useDictionary.md +95 -0
  92. package/docs/ar/packages/astro-intlayer/useIntlayer.md +98 -0
  93. package/docs/ar/packages/astro-intlayer/useLocale.md +126 -0
  94. package/docs/ar/packages/remix-intlayer/Intlayer.md +55 -0
  95. package/docs/ar/packages/remix-intlayer/exports.md +80 -0
  96. package/docs/ar/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  97. package/docs/ar/packages/remix-intlayer/useDictionary.md +95 -0
  98. package/docs/ar/packages/remix-intlayer/useIntlayer.md +94 -0
  99. package/docs/ar/packages/remix-intlayer/useLocale.md +104 -0
  100. package/docs/ar/readme.md +2 -2
  101. package/docs/ar/releases/v8.md +1 -5
  102. package/docs/bn/intlayer_with_vite+lit.md +75 -3
  103. package/docs/bn/intlayer_with_vite+vanilla.md +16 -3
  104. package/docs/bn/introduction.md +0 -1
  105. package/docs/cs/intlayer_with_vite+lit.md +75 -3
  106. package/docs/cs/intlayer_with_vite+vanilla.md +16 -3
  107. package/docs/cs/introduction.md +0 -1
  108. package/docs/de/how_works_intlayer.md +86 -14
  109. package/docs/de/intlayer_visual_editor.md +7 -0
  110. package/docs/de/intlayer_with_astro.md +70 -59
  111. package/docs/de/intlayer_with_astro_lit.md +23 -27
  112. package/docs/de/intlayer_with_astro_preact.md +30 -27
  113. package/docs/de/intlayer_with_astro_react.md +30 -27
  114. package/docs/de/intlayer_with_astro_solid.md +30 -27
  115. package/docs/de/intlayer_with_astro_svelte.md +30 -27
  116. package/docs/de/intlayer_with_astro_vue.md +30 -27
  117. package/docs/de/intlayer_with_nextjs_14.md +7 -0
  118. package/docs/de/intlayer_with_nextjs_15.md +7 -0
  119. package/docs/de/intlayer_with_nextjs_16.md +7 -0
  120. package/docs/de/intlayer_with_react_router_v7.md +19 -1
  121. package/docs/de/intlayer_with_remix_3.md +70 -109
  122. package/docs/de/intlayer_with_solid_start.md +14 -7
  123. package/docs/de/intlayer_with_svelte_kit.md +12 -1
  124. package/docs/de/intlayer_with_tanstack+solid.md +20 -2
  125. package/docs/de/intlayer_with_tanstack.md +20 -6
  126. package/docs/de/intlayer_with_vite+lit.md +75 -3
  127. package/docs/de/intlayer_with_vite+preact.md +23 -3
  128. package/docs/de/intlayer_with_vite+react.md +23 -3
  129. package/docs/de/intlayer_with_vite+solid.md +23 -3
  130. package/docs/de/intlayer_with_vite+svelte.md +16 -3
  131. package/docs/de/intlayer_with_vite+vanilla.md +16 -3
  132. package/docs/de/intlayer_with_vite+vue.md +16 -3
  133. package/docs/de/introduction.md +0 -1
  134. package/docs/de/packages/astro-intlayer/exports.md +164 -12
  135. package/docs/de/packages/astro-intlayer/intlayer.md +76 -0
  136. package/docs/de/packages/astro-intlayer/onRequest.md +76 -0
  137. package/docs/de/packages/astro-intlayer/useDictionary.md +95 -0
  138. package/docs/de/packages/astro-intlayer/useIntlayer.md +98 -0
  139. package/docs/de/packages/astro-intlayer/useLocale.md +126 -0
  140. package/docs/de/packages/remix-intlayer/Intlayer.md +77 -0
  141. package/docs/de/packages/remix-intlayer/exports.md +176 -0
  142. package/docs/de/packages/remix-intlayer/intlayerMiddleware.md +101 -0
  143. package/docs/de/packages/remix-intlayer/useDictionary.md +94 -0
  144. package/docs/de/packages/remix-intlayer/useIntlayer.md +94 -0
  145. package/docs/de/packages/remix-intlayer/useLocale.md +104 -0
  146. package/docs/de/readme.md +2 -2
  147. package/docs/de/releases/v8.md +1 -5
  148. package/docs/en/how_works_intlayer.md +86 -14
  149. package/docs/en/intlayer_visual_editor.md +7 -0
  150. package/docs/en/intlayer_with_astro.md +67 -60
  151. package/docs/en/intlayer_with_astro_lit.md +22 -26
  152. package/docs/en/intlayer_with_astro_preact.md +29 -26
  153. package/docs/en/intlayer_with_astro_react.md +29 -26
  154. package/docs/en/intlayer_with_astro_solid.md +29 -26
  155. package/docs/en/intlayer_with_astro_svelte.md +29 -26
  156. package/docs/en/intlayer_with_astro_vanilla.md +27 -13
  157. package/docs/en/intlayer_with_astro_vue.md +29 -26
  158. package/docs/en/intlayer_with_nextjs_14.md +7 -0
  159. package/docs/en/intlayer_with_nextjs_15.md +7 -0
  160. package/docs/en/intlayer_with_nextjs_16.md +7 -0
  161. package/docs/en/intlayer_with_react_router_v7.md +19 -1
  162. package/docs/en/intlayer_with_remix_3.md +74 -122
  163. package/docs/en/intlayer_with_solid_start.md +14 -7
  164. package/docs/en/intlayer_with_svelte_kit.md +12 -1
  165. package/docs/en/intlayer_with_tanstack+solid.md +20 -2
  166. package/docs/en/intlayer_with_tanstack.md +19 -5
  167. package/docs/en/intlayer_with_vite+lit.md +75 -3
  168. package/docs/en/intlayer_with_vite+preact.md +23 -3
  169. package/docs/en/intlayer_with_vite+react.md +23 -3
  170. package/docs/en/intlayer_with_vite+solid.md +23 -3
  171. package/docs/en/intlayer_with_vite+svelte.md +16 -3
  172. package/docs/en/intlayer_with_vite+vanilla.md +16 -3
  173. package/docs/en/intlayer_with_vite+vue.md +16 -3
  174. package/docs/en/introduction.md +2 -2
  175. package/docs/en/packages/astro-intlayer/exports.md +161 -9
  176. package/docs/en/packages/astro-intlayer/intlayer.md +76 -0
  177. package/docs/en/packages/astro-intlayer/onRequest.md +76 -0
  178. package/docs/en/packages/astro-intlayer/useDictionary.md +94 -0
  179. package/docs/en/packages/astro-intlayer/useIntlayer.md +98 -0
  180. package/docs/en/packages/astro-intlayer/useLocale.md +126 -0
  181. package/docs/en/packages/remix-intlayer/Intlayer.md +77 -0
  182. package/docs/en/packages/remix-intlayer/exports.md +176 -0
  183. package/docs/en/packages/remix-intlayer/intlayerMiddleware.md +101 -0
  184. package/docs/en/packages/remix-intlayer/useDictionary.md +94 -0
  185. package/docs/en/packages/remix-intlayer/useIntlayer.md +94 -0
  186. package/docs/en/packages/remix-intlayer/useLocale.md +104 -0
  187. package/docs/en/readme.md +2 -2
  188. package/docs/en/releases/v8.md +1 -5
  189. package/docs/en-GB/how_works_intlayer.md +86 -14
  190. package/docs/en-GB/intlayer_visual_editor.md +7 -0
  191. package/docs/en-GB/intlayer_with_astro.md +70 -59
  192. package/docs/en-GB/intlayer_with_astro_lit.md +23 -27
  193. package/docs/en-GB/intlayer_with_astro_preact.md +30 -27
  194. package/docs/en-GB/intlayer_with_astro_react.md +30 -27
  195. package/docs/en-GB/intlayer_with_astro_solid.md +30 -27
  196. package/docs/en-GB/intlayer_with_astro_svelte.md +30 -27
  197. package/docs/en-GB/intlayer_with_astro_vue.md +30 -27
  198. package/docs/en-GB/intlayer_with_nextjs_14.md +7 -0
  199. package/docs/en-GB/intlayer_with_nextjs_15.md +7 -0
  200. package/docs/en-GB/intlayer_with_nextjs_16.md +7 -0
  201. package/docs/en-GB/intlayer_with_react_router_v7.md +19 -1
  202. package/docs/en-GB/intlayer_with_remix_3.md +66 -105
  203. package/docs/en-GB/intlayer_with_solid_start.md +14 -7
  204. package/docs/en-GB/intlayer_with_svelte_kit.md +12 -1
  205. package/docs/en-GB/intlayer_with_tanstack+solid.md +20 -2
  206. package/docs/en-GB/intlayer_with_tanstack.md +20 -6
  207. package/docs/en-GB/intlayer_with_vite+lit.md +75 -3
  208. package/docs/en-GB/intlayer_with_vite+preact.md +23 -3
  209. package/docs/en-GB/intlayer_with_vite+react.md +23 -3
  210. package/docs/en-GB/intlayer_with_vite+solid.md +32 -15
  211. package/docs/en-GB/intlayer_with_vite+svelte.md +16 -3
  212. package/docs/en-GB/intlayer_with_vite+vanilla.md +16 -3
  213. package/docs/en-GB/intlayer_with_vite+vue.md +16 -3
  214. package/docs/en-GB/introduction.md +0 -1
  215. package/docs/en-GB/packages/astro-intlayer/exports.md +162 -10
  216. package/docs/en-GB/packages/astro-intlayer/intlayer.md +76 -0
  217. package/docs/en-GB/packages/astro-intlayer/onRequest.md +76 -0
  218. package/docs/en-GB/packages/astro-intlayer/useDictionary.md +95 -0
  219. package/docs/en-GB/packages/astro-intlayer/useIntlayer.md +98 -0
  220. package/docs/en-GB/packages/astro-intlayer/useLocale.md +126 -0
  221. package/docs/en-GB/packages/remix-intlayer/Intlayer.md +77 -0
  222. package/docs/en-GB/packages/remix-intlayer/exports.md +176 -0
  223. package/docs/en-GB/packages/remix-intlayer/intlayerMiddleware.md +101 -0
  224. package/docs/en-GB/packages/remix-intlayer/useDictionary.md +94 -0
  225. package/docs/en-GB/packages/remix-intlayer/useIntlayer.md +94 -0
  226. package/docs/en-GB/packages/remix-intlayer/useLocale.md +104 -0
  227. package/docs/en-GB/readme.md +2 -2
  228. package/docs/en-GB/releases/v8.md +1 -5
  229. package/docs/es/how_works_intlayer.md +86 -14
  230. package/docs/es/intlayer_visual_editor.md +7 -0
  231. package/docs/es/intlayer_with_astro.md +70 -59
  232. package/docs/es/intlayer_with_astro_lit.md +23 -27
  233. package/docs/es/intlayer_with_astro_preact.md +30 -27
  234. package/docs/es/intlayer_with_astro_react.md +30 -27
  235. package/docs/es/intlayer_with_astro_solid.md +30 -27
  236. package/docs/es/intlayer_with_astro_svelte.md +30 -27
  237. package/docs/es/intlayer_with_astro_vue.md +30 -27
  238. package/docs/es/intlayer_with_nextjs_14.md +7 -0
  239. package/docs/es/intlayer_with_nextjs_15.md +7 -0
  240. package/docs/es/intlayer_with_nextjs_16.md +7 -0
  241. package/docs/es/intlayer_with_react_router_v7.md +19 -1
  242. package/docs/es/intlayer_with_remix_3.md +73 -112
  243. package/docs/es/intlayer_with_solid_start.md +14 -7
  244. package/docs/es/intlayer_with_svelte_kit.md +12 -1
  245. package/docs/es/intlayer_with_tanstack+solid.md +20 -2
  246. package/docs/es/intlayer_with_tanstack.md +20 -6
  247. package/docs/es/intlayer_with_vite+lit.md +75 -3
  248. package/docs/es/intlayer_with_vite+preact.md +23 -3
  249. package/docs/es/intlayer_with_vite+react.md +23 -3
  250. package/docs/es/intlayer_with_vite+solid.md +23 -3
  251. package/docs/es/intlayer_with_vite+svelte.md +16 -3
  252. package/docs/es/intlayer_with_vite+vanilla.md +16 -3
  253. package/docs/es/intlayer_with_vite+vue.md +16 -3
  254. package/docs/es/introduction.md +0 -1
  255. package/docs/es/packages/astro-intlayer/exports.md +162 -10
  256. package/docs/es/packages/astro-intlayer/intlayer.md +76 -0
  257. package/docs/es/packages/astro-intlayer/onRequest.md +76 -0
  258. package/docs/es/packages/astro-intlayer/useDictionary.md +94 -0
  259. package/docs/es/packages/astro-intlayer/useIntlayer.md +98 -0
  260. package/docs/es/packages/astro-intlayer/useLocale.md +126 -0
  261. package/docs/es/packages/remix-intlayer/Intlayer.md +77 -0
  262. package/docs/es/packages/remix-intlayer/exports.md +176 -0
  263. package/docs/es/packages/remix-intlayer/intlayerMiddleware.md +101 -0
  264. package/docs/es/packages/remix-intlayer/useDictionary.md +94 -0
  265. package/docs/es/packages/remix-intlayer/useIntlayer.md +94 -0
  266. package/docs/es/packages/remix-intlayer/useLocale.md +104 -0
  267. package/docs/es/readme.md +2 -2
  268. package/docs/es/releases/v8.md +1 -5
  269. package/docs/fr/how_works_intlayer.md +86 -14
  270. package/docs/fr/intlayer_visual_editor.md +7 -0
  271. package/docs/fr/intlayer_with_astro.md +71 -60
  272. package/docs/fr/intlayer_with_astro_lit.md +24 -28
  273. package/docs/fr/intlayer_with_astro_preact.md +31 -28
  274. package/docs/fr/intlayer_with_astro_react.md +31 -28
  275. package/docs/fr/intlayer_with_astro_solid.md +31 -28
  276. package/docs/fr/intlayer_with_astro_svelte.md +31 -28
  277. package/docs/fr/intlayer_with_astro_vue.md +31 -28
  278. package/docs/fr/intlayer_with_nextjs_14.md +7 -0
  279. package/docs/fr/intlayer_with_nextjs_15.md +7 -0
  280. package/docs/fr/intlayer_with_nextjs_16.md +7 -0
  281. package/docs/fr/intlayer_with_react_router_v7.md +22 -4
  282. package/docs/fr/intlayer_with_remix_3.md +74 -122
  283. package/docs/fr/intlayer_with_solid_start.md +14 -7
  284. package/docs/fr/intlayer_with_svelte_kit.md +15 -4
  285. package/docs/fr/intlayer_with_tanstack+solid.md +22 -4
  286. package/docs/fr/intlayer_with_tanstack.md +20 -6
  287. package/docs/fr/intlayer_with_vite+lit.md +75 -3
  288. package/docs/fr/intlayer_with_vite+preact.md +26 -6
  289. package/docs/fr/intlayer_with_vite+react.md +26 -6
  290. package/docs/fr/intlayer_with_vite+solid.md +26 -6
  291. package/docs/fr/intlayer_with_vite+svelte.md +19 -6
  292. package/docs/fr/intlayer_with_vite+vanilla.md +19 -6
  293. package/docs/fr/intlayer_with_vite+vue.md +19 -6
  294. package/docs/fr/introduction.md +0 -1
  295. package/docs/fr/packages/astro-intlayer/exports.md +162 -10
  296. package/docs/fr/packages/astro-intlayer/intlayer.md +76 -0
  297. package/docs/fr/packages/astro-intlayer/onRequest.md +76 -0
  298. package/docs/fr/packages/astro-intlayer/useDictionary.md +94 -0
  299. package/docs/fr/packages/astro-intlayer/useIntlayer.md +98 -0
  300. package/docs/fr/packages/astro-intlayer/useLocale.md +126 -0
  301. package/docs/fr/packages/remix-intlayer/Intlayer.md +77 -0
  302. package/docs/fr/packages/remix-intlayer/exports.md +176 -0
  303. package/docs/fr/packages/remix-intlayer/intlayerMiddleware.md +101 -0
  304. package/docs/fr/packages/remix-intlayer/useDictionary.md +94 -0
  305. package/docs/fr/packages/remix-intlayer/useIntlayer.md +94 -0
  306. package/docs/fr/packages/remix-intlayer/useLocale.md +104 -0
  307. package/docs/fr/readme.md +2 -2
  308. package/docs/fr/releases/v8.md +1 -5
  309. package/docs/hi/how_works_intlayer.md +86 -14
  310. package/docs/hi/intlayer_visual_editor.md +7 -0
  311. package/docs/hi/intlayer_with_astro.md +74 -66
  312. package/docs/hi/intlayer_with_astro_lit.md +26 -33
  313. package/docs/hi/intlayer_with_astro_preact.md +33 -33
  314. package/docs/hi/intlayer_with_astro_react.md +33 -33
  315. package/docs/hi/intlayer_with_astro_solid.md +33 -33
  316. package/docs/hi/intlayer_with_astro_svelte.md +33 -33
  317. package/docs/hi/intlayer_with_astro_vue.md +33 -33
  318. package/docs/hi/intlayer_with_nextjs_14.md +7 -0
  319. package/docs/hi/intlayer_with_nextjs_15.md +7 -0
  320. package/docs/hi/intlayer_with_nextjs_16.md +7 -0
  321. package/docs/hi/intlayer_with_react_router_v7.md +27 -12
  322. package/docs/hi/intlayer_with_remix_3.md +73 -112
  323. package/docs/hi/intlayer_with_solid_start.md +14 -7
  324. package/docs/hi/intlayer_with_svelte_kit.md +20 -12
  325. package/docs/hi/intlayer_with_tanstack+solid.md +20 -2
  326. package/docs/hi/intlayer_with_tanstack.md +28 -17
  327. package/docs/hi/intlayer_with_vite+lit.md +75 -3
  328. package/docs/hi/intlayer_with_vite+preact.md +31 -14
  329. package/docs/hi/intlayer_with_vite+react.md +31 -14
  330. package/docs/hi/intlayer_with_vite+solid.md +31 -14
  331. package/docs/hi/intlayer_with_vite+svelte.md +24 -14
  332. package/docs/hi/intlayer_with_vite+vanilla.md +16 -3
  333. package/docs/hi/intlayer_with_vite+vue.md +24 -14
  334. package/docs/hi/introduction.md +0 -1
  335. package/docs/hi/packages/astro-intlayer/exports.md +165 -13
  336. package/docs/hi/packages/astro-intlayer/intlayer.md +76 -0
  337. package/docs/hi/packages/astro-intlayer/onRequest.md +76 -0
  338. package/docs/hi/packages/astro-intlayer/useDictionary.md +95 -0
  339. package/docs/hi/packages/astro-intlayer/useIntlayer.md +98 -0
  340. package/docs/hi/packages/astro-intlayer/useLocale.md +126 -0
  341. package/docs/hi/packages/remix-intlayer/Intlayer.md +55 -0
  342. package/docs/hi/packages/remix-intlayer/exports.md +80 -0
  343. package/docs/hi/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  344. package/docs/hi/packages/remix-intlayer/useDictionary.md +95 -0
  345. package/docs/hi/packages/remix-intlayer/useIntlayer.md +94 -0
  346. package/docs/hi/packages/remix-intlayer/useLocale.md +104 -0
  347. package/docs/hi/readme.md +2 -2
  348. package/docs/hi/releases/v8.md +1 -5
  349. package/docs/id/how_works_intlayer.md +86 -14
  350. package/docs/id/intlayer_visual_editor.md +7 -0
  351. package/docs/id/intlayer_with_astro.md +70 -59
  352. package/docs/id/intlayer_with_astro_lit.md +23 -27
  353. package/docs/id/intlayer_with_astro_preact.md +30 -27
  354. package/docs/id/intlayer_with_astro_react.md +30 -27
  355. package/docs/id/intlayer_with_astro_solid.md +30 -27
  356. package/docs/id/intlayer_with_astro_svelte.md +30 -27
  357. package/docs/id/intlayer_with_astro_vue.md +30 -27
  358. package/docs/id/intlayer_with_nextjs_14.md +7 -0
  359. package/docs/id/intlayer_with_nextjs_15.md +7 -0
  360. package/docs/id/intlayer_with_nextjs_16.md +7 -0
  361. package/docs/id/intlayer_with_react_router_v7.md +19 -1
  362. package/docs/id/intlayer_with_remix_3.md +101 -148
  363. package/docs/id/intlayer_with_solid_start.md +14 -7
  364. package/docs/id/intlayer_with_svelte_kit.md +12 -1
  365. package/docs/id/intlayer_with_tanstack+solid.md +20 -2
  366. package/docs/id/intlayer_with_tanstack.md +20 -6
  367. package/docs/id/intlayer_with_vite+lit.md +75 -3
  368. package/docs/id/intlayer_with_vite+preact.md +23 -3
  369. package/docs/id/intlayer_with_vite+react.md +23 -3
  370. package/docs/id/intlayer_with_vite+solid.md +23 -3
  371. package/docs/id/intlayer_with_vite+svelte.md +16 -3
  372. package/docs/id/intlayer_with_vite+vanilla.md +16 -3
  373. package/docs/id/intlayer_with_vite+vue.md +16 -3
  374. package/docs/id/introduction.md +0 -1
  375. package/docs/id/packages/astro-intlayer/exports.md +163 -11
  376. package/docs/id/packages/astro-intlayer/intlayer.md +76 -0
  377. package/docs/id/packages/astro-intlayer/onRequest.md +76 -0
  378. package/docs/id/packages/astro-intlayer/useDictionary.md +94 -0
  379. package/docs/id/packages/astro-intlayer/useIntlayer.md +98 -0
  380. package/docs/id/packages/astro-intlayer/useLocale.md +126 -0
  381. package/docs/id/packages/remix-intlayer/Intlayer.md +55 -0
  382. package/docs/id/packages/remix-intlayer/exports.md +80 -0
  383. package/docs/id/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  384. package/docs/id/packages/remix-intlayer/useDictionary.md +95 -0
  385. package/docs/id/packages/remix-intlayer/useIntlayer.md +94 -0
  386. package/docs/id/packages/remix-intlayer/useLocale.md +104 -0
  387. package/docs/id/readme.md +2 -2
  388. package/docs/id/releases/v8.md +1 -5
  389. package/docs/it/how_works_intlayer.md +86 -14
  390. package/docs/it/intlayer_visual_editor.md +7 -0
  391. package/docs/it/intlayer_with_astro.md +70 -59
  392. package/docs/it/intlayer_with_astro_lit.md +23 -27
  393. package/docs/it/intlayer_with_astro_preact.md +30 -27
  394. package/docs/it/intlayer_with_astro_react.md +30 -27
  395. package/docs/it/intlayer_with_astro_solid.md +30 -27
  396. package/docs/it/intlayer_with_astro_svelte.md +30 -27
  397. package/docs/it/intlayer_with_astro_vue.md +30 -27
  398. package/docs/it/intlayer_with_nextjs_14.md +7 -0
  399. package/docs/it/intlayer_with_nextjs_15.md +7 -0
  400. package/docs/it/intlayer_with_nextjs_16.md +7 -0
  401. package/docs/it/intlayer_with_react_router_v7.md +19 -1
  402. package/docs/it/intlayer_with_remix_3.md +70 -109
  403. package/docs/it/intlayer_with_solid_start.md +14 -7
  404. package/docs/it/intlayer_with_svelte_kit.md +12 -1
  405. package/docs/it/intlayer_with_tanstack+solid.md +20 -2
  406. package/docs/it/intlayer_with_tanstack.md +20 -6
  407. package/docs/it/intlayer_with_vite+lit.md +75 -3
  408. package/docs/it/intlayer_with_vite+preact.md +23 -3
  409. package/docs/it/intlayer_with_vite+react.md +23 -3
  410. package/docs/it/intlayer_with_vite+solid.md +23 -3
  411. package/docs/it/intlayer_with_vite+svelte.md +16 -3
  412. package/docs/it/intlayer_with_vite+vanilla.md +16 -3
  413. package/docs/it/intlayer_with_vite+vue.md +16 -3
  414. package/docs/it/introduction.md +0 -1
  415. package/docs/it/packages/astro-intlayer/exports.md +161 -9
  416. package/docs/it/packages/astro-intlayer/intlayer.md +76 -0
  417. package/docs/it/packages/astro-intlayer/onRequest.md +76 -0
  418. package/docs/it/packages/astro-intlayer/useDictionary.md +95 -0
  419. package/docs/it/packages/astro-intlayer/useIntlayer.md +98 -0
  420. package/docs/it/packages/astro-intlayer/useLocale.md +126 -0
  421. package/docs/it/packages/remix-intlayer/Intlayer.md +77 -0
  422. package/docs/it/packages/remix-intlayer/exports.md +176 -0
  423. package/docs/it/packages/remix-intlayer/intlayerMiddleware.md +101 -0
  424. package/docs/it/packages/remix-intlayer/useDictionary.md +94 -0
  425. package/docs/it/packages/remix-intlayer/useIntlayer.md +94 -0
  426. package/docs/it/packages/remix-intlayer/useLocale.md +104 -0
  427. package/docs/it/readme.md +2 -2
  428. package/docs/it/releases/v8.md +1 -5
  429. package/docs/ja/how_works_intlayer.md +86 -14
  430. package/docs/ja/intlayer_visual_editor.md +7 -0
  431. package/docs/ja/intlayer_with_astro.md +71 -60
  432. package/docs/ja/intlayer_with_astro_lit.md +23 -27
  433. package/docs/ja/intlayer_with_astro_preact.md +30 -27
  434. package/docs/ja/intlayer_with_astro_react.md +30 -27
  435. package/docs/ja/intlayer_with_astro_solid.md +30 -27
  436. package/docs/ja/intlayer_with_astro_svelte.md +30 -27
  437. package/docs/ja/intlayer_with_astro_vue.md +30 -27
  438. package/docs/ja/intlayer_with_nextjs_14.md +7 -0
  439. package/docs/ja/intlayer_with_nextjs_15.md +7 -0
  440. package/docs/ja/intlayer_with_nextjs_16.md +7 -0
  441. package/docs/ja/intlayer_with_react_router_v7.md +19 -1
  442. package/docs/ja/intlayer_with_remix_3.md +73 -112
  443. package/docs/ja/intlayer_with_solid_start.md +14 -7
  444. package/docs/ja/intlayer_with_svelte_kit.md +21 -15
  445. package/docs/ja/intlayer_with_tanstack+solid.md +20 -2
  446. package/docs/ja/intlayer_with_tanstack.md +20 -6
  447. package/docs/ja/intlayer_with_vite+lit.md +75 -3
  448. package/docs/ja/intlayer_with_vite+preact.md +23 -3
  449. package/docs/ja/intlayer_with_vite+react.md +23 -3
  450. package/docs/ja/intlayer_with_vite+solid.md +23 -3
  451. package/docs/ja/intlayer_with_vite+svelte.md +16 -3
  452. package/docs/ja/intlayer_with_vite+vanilla.md +16 -3
  453. package/docs/ja/intlayer_with_vite+vue.md +16 -3
  454. package/docs/ja/introduction.md +0 -1
  455. package/docs/ja/packages/astro-intlayer/exports.md +163 -11
  456. package/docs/ja/packages/astro-intlayer/intlayer.md +76 -0
  457. package/docs/ja/packages/astro-intlayer/onRequest.md +76 -0
  458. package/docs/ja/packages/astro-intlayer/useDictionary.md +95 -0
  459. package/docs/ja/packages/astro-intlayer/useIntlayer.md +98 -0
  460. package/docs/ja/packages/astro-intlayer/useLocale.md +126 -0
  461. package/docs/ja/packages/remix-intlayer/Intlayer.md +55 -0
  462. package/docs/ja/packages/remix-intlayer/exports.md +80 -0
  463. package/docs/ja/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  464. package/docs/ja/packages/remix-intlayer/useDictionary.md +95 -0
  465. package/docs/ja/packages/remix-intlayer/useIntlayer.md +94 -0
  466. package/docs/ja/packages/remix-intlayer/useLocale.md +104 -0
  467. package/docs/ja/readme.md +2 -2
  468. package/docs/ja/releases/v8.md +1 -5
  469. package/docs/ko/how_works_intlayer.md +86 -14
  470. package/docs/ko/intlayer_visual_editor.md +7 -0
  471. package/docs/ko/intlayer_with_astro.md +65 -56
  472. package/docs/ko/intlayer_with_astro_lit.md +23 -27
  473. package/docs/ko/intlayer_with_astro_preact.md +30 -27
  474. package/docs/ko/intlayer_with_astro_react.md +30 -27
  475. package/docs/ko/intlayer_with_astro_solid.md +30 -27
  476. package/docs/ko/intlayer_with_astro_svelte.md +30 -27
  477. package/docs/ko/intlayer_with_astro_vue.md +30 -27
  478. package/docs/ko/intlayer_with_nextjs_14.md +7 -0
  479. package/docs/ko/intlayer_with_nextjs_15.md +7 -0
  480. package/docs/ko/intlayer_with_nextjs_16.md +7 -0
  481. package/docs/ko/intlayer_with_react_router_v7.md +19 -1
  482. package/docs/ko/intlayer_with_remix_3.md +73 -112
  483. package/docs/ko/intlayer_with_solid_start.md +14 -7
  484. package/docs/ko/intlayer_with_svelte_kit.md +12 -1
  485. package/docs/ko/intlayer_with_tanstack+solid.md +20 -2
  486. package/docs/ko/intlayer_with_tanstack.md +20 -6
  487. package/docs/ko/intlayer_with_vite+lit.md +75 -3
  488. package/docs/ko/intlayer_with_vite+preact.md +23 -3
  489. package/docs/ko/intlayer_with_vite+react.md +23 -3
  490. package/docs/ko/intlayer_with_vite+solid.md +33 -16
  491. package/docs/ko/intlayer_with_vite+svelte.md +16 -3
  492. package/docs/ko/intlayer_with_vite+vanilla.md +16 -3
  493. package/docs/ko/intlayer_with_vite+vue.md +16 -3
  494. package/docs/ko/introduction.md +0 -1
  495. package/docs/ko/packages/astro-intlayer/exports.md +163 -11
  496. package/docs/ko/packages/astro-intlayer/intlayer.md +76 -0
  497. package/docs/ko/packages/astro-intlayer/onRequest.md +76 -0
  498. package/docs/ko/packages/astro-intlayer/useDictionary.md +95 -0
  499. package/docs/ko/packages/astro-intlayer/useIntlayer.md +98 -0
  500. package/docs/ko/packages/astro-intlayer/useLocale.md +126 -0
  501. package/docs/ko/packages/remix-intlayer/Intlayer.md +55 -0
  502. package/docs/ko/packages/remix-intlayer/exports.md +80 -0
  503. package/docs/ko/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  504. package/docs/ko/packages/remix-intlayer/useDictionary.md +95 -0
  505. package/docs/ko/packages/remix-intlayer/useIntlayer.md +94 -0
  506. package/docs/ko/packages/remix-intlayer/useLocale.md +104 -0
  507. package/docs/ko/readme.md +2 -2
  508. package/docs/ko/releases/v8.md +1 -5
  509. package/docs/nl/intlayer_with_vite+lit.md +75 -3
  510. package/docs/nl/intlayer_with_vite+vanilla.md +16 -3
  511. package/docs/nl/introduction.md +0 -1
  512. package/docs/pl/how_works_intlayer.md +86 -14
  513. package/docs/pl/intlayer_visual_editor.md +7 -0
  514. package/docs/pl/intlayer_with_astro.md +65 -56
  515. package/docs/pl/intlayer_with_astro_lit.md +23 -27
  516. package/docs/pl/intlayer_with_astro_preact.md +30 -27
  517. package/docs/pl/intlayer_with_astro_react.md +30 -27
  518. package/docs/pl/intlayer_with_astro_solid.md +30 -27
  519. package/docs/pl/intlayer_with_astro_svelte.md +30 -27
  520. package/docs/pl/intlayer_with_astro_vue.md +30 -27
  521. package/docs/pl/intlayer_with_nextjs_14.md +7 -0
  522. package/docs/pl/intlayer_with_nextjs_15.md +7 -0
  523. package/docs/pl/intlayer_with_nextjs_16.md +7 -0
  524. package/docs/pl/intlayer_with_react_router_v7.md +19 -1
  525. package/docs/pl/intlayer_with_remix_3.md +101 -148
  526. package/docs/pl/intlayer_with_solid_start.md +14 -7
  527. package/docs/pl/intlayer_with_svelte_kit.md +12 -1
  528. package/docs/pl/intlayer_with_tanstack+solid.md +20 -2
  529. package/docs/pl/intlayer_with_tanstack.md +20 -6
  530. package/docs/pl/intlayer_with_vite+lit.md +75 -3
  531. package/docs/pl/intlayer_with_vite+preact.md +23 -3
  532. package/docs/pl/intlayer_with_vite+react.md +23 -3
  533. package/docs/pl/intlayer_with_vite+solid.md +23 -3
  534. package/docs/pl/intlayer_with_vite+svelte.md +16 -3
  535. package/docs/pl/intlayer_with_vite+vanilla.md +16 -3
  536. package/docs/pl/intlayer_with_vite+vue.md +16 -3
  537. package/docs/pl/introduction.md +0 -1
  538. package/docs/pl/packages/astro-intlayer/exports.md +162 -10
  539. package/docs/pl/packages/astro-intlayer/intlayer.md +76 -0
  540. package/docs/pl/packages/astro-intlayer/onRequest.md +76 -0
  541. package/docs/pl/packages/astro-intlayer/useDictionary.md +94 -0
  542. package/docs/pl/packages/astro-intlayer/useIntlayer.md +98 -0
  543. package/docs/pl/packages/astro-intlayer/useLocale.md +126 -0
  544. package/docs/pl/packages/remix-intlayer/Intlayer.md +55 -0
  545. package/docs/pl/packages/remix-intlayer/exports.md +80 -0
  546. package/docs/pl/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  547. package/docs/pl/packages/remix-intlayer/useDictionary.md +95 -0
  548. package/docs/pl/packages/remix-intlayer/useIntlayer.md +94 -0
  549. package/docs/pl/packages/remix-intlayer/useLocale.md +104 -0
  550. package/docs/pl/readme.md +2 -2
  551. package/docs/pl/releases/v8.md +1 -5
  552. package/docs/pt/how_works_intlayer.md +86 -14
  553. package/docs/pt/intlayer_visual_editor.md +7 -0
  554. package/docs/pt/intlayer_with_astro.md +65 -56
  555. package/docs/pt/intlayer_with_astro_lit.md +23 -27
  556. package/docs/pt/intlayer_with_astro_preact.md +30 -27
  557. package/docs/pt/intlayer_with_astro_react.md +30 -27
  558. package/docs/pt/intlayer_with_astro_solid.md +30 -27
  559. package/docs/pt/intlayer_with_astro_svelte.md +30 -27
  560. package/docs/pt/intlayer_with_astro_vue.md +30 -27
  561. package/docs/pt/intlayer_with_nextjs_14.md +7 -0
  562. package/docs/pt/intlayer_with_nextjs_15.md +7 -0
  563. package/docs/pt/intlayer_with_nextjs_16.md +7 -0
  564. package/docs/pt/intlayer_with_react_router_v7.md +19 -1
  565. package/docs/pt/intlayer_with_remix_3.md +73 -112
  566. package/docs/pt/intlayer_with_solid_start.md +14 -7
  567. package/docs/pt/intlayer_with_svelte_kit.md +12 -1
  568. package/docs/pt/intlayer_with_tanstack+solid.md +20 -2
  569. package/docs/pt/intlayer_with_tanstack.md +20 -6
  570. package/docs/pt/intlayer_with_vite+lit.md +75 -3
  571. package/docs/pt/intlayer_with_vite+preact.md +23 -3
  572. package/docs/pt/intlayer_with_vite+react.md +23 -3
  573. package/docs/pt/intlayer_with_vite+solid.md +23 -3
  574. package/docs/pt/intlayer_with_vite+svelte.md +16 -3
  575. package/docs/pt/intlayer_with_vite+vanilla.md +16 -3
  576. package/docs/pt/intlayer_with_vite+vue.md +16 -3
  577. package/docs/pt/introduction.md +0 -1
  578. package/docs/pt/packages/astro-intlayer/exports.md +162 -10
  579. package/docs/pt/packages/astro-intlayer/intlayer.md +76 -0
  580. package/docs/pt/packages/astro-intlayer/onRequest.md +76 -0
  581. package/docs/pt/packages/astro-intlayer/useDictionary.md +95 -0
  582. package/docs/pt/packages/astro-intlayer/useIntlayer.md +98 -0
  583. package/docs/pt/packages/astro-intlayer/useLocale.md +126 -0
  584. package/docs/pt/packages/remix-intlayer/Intlayer.md +77 -0
  585. package/docs/pt/packages/remix-intlayer/exports.md +176 -0
  586. package/docs/pt/packages/remix-intlayer/intlayerMiddleware.md +101 -0
  587. package/docs/pt/packages/remix-intlayer/useDictionary.md +94 -0
  588. package/docs/pt/packages/remix-intlayer/useIntlayer.md +94 -0
  589. package/docs/pt/packages/remix-intlayer/useLocale.md +104 -0
  590. package/docs/pt/readme.md +2 -2
  591. package/docs/pt/releases/v8.md +1 -5
  592. package/docs/ru/how_works_intlayer.md +86 -14
  593. package/docs/ru/intlayer_visual_editor.md +7 -0
  594. package/docs/ru/intlayer_with_astro.md +71 -60
  595. package/docs/ru/intlayer_with_astro_lit.md +23 -27
  596. package/docs/ru/intlayer_with_astro_preact.md +30 -27
  597. package/docs/ru/intlayer_with_astro_react.md +30 -27
  598. package/docs/ru/intlayer_with_astro_solid.md +30 -27
  599. package/docs/ru/intlayer_with_astro_svelte.md +30 -27
  600. package/docs/ru/intlayer_with_astro_vue.md +30 -27
  601. package/docs/ru/intlayer_with_nextjs_14.md +7 -0
  602. package/docs/ru/intlayer_with_nextjs_15.md +7 -0
  603. package/docs/ru/intlayer_with_nextjs_16.md +7 -0
  604. package/docs/ru/intlayer_with_react_router_v7.md +19 -1
  605. package/docs/ru/intlayer_with_remix_3.md +73 -112
  606. package/docs/ru/intlayer_with_solid_start.md +14 -7
  607. package/docs/ru/intlayer_with_svelte_kit.md +12 -1
  608. package/docs/ru/intlayer_with_tanstack+solid.md +20 -2
  609. package/docs/ru/intlayer_with_tanstack.md +20 -6
  610. package/docs/ru/intlayer_with_vite+lit.md +75 -3
  611. package/docs/ru/intlayer_with_vite+preact.md +23 -3
  612. package/docs/ru/intlayer_with_vite+react.md +23 -3
  613. package/docs/ru/intlayer_with_vite+solid.md +23 -3
  614. package/docs/ru/intlayer_with_vite+svelte.md +16 -3
  615. package/docs/ru/intlayer_with_vite+vanilla.md +16 -3
  616. package/docs/ru/intlayer_with_vite+vue.md +16 -3
  617. package/docs/ru/introduction.md +0 -1
  618. package/docs/ru/packages/astro-intlayer/exports.md +164 -12
  619. package/docs/ru/packages/astro-intlayer/intlayer.md +76 -0
  620. package/docs/ru/packages/astro-intlayer/onRequest.md +76 -0
  621. package/docs/ru/packages/astro-intlayer/useDictionary.md +95 -0
  622. package/docs/ru/packages/astro-intlayer/useIntlayer.md +98 -0
  623. package/docs/ru/packages/astro-intlayer/useLocale.md +126 -0
  624. package/docs/ru/packages/remix-intlayer/Intlayer.md +55 -0
  625. package/docs/ru/packages/remix-intlayer/exports.md +80 -0
  626. package/docs/ru/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  627. package/docs/ru/packages/remix-intlayer/useDictionary.md +95 -0
  628. package/docs/ru/packages/remix-intlayer/useIntlayer.md +94 -0
  629. package/docs/ru/packages/remix-intlayer/useLocale.md +104 -0
  630. package/docs/ru/readme.md +2 -2
  631. package/docs/ru/releases/v8.md +1 -5
  632. package/docs/tr/how_works_intlayer.md +86 -14
  633. package/docs/tr/intlayer_visual_editor.md +7 -0
  634. package/docs/tr/intlayer_with_astro.md +70 -59
  635. package/docs/tr/intlayer_with_astro_lit.md +24 -28
  636. package/docs/tr/intlayer_with_astro_preact.md +31 -28
  637. package/docs/tr/intlayer_with_astro_react.md +31 -28
  638. package/docs/tr/intlayer_with_astro_solid.md +31 -28
  639. package/docs/tr/intlayer_with_astro_svelte.md +31 -28
  640. package/docs/tr/intlayer_with_astro_vue.md +31 -28
  641. package/docs/tr/intlayer_with_nextjs_14.md +7 -0
  642. package/docs/tr/intlayer_with_nextjs_15.md +7 -0
  643. package/docs/tr/intlayer_with_nextjs_16.md +7 -0
  644. package/docs/tr/intlayer_with_react_router_v7.md +19 -1
  645. package/docs/tr/intlayer_with_remix_3.md +101 -148
  646. package/docs/tr/intlayer_with_solid_start.md +14 -7
  647. package/docs/tr/intlayer_with_svelte_kit.md +12 -1
  648. package/docs/tr/intlayer_with_tanstack+solid.md +20 -2
  649. package/docs/tr/intlayer_with_tanstack.md +20 -6
  650. package/docs/tr/intlayer_with_vite+lit.md +75 -3
  651. package/docs/tr/intlayer_with_vite+preact.md +23 -3
  652. package/docs/tr/intlayer_with_vite+react.md +23 -3
  653. package/docs/tr/intlayer_with_vite+solid.md +23 -3
  654. package/docs/tr/intlayer_with_vite+svelte.md +16 -3
  655. package/docs/tr/intlayer_with_vite+vanilla.md +16 -3
  656. package/docs/tr/intlayer_with_vite+vue.md +16 -3
  657. package/docs/tr/introduction.md +0 -1
  658. package/docs/tr/packages/astro-intlayer/exports.md +165 -13
  659. package/docs/tr/packages/astro-intlayer/intlayer.md +76 -0
  660. package/docs/tr/packages/astro-intlayer/onRequest.md +76 -0
  661. package/docs/tr/packages/astro-intlayer/useDictionary.md +95 -0
  662. package/docs/tr/packages/astro-intlayer/useIntlayer.md +98 -0
  663. package/docs/tr/packages/astro-intlayer/useLocale.md +126 -0
  664. package/docs/tr/packages/remix-intlayer/Intlayer.md +55 -0
  665. package/docs/tr/packages/remix-intlayer/exports.md +80 -0
  666. package/docs/tr/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  667. package/docs/tr/packages/remix-intlayer/useDictionary.md +95 -0
  668. package/docs/tr/packages/remix-intlayer/useIntlayer.md +94 -0
  669. package/docs/tr/packages/remix-intlayer/useLocale.md +104 -0
  670. package/docs/tr/readme.md +2 -2
  671. package/docs/tr/releases/v8.md +1 -5
  672. package/docs/uk/how_works_intlayer.md +86 -14
  673. package/docs/uk/intlayer_visual_editor.md +7 -0
  674. package/docs/uk/intlayer_with_astro.md +71 -60
  675. package/docs/uk/intlayer_with_astro_lit.md +23 -27
  676. package/docs/uk/intlayer_with_astro_preact.md +30 -27
  677. package/docs/uk/intlayer_with_astro_react.md +30 -27
  678. package/docs/uk/intlayer_with_astro_solid.md +30 -27
  679. package/docs/uk/intlayer_with_astro_svelte.md +30 -27
  680. package/docs/uk/intlayer_with_astro_vue.md +30 -27
  681. package/docs/uk/intlayer_with_nextjs_14.md +7 -0
  682. package/docs/uk/intlayer_with_nextjs_15.md +7 -0
  683. package/docs/uk/intlayer_with_nextjs_16.md +7 -0
  684. package/docs/uk/intlayer_with_react_router_v7.md +19 -1
  685. package/docs/uk/intlayer_with_remix_3.md +101 -148
  686. package/docs/uk/intlayer_with_solid_start.md +14 -7
  687. package/docs/uk/intlayer_with_svelte_kit.md +12 -1
  688. package/docs/uk/intlayer_with_tanstack+solid.md +20 -2
  689. package/docs/uk/intlayer_with_tanstack.md +20 -6
  690. package/docs/uk/intlayer_with_vite+lit.md +75 -3
  691. package/docs/uk/intlayer_with_vite+preact.md +23 -3
  692. package/docs/uk/intlayer_with_vite+react.md +23 -3
  693. package/docs/uk/intlayer_with_vite+solid.md +23 -3
  694. package/docs/uk/intlayer_with_vite+svelte.md +16 -3
  695. package/docs/uk/intlayer_with_vite+vanilla.md +16 -3
  696. package/docs/uk/intlayer_with_vite+vue.md +16 -3
  697. package/docs/uk/introduction.md +0 -1
  698. package/docs/uk/packages/astro-intlayer/exports.md +162 -10
  699. package/docs/uk/packages/astro-intlayer/intlayer.md +76 -0
  700. package/docs/uk/packages/astro-intlayer/onRequest.md +76 -0
  701. package/docs/uk/packages/astro-intlayer/useDictionary.md +94 -0
  702. package/docs/uk/packages/astro-intlayer/useIntlayer.md +98 -0
  703. package/docs/uk/packages/astro-intlayer/useLocale.md +126 -0
  704. package/docs/uk/packages/remix-intlayer/Intlayer.md +55 -0
  705. package/docs/uk/packages/remix-intlayer/exports.md +80 -0
  706. package/docs/uk/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  707. package/docs/uk/packages/remix-intlayer/useDictionary.md +95 -0
  708. package/docs/uk/packages/remix-intlayer/useIntlayer.md +94 -0
  709. package/docs/uk/packages/remix-intlayer/useLocale.md +104 -0
  710. package/docs/uk/readme.md +2 -2
  711. package/docs/uk/releases/v8.md +1 -5
  712. package/docs/ur/intlayer_with_vite+lit.md +75 -3
  713. package/docs/ur/intlayer_with_vite+vanilla.md +16 -3
  714. package/docs/ur/introduction.md +0 -1
  715. package/docs/vi/how_works_intlayer.md +86 -14
  716. package/docs/vi/intlayer_visual_editor.md +7 -0
  717. package/docs/vi/intlayer_with_astro.md +70 -59
  718. package/docs/vi/intlayer_with_astro_lit.md +23 -27
  719. package/docs/vi/intlayer_with_astro_preact.md +30 -27
  720. package/docs/vi/intlayer_with_astro_react.md +30 -27
  721. package/docs/vi/intlayer_with_astro_solid.md +30 -27
  722. package/docs/vi/intlayer_with_astro_svelte.md +30 -27
  723. package/docs/vi/intlayer_with_astro_vue.md +30 -27
  724. package/docs/vi/intlayer_with_nextjs_14.md +7 -0
  725. package/docs/vi/intlayer_with_nextjs_15.md +7 -0
  726. package/docs/vi/intlayer_with_nextjs_16.md +7 -0
  727. package/docs/vi/intlayer_with_react_router_v7.md +19 -1
  728. package/docs/vi/intlayer_with_remix_3.md +101 -148
  729. package/docs/vi/intlayer_with_solid_start.md +14 -7
  730. package/docs/vi/intlayer_with_svelte_kit.md +12 -1
  731. package/docs/vi/intlayer_with_tanstack+solid.md +20 -2
  732. package/docs/vi/intlayer_with_tanstack.md +20 -6
  733. package/docs/vi/intlayer_with_vite+lit.md +75 -3
  734. package/docs/vi/intlayer_with_vite+preact.md +23 -3
  735. package/docs/vi/intlayer_with_vite+react.md +23 -3
  736. package/docs/vi/intlayer_with_vite+solid.md +23 -3
  737. package/docs/vi/intlayer_with_vite+svelte.md +16 -3
  738. package/docs/vi/intlayer_with_vite+vanilla.md +16 -3
  739. package/docs/vi/intlayer_with_vite+vue.md +16 -3
  740. package/docs/vi/introduction.md +0 -1
  741. package/docs/vi/packages/astro-intlayer/exports.md +167 -15
  742. package/docs/vi/packages/astro-intlayer/intlayer.md +76 -0
  743. package/docs/vi/packages/astro-intlayer/onRequest.md +76 -0
  744. package/docs/vi/packages/astro-intlayer/useDictionary.md +94 -0
  745. package/docs/vi/packages/astro-intlayer/useIntlayer.md +98 -0
  746. package/docs/vi/packages/astro-intlayer/useLocale.md +126 -0
  747. package/docs/vi/packages/remix-intlayer/Intlayer.md +55 -0
  748. package/docs/vi/packages/remix-intlayer/exports.md +80 -0
  749. package/docs/vi/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  750. package/docs/vi/packages/remix-intlayer/useDictionary.md +95 -0
  751. package/docs/vi/packages/remix-intlayer/useIntlayer.md +94 -0
  752. package/docs/vi/packages/remix-intlayer/useLocale.md +104 -0
  753. package/docs/vi/readme.md +2 -2
  754. package/docs/vi/releases/v8.md +1 -5
  755. package/docs/zh/how_works_intlayer.md +86 -14
  756. package/docs/zh/intlayer_visual_editor.md +7 -0
  757. package/docs/zh/intlayer_with_astro.md +65 -56
  758. package/docs/zh/intlayer_with_astro_lit.md +23 -27
  759. package/docs/zh/intlayer_with_astro_preact.md +30 -27
  760. package/docs/zh/intlayer_with_astro_react.md +30 -27
  761. package/docs/zh/intlayer_with_astro_solid.md +30 -27
  762. package/docs/zh/intlayer_with_astro_svelte.md +30 -27
  763. package/docs/zh/intlayer_with_astro_vue.md +30 -27
  764. package/docs/zh/intlayer_with_nextjs_14.md +7 -0
  765. package/docs/zh/intlayer_with_nextjs_15.md +7 -0
  766. package/docs/zh/intlayer_with_nextjs_16.md +7 -0
  767. package/docs/zh/intlayer_with_react_router_v7.md +19 -1
  768. package/docs/zh/intlayer_with_remix_3.md +74 -112
  769. package/docs/zh/intlayer_with_solid_start.md +14 -7
  770. package/docs/zh/intlayer_with_svelte_kit.md +12 -1
  771. package/docs/zh/intlayer_with_tanstack+solid.md +20 -2
  772. package/docs/zh/intlayer_with_tanstack.md +20 -6
  773. package/docs/zh/intlayer_with_vite+lit.md +75 -3
  774. package/docs/zh/intlayer_with_vite+preact.md +23 -3
  775. package/docs/zh/intlayer_with_vite+react.md +23 -3
  776. package/docs/zh/intlayer_with_vite+solid.md +23 -3
  777. package/docs/zh/intlayer_with_vite+svelte.md +16 -3
  778. package/docs/zh/intlayer_with_vite+vanilla.md +16 -3
  779. package/docs/zh/intlayer_with_vite+vue.md +16 -3
  780. package/docs/zh/introduction.md +0 -1
  781. package/docs/zh/packages/astro-intlayer/exports.md +166 -14
  782. package/docs/zh/packages/astro-intlayer/intlayer.md +76 -0
  783. package/docs/zh/packages/astro-intlayer/onRequest.md +76 -0
  784. package/docs/zh/packages/astro-intlayer/useDictionary.md +95 -0
  785. package/docs/zh/packages/astro-intlayer/useIntlayer.md +98 -0
  786. package/docs/zh/packages/astro-intlayer/useLocale.md +126 -0
  787. package/docs/zh/packages/remix-intlayer/Intlayer.md +55 -0
  788. package/docs/zh/packages/remix-intlayer/exports.md +80 -0
  789. package/docs/zh/packages/remix-intlayer/intlayerMiddleware.md +55 -0
  790. package/docs/zh/packages/remix-intlayer/useDictionary.md +95 -0
  791. package/docs/zh/packages/remix-intlayer/useIntlayer.md +94 -0
  792. package/docs/zh/packages/remix-intlayer/useLocale.md +104 -0
  793. package/docs/zh/readme.md +2 -2
  794. package/docs/zh/releases/v8.md +1 -5
  795. package/docs/zh-TW/introduction.md +0 -1
  796. package/package.json +6 -6
  797. package/src/generated/docs.entry.ts +223 -0
  798. package/docs/ar/intlayer_with_astro_vanilla.md +0 -702
  799. package/docs/de/intlayer_with_astro_vanilla.md +0 -698
  800. package/docs/en-GB/intlayer_with_astro_vanilla.md +0 -702
  801. package/docs/es/intlayer_with_astro_vanilla.md +0 -694
  802. package/docs/fr/intlayer_with_astro_vanilla.md +0 -694
  803. package/docs/hi/intlayer_with_astro_vanilla.md +0 -713
  804. package/docs/id/intlayer_with_astro_vanilla.md +0 -698
  805. package/docs/it/intlayer_with_astro_vanilla.md +0 -698
  806. package/docs/ja/intlayer_with_astro_vanilla.md +0 -701
  807. package/docs/ko/intlayer_with_astro_vanilla.md +0 -713
  808. package/docs/pl/intlayer_with_astro_vanilla.md +0 -698
  809. package/docs/pt/intlayer_with_astro_vanilla.md +0 -698
  810. package/docs/ru/intlayer_with_astro_vanilla.md +0 -709
  811. package/docs/tr/intlayer_with_astro_vanilla.md +0 -698
  812. package/docs/uk/intlayer_with_astro_vanilla.md +0 -698
  813. package/docs/vi/intlayer_with_astro_vanilla.md +0 -698
  814. package/docs/zh/intlayer_with_astro_vanilla.md +0 -697
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2026-09-09
3
- updatedAt: 2026-09-11
3
+ updatedAt: 2026-09-19
4
4
  title: "Remix 3 i18n - Guide complet pour traduire votre application"
5
5
  description: "Oubliez i18next. Le guide 2026 pour créer une application Remix 3 multilingue (i18n). Traduisez avec des agents IA et optimisez la taille du bundle, le SEO et les performances."
6
6
  keywords:
@@ -19,6 +19,9 @@ slugs:
19
19
  applicationTemplate: https://github.com/aymericzip/intlayer-remix-3-template
20
20
  applicationShowcase: https://intlayer-remix-3-template.vercel.app
21
21
  history:
22
+ - version: 9.5.5
23
+ date: 2026-09-19
24
+ changes: "Utilisation du middleware et des hooks de remix-intlayer"
22
25
  - version: 9.5.0
23
26
  date: 2026-09-09
24
27
  changes: "Documentation initiale pour Remix 3"
@@ -39,7 +42,7 @@ Ce guide montre comment intégrer **Intlayer** pour une internationalisation flu
39
42
  - **`remix/node-fetch-server`** : Adaptateurs de serveur pour Node.js, avec support natif pour Bun, Deno et les runtimes edge.
40
43
  - **`remix/cookie`** : Analyse et sérialisation de cookies sécurisées par chiffrement.
41
44
 
42
- Associé à **Intlayer**, vous bénéficiez d'un système d'internationalisation complet offrant une sécurité au moment de la compilation, des traductions automatisées par IA, un rendu serveur sans surcharge et un routage fluide par locale.
45
+ Associé à **Intlayer** et au package **`remix-intlayer`**, un middleware de locale ainsi que les mêmes hooks `useIntlayer` / `useDictionary` / `useLocale` que `react-intlayer`, liés au contexte de requête de Remix, vous bénéficiez d'un système d'internationalisation complet offrant une sécurité au moment de la compilation, des traductions automatisées par IA, un rendu serveur sans surcharge et un routage fluide par locale.
43
46
 
44
47
  ## Table des matières
45
48
 
@@ -52,7 +55,7 @@ Comparé aux solutions traditionnelles telles que `i18next` ou aux chargeurs de
52
55
  <AccordionGroup>
53
56
  <Accordion header="Couverture complète de Remix 3 et des standards web">
54
57
 
55
- Intlayer est conçu pour fonctionner nativement avec les standards web (`Request`, `Response`, `Headers` et `URL`). Il s'intègre naturellement dans le Fetch router de Remix 3 via un middleware léger, extrayant les locales des chemins d'URL, des cookies ou des en-têtes `Accept-Language` sans dépendre d'un runtime spécifique.
58
+ Intlayer est conçu pour fonctionner nativement avec les standards web (`Request`, `Response`, `Headers` et `URL`). `remix-intlayer` s'intègre au Fetch router de Remix 3 sous la forme d'un middleware léger, extrayant la locale des chemins d'URL, des cookies ou des en-têtes `Accept-Language` et l'exposant au reste de la requête, handlers, vues et composants `remix/ui`, sans avoir à la transmettre manuellement ni dépendre d'un runtime spécifique.
56
59
 
57
60
  </Accordion>
58
61
  <Accordion header="Déclarations de contenu sécurisées par le typage">
@@ -109,25 +112,26 @@ Consultez le [Modèle d'Application](https://github.com/aymericzip/intlayer-remi
109
112
  <Steps>
110
113
  <Step number={1} title="Installer les dépendances">
111
114
 
112
- Installez `intlayer` et `remix` (version 3) à l'aide de votre gestionnaire de paquets préféré :
115
+ Installez `intlayer`, `remix-intlayer` et `remix` (version 3) à l'aide de votre gestionnaire de paquets préféré :
113
116
 
114
117
  ```bash packageManager="npm"
115
- npm install intlayer remix@next
118
+ npm install intlayer remix-intlayer remix@next
116
119
  ```
117
120
 
118
121
  ```bash packageManager="pnpm"
119
- pnpm add intlayer remix@next
122
+ pnpm add intlayer remix-intlayer remix@next
120
123
  ```
121
124
 
122
125
  ```bash packageManager="yarn"
123
- yarn add intlayer remix@next
126
+ yarn add intlayer remix-intlayer remix@next
124
127
  ```
125
128
 
126
129
  ```bash packageManager="bun"
127
- bun add intlayer remix@next
130
+ bun add intlayer remix-intlayer remix@next
128
131
  ```
129
132
 
130
133
  - **`intlayer`** : Moteur d'internationalisation de base gérant la configuration, la déclaration des dictionnaires (`t()`, `Dictionary`), les outils CLI et l'interpréteur de runtime.
134
+ - **`remix-intlayer`** : L'intégration Remix 3 : le middleware de routeur `intlayer()` qui résout la locale de chaque requête, et les hooks `useIntlayer`, `useDictionary` et `useLocale` qui la lisent n'importe où en aval.
131
135
  - **`remix`** : Package unifié du framework Remix 3 exportant `remix/router`, `remix/routes`, `remix/ui`, `remix/middleware/render` et `remix/node-fetch-server`.
132
136
 
133
137
  </Step>
@@ -236,87 +240,53 @@ bun x intlayer build
236
240
  Cette commande compile votre contenu dans le répertoire `.intlayer`, offrant une auto-complétion TypeScript complète et un accès rapide aux dictionnaires.
237
241
 
238
242
  </Step>
239
- <Step number={5} title="Implémenter le middleware Intlayer">
243
+ <Step number={5} title="Ajouter le middleware Intlayer">
240
244
 
241
245
  Remix 3 propose un pipeline de middlewares composable via `createRouter({ middleware: [...] })`.
242
246
 
243
- Créez un middleware Intlayer qui résout la locale de chaque requête entrante selon :
244
-
245
- 1. Le préfixe d'URL via `getLocaleFromPath` d'Intlayer (par exemple `/fr` ou `/es`).
246
- 2. L'utilitaire `getLocale` d'Intlayer, qui négocie automatiquement via les cookies de stockage (`INTLAYER_LOCALE`), les en-têtes personnalisés (`x-intlayer-locale`), l'en-tête standard `Accept-Language` et votre `defaultLocale`.
247
-
248
- ```typescript fileName="src/middleware/intlayer.ts" codeFormat={["typescript", "esm"]}
249
- import {
250
- defaultLocale,
251
- getCookie,
252
- getLocale,
253
- getLocaleFromPath,
254
- type Locale,
255
- } from "intlayer";
256
- import { createContextKey, type Middleware } from "remix/router";
257
-
258
- /**
259
- * Clé de contexte typée pour récupérer la locale résolue depuis le RequestContext de Remix 3.
260
- */
261
- export const localeKey = createContextKey<Locale>(defaultLocale);
262
-
263
- /**
264
- * Middleware Intlayer pour Remix 3.
265
- *
266
- * Résout la locale de la requête selon l'ordre de priorité suivant :
267
- * 1. Préfixe du chemin d'URL (ex. `/fr/...`) via `getLocaleFromPath`
268
- * 2. Négociation des en-têtes et du stockage via `getLocale` (cookie, en-tête personnalisé, négociation Accept-Language, repli sur defaultLocale)
269
- *
270
- * Attache la locale résolue au RequestContext de Remix 3.
271
- */
272
- export const intlayer = (): Middleware => {
273
- return async (context, next) => {
274
- // Détection du chemin (/fr/about -> "fr", /about -> undefined)
275
- const pathLocale = getLocaleFromPath(context.url.pathname);
276
-
277
- if (pathLocale) {
278
- // Attacher la locale résolue au contexte de requête Remix 3
279
- context.set(localeKey, pathLocale);
280
-
281
- return next();
282
- }
283
-
284
- const storedLocale = await getLocale({
285
- getHeader: (name) => context.headers.get(name),
286
- getCookie: (name) =>
287
- getCookie(name, context.headers.get("cookie") ?? undefined),
288
- });
289
-
290
- // Attacher la locale résolue au contexte de requête Remix 3
291
- context.set(localeKey, storedLocale ?? defaultLocale);
292
-
293
- return next();
294
- };
295
- };
247
+ `remix-intlayer` fournit le middleware `intlayer()`, le pendant Remix des proxies de `next-intlayer` et `vite-intlayer`. Pour chaque requête entrante, il :
248
+
249
+ 1. **Route la locale**, selon `routing.mode` (`prefix-no-default` par défaut). Une URL sans préfixe de locale est redirigée vers l'URL localisée de la locale détectée — le cookie de stockage (`INTLAYER_LOCALE`) ou l'en-tête personnalisé (`x-intlayer-locale`), puis la négociation standard `Accept-Language`, puis votre `defaultLocale` — à moins que cette locale ne nécessite pas de préfixe. Une URL préfixée telle que `/fr/about` est servie **depuis la route `/about`** en français, `/en/about` est redirigée vers `/about`, et les règles de réécriture `routing.rewrite` sont appliquées dans les deux sens (`/fr/about` → `/fr/a-propos`). Les ressources statiques et, dans les configurations avec `routing.domains`, les domaines de locale sont gérés de la même manière que dans les autres intégrations.
250
+ 2. **Résout la locale** dans le contexte de requête Remix sous `context.intlayer` (ou `context.get(Intlayer)`), avec `locale`, `defaultLocale` et `availableLocales`.
251
+ 3. **Persiste la locale** via le cookie / en-tête configuré, de sorte que les requêtes suivantes résolvent la même locale.
252
+
253
+ Parce que le préfixe de locale est supprimé avant la mise en correspondance du routeur, vos routes sont déclarées une seule fois, sans segment `:locale`, quel que soit le mode de routage. Le middleware exécute ensuite le reste de la requête dans une portée `AsyncLocalStorage` liée au contexte de requête, ce qui permet aux hooks du package de lire la locale sans aucun argument — aussi bien dans les gestionnaires de routes, les vues que les composants `remix/ui` :
254
+
255
+ ```typescript
256
+ import { useIntlayer, useLocale } from "remix-intlayer";
257
+
258
+ // N'importe où en aval du middleware
259
+ const { locale, availableLocales } = useLocale();
260
+ const { title } = useIntlayer("home");
296
261
  ```
297
262
 
263
+ `useIntlayer("home", "fr")` ou `useIntlayer("faq", { item: 2 })` surchargent la locale de la requête pour un appel, et `useDictionary(homeContent)` lit un dictionnaire importé au lieu d'une clé. En dehors d'une requête, les hooks se replient sur la locale par défaut.
264
+
265
+ > Le middleware prépare également les dictionnaires Intlayer au démarrage du serveur, évitant ainsi qu'un `intlayer build` manquant ne laisse le registre vide.
266
+
267
+ > Définissez `routing.enableProxy: false` dans `intlayer.config.ts` pour conserver uniquement la résolution de locale et gérer le routage vous-même. `intlayer({ ignore })` laisse intactes les requêtes correspondantes (un préfixe d'API, par exemple), et `intlayer({ isDevServer })` contrôle si la locale stockée pilote les redirections dans le mode automatique `enableProxy` par défaut.
268
+
298
269
  </Step>
299
270
  <Step number={6} title="Définir des routes typées">
300
271
 
301
- Définissez vos routes d'application à l'aide de `route()` issu de `remix/routes` :
272
+ Définissez vos routes d'application à l'aide de `route()` issu de `remix/routes`. Déclarez-les une seule fois, sans segment de locale — le middleware sert chaque locale à partir de ces routes :
302
273
 
303
274
  ```typescript fileName="src/routes.ts" codeFormat={["typescript", "esm"]}
304
275
  import { route } from "remix/routes";
305
276
 
306
277
  export const routes = route({
307
- // Route pour la locale par défaut
308
278
  home: "/",
309
-
310
- // Route localisée avec segment dynamique :locale
311
- localizedHome: "/:locale",
312
279
  });
313
280
  ```
314
281
 
315
- L'utilisation de `route()` garantit la génération d'URL typées dans toute votre application :
282
+ L'utilisation de `route()` garantit la génération d'URL typées dans toute votre application, et `getLocalizedPath` applique le mode de routage correspondant :
316
283
 
317
284
  ```typescript
285
+ import { getLocalizedPath } from "intlayer";
286
+
318
287
  routes.home.href(); // "/"
319
- routes.localizedHome.href({ locale: "fr" }); // "/fr"
288
+ getLocalizedPath(routes.home.href(), "fr"); // "/fr"
289
+ getLocalizedPath(routes.home.href(), "en"); // "/" (locale par défaut)
320
290
  ```
321
291
 
322
292
  </Step>
@@ -324,20 +294,21 @@ routes.localizedHome.href({ locale: "fr" }); // "/fr"
324
294
 
325
295
  Remix 3 effectue le rendu de l'interface utilisateur avec des composants JSX issus de `remix/ui`. Un composant est une **fonction de setup** qui reçoit un `Handle` et renvoie une **fonction de rendu**. Le setup s'exécute une seule fois par instance, le rendu s'exécute à chaque mise à jour, et les props sont lues via `handle.props`.
326
296
 
327
- Commencez par un shell partagé `Document` qui applique les attributs `<html lang="..." dir="...">` à partir de la locale résolue :
297
+ Commencez par un shell partagé `Document` qui applique les attributs `<html lang="..." dir="...">` à partir de la locale résolue par le middleware :
328
298
 
329
299
  ```tsx fileName="src/views/document.tsx" codeFormat={["typescript", "esm"]}
330
- import { getHTMLTextDir, type Locale } from "intlayer";
300
+ import { getHTMLTextDir } from "intlayer";
301
+ import { useLocale } from "remix-intlayer";
331
302
  import type { Handle, RemixNode } from "remix/ui";
332
303
 
333
304
  type DocumentProps = {
334
- locale: Locale;
335
305
  title: string;
336
306
  children?: RemixNode;
337
307
  };
338
308
 
339
309
  export const Document = (handle: Handle<DocumentProps>) => () => {
340
- const { locale, title, children } = handle.props;
310
+ const { title, children } = handle.props;
311
+ const { locale } = useLocale();
341
312
 
342
313
  return (
343
314
  <html lang={locale} dir={getHTMLTextDir(locale)}>
@@ -352,47 +323,40 @@ export const Document = (handle: Handle<DocumentProps>) => () => {
352
323
  };
353
324
  ```
354
325
 
355
- Créez ensuite la page d'accueil. Elle extrait le dictionnaire localisé avec `getIntlayer` et affiche un sélecteur de langue :
326
+ Créez ensuite la page d'accueil. Elle lit le dictionnaire localisé avec `useIntlayer` et affiche un sélecteur de langue :
356
327
 
357
328
  ```tsx fileName="src/views/home.tsx" codeFormat={["typescript", "esm"]}
358
- import {
359
- getIntlayer,
360
- getLocaleName,
361
- getLocalizedPath,
362
- type Locale,
363
- locales,
364
- } from "intlayer";
365
- import type { Handle } from "remix/ui";
366
- import { routes } from "../routes";
329
+ import { getLocaleName, getLocalizedUrl, getPathWithoutLocale } from "intlayer";
330
+ import { useIntlayer, useLocale } from "remix-intlayer";
367
331
  import { Document } from "./document";
368
332
 
369
- type HomePageProps = {
370
- locale: Locale;
371
- };
372
-
373
- export const HomePage = (handle: Handle<HomePageProps>) => () => {
374
- const { locale } = handle.props;
375
- const home = getIntlayer("home", locale);
333
+ export const HomePage = () => () => {
334
+ const { locale, availableLocales } = useLocale();
335
+ const home = useIntlayer("home");
336
+ const pathWithoutLocale = getPathWithoutLocale();
376
337
 
377
338
  return (
378
- <Document locale={locale} title={home.title}>
339
+ <Document title={home.title}>
379
340
  <header>
380
341
  <nav aria-label="Languages">
381
342
  <span>{home.switchLanguage}</span>
382
- {locales.map((targetLocale) => {
383
- const isActive = targetLocale === locale;
384
-
385
- return (
386
- <a
387
- key={targetLocale}
388
- href={getLocalizedPath(routes.home.href(), targetLocale)}
389
- class={isActive ? "active" : undefined}
390
- aria-current={isActive ? "page" : undefined}
391
- >
392
- {getLocaleName(targetLocale, locale)}
393
- </a>
394
- );
395
- })}
343
+ <ul>
344
+ {availableLocales.map((localeItem) => {
345
+ const isActive = localeItem === locale;
346
+
347
+ return (
348
+ <li key={localeItem} class="p-1">
349
+ <a
350
+ href={getLocalizedUrl(pathWithoutLocale, localeItem)}
351
+ class={isActive ? "active" : undefined}
352
+ aria-current={isActive ? "page" : undefined}
353
+ >
354
+ {getLocaleName(localeItem, locale)}
355
+ </a>
356
+ </li>
357
+ );
358
+ })}
359
+ </ul>
396
360
  </nav>
397
361
  </header>
398
362
  <main>
@@ -404,7 +368,7 @@ export const HomePage = (handle: Handle<HomePageProps>) => () => {
404
368
  };
405
369
  ```
406
370
 
407
- > Le JSX de Remix n'est pas React : il n'y a pas de hooks, `class` s'écrit tel quel (`className` est également accepté) et les nouveaux rendus sont déclenchés explicitement avec `handle.update()`. Les valeurs interpolées sont automatiquement échappées.
371
+ > Le JSX de Remix n'est pas React : `class` s'écrit tel quel (`className` est également accepté) et les nouveaux rendus sont déclenchés explicitement avec `handle.update()`. Les valeurs interpolées sont automatiquement échappées. Les hooks Intlayer sont de simples fonctions lisant la portée de la requête, ils peuvent donc être appelés aussi bien depuis la fonction de setup que depuis la fonction de rendu.
408
372
 
409
373
  </Step>
410
374
  <Step number={8} title="Connecter le routeur et le serveur">
@@ -412,10 +376,9 @@ export const HomePage = (handle: Handle<HomePageProps>) => () => {
412
376
  Ajoutez le middleware `render()` de `remix/middleware/render` aux côtés du middleware Intlayer. Il installe `context.render(node, init)` sur chaque requête, ce qui diffuse l'arbre JSX dans une `Response` HTML (en ajoutant `<!DOCTYPE html>` au début et en définissant l'en-tête `Content-Type`) :
413
377
 
414
378
  ```tsx fileName="src/router.tsx" codeFormat={["typescript", "esm"]}
415
- import { isDeclaredLocale } from "intlayer";
379
+ import { intlayer } from "remix-intlayer";
416
380
  import { render } from "remix/middleware/render";
417
381
  import { createRouter } from "remix/router";
418
- import { intlayer, localeKey } from "./middleware/intlayer";
419
382
  import { routes } from "./routes";
420
383
  import { HomePage } from "./views/home";
421
384
 
@@ -424,28 +387,17 @@ export const router = createRouter({
424
387
  middleware: [intlayer(), render()],
425
388
  });
426
389
 
427
- // 2. Associer les gestionnaires de route
390
+ // 2. Associer les gestionnaires de route — `/`, `/fr`, `/es`… atteignent tous `home`
428
391
  router.map(routes, {
429
392
  actions: {
430
- // Route de locale par défaut
431
393
  home(context) {
432
- const locale = context.get(localeKey);
433
- return context.render(<HomePage locale={locale} />);
434
- },
435
-
436
- // Route localisée
437
- localizedHome(context) {
438
- if (!isDeclaredLocale(context.params.locale)) {
439
- return new Response("Not Found", { status: 404 });
440
- }
441
- const locale = context.get(localeKey);
442
- return context.render(<HomePage locale={locale} />);
394
+ return context.render(<HomePage />);
443
395
  },
444
396
  },
445
397
  });
446
398
  ```
447
399
 
448
- > `context.render` accepte un `ResponseInit` optionnel comme second argument, par ex. `context.render(<NotFoundPage locale={locale} />, { status: 404 })`.
400
+ > `context.render` accepte un `ResponseInit` optionnel comme second argument, par ex. `context.render(<NotFoundPage />, { status: 404 })`. La locale résolue reste accessible depuis le gestionnaire via `context.intlayer.locale`, par exemple pour construire une réponse `Response.json`.
449
401
 
450
402
  Enfin, exposez le routeur via un gestionnaire `fetch` standard. Le même routeur fonctionne sur Node.js, Bun, Deno et Cloudflare Workers :
451
403
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-08-06
3
- updatedAt: 2026-08-30
3
+ updatedAt: 2026-09-20
4
4
  title: "Solid Start i18n - Guide complet pour traduire votre application"
5
5
  description: "Fini i18next. Le guide 2026 pour créer une application SolidStart multilingue (i18n). Routage de locale rendu côté serveur, hreflang, sitemap et traduction assistée par IA."
6
6
  keywords:
@@ -748,15 +748,13 @@ SolidStart transforme un fichier exportant une méthode HTTP en route d'API, et
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 @@ Vous pouvez construire un `robots.txt` de la même manière avec `getMultilingua
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="Compilateur Babel">
924
920
 
921
+ <Tabs>
922
+ <Tab value='intlayer >= 9'>
923
+
925
924
  > Depuis la v9, le `intlayerCompiler` est inclus dans le plugin `intlayer`. Vous n'avez donc pas besoin de l'ajouter manuellement.
926
925
 
926
+ </Tab>
927
+ <Tab value='intlayer < 9'>
928
+
927
929
  Mettez à jour votre `vite.config.ts` pour inclure le 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
+ Buildez votre application pour transformer vos composants et extraire le contenu
951
+
945
952
  ```bash packageManager="npm"
946
953
  npm run build # Ou npm run dev
947
954
  ```
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-11-20
3
- updatedAt: 2026-08-30
3
+ updatedAt: 2026-09-20
4
4
  title: "SvelteKit i18n - Guide complet pour traduire votre application"
5
5
  description: "Oubliez i18next. Le guide 2026 pour créer une application SvelteKit multilingue (i18n). Traduisez avec des agents IA et optimisez la taille du bundle, le SEO et les performances."
6
6
  keywords:
@@ -684,7 +684,7 @@ export default config;
684
684
  ```
685
685
 
686
686
  <Tabs>
687
- <Tab value='Commande d'extraction'>
687
+ <Tab value="Commande d'extraction">
688
688
 
689
689
  Exécutez l'extracteur pour transformer vos composants et extraire le contenu
690
690
 
@@ -707,7 +707,13 @@ bun x intlayer extract
707
707
  </Tab>
708
708
  <Tab value='Compilateur Babel'>
709
709
 
710
- > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
710
+ <Tabs>
711
+ <Tab value='intlayer >= 9'>
712
+
713
+ > Depuis la v9, `intlayerCompiler` est inclus dans le plugin `intlayer`. Vous n'avez donc pas besoin de l'ajouter manuellement.
714
+
715
+ </Tab>
716
+ <Tab value='intlayer < 9'>
711
717
 
712
718
  Mettez à jour votre fichier `vite.config.ts` pour inclure le plugin `intlayerCompiler` :
713
719
 
@@ -718,11 +724,16 @@ import { intlayer, intlayerCompiler } from "vite-intlayer";
718
724
  export default defineConfig({
719
725
  plugins: [
720
726
  intlayer(),
721
- intlayerCompiler(), // Adds the compiler plugin
727
+ intlayerCompiler(), // Ajoute le plugin du compilateur
722
728
  ],
723
729
  });
724
730
  ```
725
731
 
732
+ </Tab>
733
+ </Tabs>
734
+
735
+ Buildez votre application pour transformer vos composants et extraire le contenu
736
+
726
737
  ```bash packageManager="npm"
727
738
  npm run build # Ou npm run dev
728
739
  ```
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-03-25
3
- updatedAt: 2026-08-30
3
+ updatedAt: 2026-09-20
4
4
  title: "TanStack Start + Solid i18n - Guide complet pour traduire votre application"
5
5
  description: "Oubliez i18next. Le guide 2026 pour créer une application TanStack Start + Solid multilingue (i18n). Traduisez avec des agents IA et optimisez la taille du bundle, le SEO et les performances."
6
6
  keywords:
@@ -985,7 +985,13 @@ bun x intlayer extract
985
985
  </Tab>
986
986
  <Tab value='Babel compiler'>
987
987
 
988
- > Since v9, the `intlayerCompiler` is included in the `intlayer` plugin. So you don't need to add it manually.
988
+ <Tabs>
989
+ <Tab value='intlayer >= 9'>
990
+
991
+ > Depuis la v9, `intlayerCompiler` est inclus dans le plugin `intlayer`. Vous n'avez donc pas besoin de l'ajouter manuellement.
992
+
993
+ </Tab>
994
+ <Tab value='intlayer < 9'>
989
995
 
990
996
  Mettez à jour votre `vite.config.ts` pour inclure le plugin `intlayerCompiler` :
991
997
 
@@ -1007,11 +1013,16 @@ export default defineConfig({
1007
1013
  }),
1008
1014
  solidPlugin({ ssr: true }),
1009
1015
  intlayer(),
1010
- intlayerCompiler(), // Adds the compiler plugin
1016
+ intlayerCompiler(), // Ajoute le plugin du compilateur
1011
1017
  ],
1012
1018
  });
1013
1019
  ```
1014
1020
 
1021
+ </Tab>
1022
+ </Tabs>
1023
+
1024
+ Buildez votre application pour transformer vos composants et extraire le contenu
1025
+
1015
1026
  ```bash packageManager="npm"
1016
1027
  npm run build # Ou npm run dev
1017
1028
  ```
@@ -1091,7 +1102,7 @@ export const Route = createFileRoute("/sitemap.xml")({
1091
1102
  { path: "/", changefreq: "daily", priority: 1.0 },
1092
1103
  { path: "/about", changefreq: "monthly", priority: 0.8 },
1093
1104
  ],
1094
- { siteUrl: SITE_URL }
1105
+ { siteUrl: "https://example.com" }
1095
1106
  );
1096
1107
 
1097
1108
  return new Response(sitemap, {
@@ -1257,6 +1268,13 @@ Oui : les [formes plurielles](https://github.com/aymericzip/intlayer/blob/main/d
1257
1268
 
1258
1269
  Via l'[éditeur visuel](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/intlayer_visual_editor.md), qui tourne sur votre propre infrastructure et permet à quiconque de modifier le texte sur place sur l'application en cours d'exécution, ou le [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/intlayer_CMS.md), qui externalise le contenu afin qu'il puisse changer sans déploiement.
1259
1270
 
1271
+ </Question>
1272
+ <Question title="Quel est le coût de l'éditeur visuel ? Est-il superflu si je n'en ai pas besoin ?">
1273
+
1274
+ L'[éditeur visuel Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/intlayer_visual_editor.md) a un **coût nul** sur votre application s'il n'est pas configuré. La logique supplémentaire n'est chargée que si elle est explicitement activée et nécessaire.
1275
+
1276
+ Même s'il est activé, le coût est extrêmement léger (+5 ko, chargé dynamiquement uniquement lorsqu'il est activé), car l'essentiel de la logique est géré par l'éditeur serveur sur [app.intlayer.org](https://app.intlayer.org) ou via le package `intlayer-editor`. Si vous avez seulement besoin d'une solution de traduction simple sans édition visuelle, Intlayer n'ajoute aucune surcharge à votre application.
1277
+
1260
1278
  </Question>
1261
1279
  <Question title="Intlayer est-il gratuit et open source ?">
1262
1280
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-09
3
- updatedAt: 2026-08-30
3
+ updatedAt: 2026-09-20
4
4
  title: "TanStack Start i18n - Guide complet pour traduire votre application"
5
5
  description: "Oubliez i18next. Le guide 2026 pour créer une application TanStack Start multilingue (i18n). Traduisez avec des agents IA et optimisez la taille du bundle, le SEO et les performances."
6
6
  keywords:
@@ -1073,8 +1073,14 @@ bun x intlayer extract
1073
1073
  </Tab>
1074
1074
  <Tab value="Compilateur Babel">
1075
1075
 
1076
+ <Tabs>
1077
+ <Tab value='intlayer >= 9'>
1078
+
1076
1079
  > Depuis la v9, `intlayerCompiler` est inclus dans le plugin `intlayer`. Vous n'avez donc pas besoin de l'ajouter manuellement.
1077
1080
 
1081
+ </Tab>
1082
+ <Tab value='intlayer < 9'>
1083
+
1078
1084
  Mettez à jour votre fichier `vite.config.ts` pour inclure le plugin `intlayerCompiler` :
1079
1085
 
1080
1086
  ```ts fileName="vite.config.ts"
@@ -1089,6 +1095,11 @@ export default defineConfig({
1089
1095
  });
1090
1096
  ```
1091
1097
 
1098
+ </Tab>
1099
+ </Tabs>
1100
+
1101
+ Buildez votre application pour transformer vos composants et extraire le contenu
1102
+
1092
1103
  ```bash packageManager="npm"
1093
1104
  npm run build # Ou npm run dev
1094
1105
  ```
@@ -1157,10 +1168,6 @@ Ensuite, créez une route `src/routes/sitemap[.]xml.ts` qui utilise la fonction
1157
1168
  import { createFileRoute } from "@tanstack/react-router";
1158
1169
  import { generateSitemap } from "intlayer";
1159
1170
 
1160
- const SITE_URL = (
1161
- import.meta.env.VITE_SITE_URL ?? "http://localhost:3000"
1162
- ).replace(/\/$/, "");
1163
-
1164
1171
  export const Route = createFileRoute("/sitemap.xml")({
1165
1172
  server: {
1166
1173
  handlers: {
@@ -1170,7 +1177,7 @@ export const Route = createFileRoute("/sitemap.xml")({
1170
1177
  { path: "/", changefreq: "daily", priority: 1.0 },
1171
1178
  { path: "/about", changefreq: "monthly", priority: 0.8 },
1172
1179
  ],
1173
- { siteUrl: SITE_URL }
1180
+ { siteUrl: "https://example.com" }
1174
1181
  );
1175
1182
 
1176
1183
  return new Response(sitemap, {
@@ -1331,6 +1338,13 @@ Oui. Les déclarations de contenu prennent en charge les [formes plurielles](htt
1331
1338
 
1332
1339
  Via l'[éditeur visuel](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/intlayer_visual_editor.md), qui tourne sur votre propre infrastructure et permet à quiconque de modifier le texte sur place sur le site en cours d'exécution, ou le [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/intlayer_CMS.md), qui externalise le contenu afin qu'il puisse changer sans déploiement.
1333
1340
 
1341
+ </Question>
1342
+ <Question title="Quel est le coût de l'éditeur visuel ? Est-il superflu si je n'en ai pas besoin ?">
1343
+
1344
+ L'[éditeur visuel Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/intlayer_visual_editor.md) a un **coût nul** sur votre application s'il n'est pas configuré. La logique supplémentaire n'est chargée que si elle est explicitement activée et nécessaire.
1345
+
1346
+ Même s'il est activé, le coût est extrêmement léger (+5 ko, chargé dynamiquement uniquement lorsqu'il est activé), car l'essentiel de la logique est géré par l'éditeur serveur sur [app.intlayer.org](https://app.intlayer.org) ou via le package `intlayer-editor`. Si vous avez seulement besoin d'une solution de traduction simple sans édition visuelle, Intlayer n'ajoute aucune surcharge à votre application.
1347
+
1334
1348
  </Question>
1335
1349
  <Question title="Intlayer est-il gratuit et open source ?">
1336
1350