@intlayer/docs 9.4.1 → 9.4.2

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 (1198) hide show
  1. package/README.md +1 -1
  2. package/blog/ar/hreflang_guide_multilingual_seo.md +317 -0
  3. package/blog/ar/intlayer_with_i18next.md +0 -2
  4. package/blog/ar/intlayer_with_next-i18next.md +0 -4
  5. package/blog/ar/intlayer_with_vue-i18n.md +0 -4
  6. package/blog/de/hreflang_guide_multilingual_seo.md +314 -0
  7. package/blog/de/intlayer_with_vue-i18n.md +0 -4
  8. package/blog/en/hreflang_guide_multilingual_seo.md +314 -0
  9. package/blog/en/intlayer_with_i18next.md +0 -2
  10. package/blog/en/intlayer_with_next-i18next.md +0 -2
  11. package/blog/en/intlayer_with_next-intl.md +0 -2
  12. package/blog/en/intlayer_with_react-intl.md +0 -2
  13. package/blog/en/intlayer_with_vue-i18n.md +0 -2
  14. package/blog/en-GB/hreflang_guide_multilingual_seo.md +314 -0
  15. package/blog/es/hreflang_guide_multilingual_seo.md +314 -0
  16. package/blog/fr/hreflang_guide_multilingual_seo.md +315 -0
  17. package/blog/hi/hreflang_guide_multilingual_seo.md +323 -0
  18. package/blog/hi/intlayer_with_i18next.md +0 -2
  19. package/blog/hi/intlayer_with_next-i18next.md +0 -4
  20. package/blog/hi/intlayer_with_vue-i18n.md +0 -4
  21. package/blog/id/hreflang_guide_multilingual_seo.md +314 -0
  22. package/blog/id/intlayer_with_i18next.md +0 -2
  23. package/blog/id/intlayer_with_next-i18next.md +0 -4
  24. package/blog/id/intlayer_with_vue-i18n.md +0 -4
  25. package/blog/it/hreflang_guide_multilingual_seo.md +315 -0
  26. package/blog/it/intlayer_with_i18next.md +0 -2
  27. package/blog/it/intlayer_with_next-i18next.md +0 -4
  28. package/blog/it/intlayer_with_vue-i18n.md +0 -4
  29. package/blog/ja/hreflang_guide_multilingual_seo.md +320 -0
  30. package/blog/ko/hreflang_guide_multilingual_seo.md +314 -0
  31. package/blog/ko/intlayer_with_i18next.md +0 -2
  32. package/blog/ko/intlayer_with_next-i18next.md +0 -4
  33. package/blog/ko/intlayer_with_vue-i18n.md +0 -4
  34. package/blog/pl/hreflang_guide_multilingual_seo.md +316 -0
  35. package/blog/pt/hreflang_guide_multilingual_seo.md +314 -0
  36. package/blog/pt/intlayer_with_i18next.md +0 -2
  37. package/blog/pt/intlayer_with_next-i18next.md +0 -4
  38. package/blog/pt/intlayer_with_vue-i18n.md +0 -4
  39. package/blog/ru/hreflang_guide_multilingual_seo.md +314 -0
  40. package/blog/tr/hreflang_guide_multilingual_seo.md +314 -0
  41. package/blog/tr/intlayer_with_i18next.md +0 -2
  42. package/blog/tr/intlayer_with_next-i18next.md +0 -4
  43. package/blog/tr/intlayer_with_vue-i18n.md +0 -4
  44. package/blog/uk/hreflang_guide_multilingual_seo.md +314 -0
  45. package/blog/uk/intlayer_with_i18next.md +0 -2
  46. package/blog/uk/intlayer_with_next-i18next.md +0 -2
  47. package/blog/uk/intlayer_with_next-intl.md +0 -2
  48. package/blog/uk/intlayer_with_react-intl.md +0 -2
  49. package/blog/uk/intlayer_with_vue-i18n.md +0 -2
  50. package/blog/vi/hreflang_guide_multilingual_seo.md +314 -0
  51. package/blog/vi/intlayer_with_i18next.md +0 -2
  52. package/blog/vi/intlayer_with_next-i18next.md +0 -4
  53. package/blog/vi/intlayer_with_vue-i18n.md +0 -4
  54. package/blog/zh/hreflang_guide_multilingual_seo.md +314 -0
  55. package/blog/zh/intlayer_with_i18next.md +0 -2
  56. package/blog/zh/intlayer_with_next-i18next.md +0 -2
  57. package/blog/zh/intlayer_with_next-intl.md +0 -2
  58. package/blog/zh/intlayer_with_react-intl.md +0 -2
  59. package/blog/zh/intlayer_with_vue-i18n.md +0 -2
  60. package/dist/cjs/common.cjs +29 -6
  61. package/dist/cjs/common.cjs.map +1 -1
  62. package/dist/cjs/generated/blog.entry.cjs +20 -0
  63. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  64. package/dist/cjs/generated/docs.entry.cjs +20 -0
  65. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  66. package/dist/esm/common.mjs +29 -6
  67. package/dist/esm/common.mjs.map +1 -1
  68. package/dist/esm/generated/blog.entry.mjs +20 -0
  69. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  70. package/dist/esm/generated/docs.entry.mjs +20 -0
  71. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  72. package/dist/types/common.d.ts.map +1 -1
  73. package/dist/types/generated/blog.entry.d.ts +1 -0
  74. package/dist/types/generated/blog.entry.d.ts.map +1 -1
  75. package/dist/types/generated/docs.entry.d.ts +1 -0
  76. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  77. package/docs/ar/analytics.md +458 -12
  78. package/docs/ar/configuration.md +98 -0
  79. package/docs/ar/dictionary/content_file.md +4 -4
  80. package/docs/ar/dictionary/html.md +117 -1
  81. package/docs/ar/dictionary/markdown.md +18 -1
  82. package/docs/ar/dictionary/plurial.md +5 -2
  83. package/docs/ar/how_works_intlayer.md +92 -0
  84. package/docs/ar/interest_of_intlayer.md +106 -9
  85. package/docs/ar/intlayer_CMS.md +92 -0
  86. package/docs/ar/intlayer_visual_editor.md +87 -1
  87. package/docs/ar/intlayer_with_adonisjs.md +121 -0
  88. package/docs/ar/intlayer_with_analog.md +116 -8
  89. package/docs/ar/intlayer_with_angular_19.md +115 -8
  90. package/docs/ar/intlayer_with_angular_21.md +109 -8
  91. package/docs/ar/intlayer_with_astro.md +117 -20
  92. package/docs/ar/intlayer_with_astro_lit.md +118 -10
  93. package/docs/ar/intlayer_with_astro_preact.md +118 -10
  94. package/docs/ar/intlayer_with_astro_react.md +118 -10
  95. package/docs/ar/intlayer_with_astro_solid.md +118 -10
  96. package/docs/ar/intlayer_with_astro_svelte.md +118 -10
  97. package/docs/ar/intlayer_with_astro_vanilla.md +112 -10
  98. package/docs/ar/intlayer_with_astro_vue.md +118 -10
  99. package/docs/ar/intlayer_with_create_react_app.md +105 -0
  100. package/docs/ar/intlayer_with_elysia.md +121 -0
  101. package/docs/ar/intlayer_with_express.md +114 -0
  102. package/docs/ar/intlayer_with_fastify.md +115 -0
  103. package/docs/ar/intlayer_with_hono.md +114 -0
  104. package/docs/ar/intlayer_with_htmx.md +771 -0
  105. package/docs/ar/intlayer_with_lynx+react.md +7 -14
  106. package/docs/ar/intlayer_with_nestjs.md +115 -0
  107. package/docs/ar/intlayer_with_nextjs_14.md +144 -120
  108. package/docs/ar/intlayer_with_nextjs_15.md +126 -51
  109. package/docs/ar/intlayer_with_nextjs_16.md +127 -49
  110. package/docs/ar/intlayer_with_nextjs_compiler.md +122 -13
  111. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +121 -9
  112. package/docs/ar/intlayer_with_nextjs_page_router.md +139 -107
  113. package/docs/ar/intlayer_with_nuxt.md +110 -8
  114. package/docs/ar/intlayer_with_react_native+expo.md +102 -7
  115. package/docs/ar/intlayer_with_react_router_v7.md +119 -10
  116. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +122 -22
  117. package/docs/ar/intlayer_with_solid_start.md +115 -1
  118. package/docs/ar/intlayer_with_storybook.md +7 -20
  119. package/docs/ar/intlayer_with_svelte_kit.md +107 -17
  120. package/docs/ar/intlayer_with_tanstack+solid.md +124 -22
  121. package/docs/ar/intlayer_with_tanstack.md +134 -43
  122. package/docs/ar/intlayer_with_vanilla.md +117 -9
  123. package/docs/ar/intlayer_with_vite+lit.md +118 -8
  124. package/docs/ar/intlayer_with_vite+preact.md +148 -40
  125. package/docs/ar/intlayer_with_vite+react.md +108 -20
  126. package/docs/ar/intlayer_with_vite+react_compiler.md +106 -1
  127. package/docs/ar/intlayer_with_vite+solid.md +114 -5
  128. package/docs/ar/intlayer_with_vite+svelte.md +118 -8
  129. package/docs/ar/intlayer_with_vite+vanilla.md +125 -8
  130. package/docs/ar/intlayer_with_vite+vue.md +105 -9
  131. package/docs/ar/introduction.md +104 -1
  132. package/docs/ar/migration_from_i18next_to_intlayer.md +0 -2
  133. package/docs/ar/migration_from_next-i18next_to_intlayer.md +0 -2
  134. package/docs/ar/migration_from_next-intl_to_intlayer.md +0 -2
  135. package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  136. package/docs/ar/migration_from_react-i18next_to_intlayer.md +0 -2
  137. package/docs/ar/migration_from_vue-i18n_to_intlayer.md +0 -2
  138. package/docs/ar/packages/vite-intlayer/intlayerMinify.md +1 -1
  139. package/docs/bn/introduction.md +0 -1
  140. package/docs/cs/interest_of_intlayer.md +0 -1
  141. package/docs/cs/intlayer_with_storybook.md +0 -12
  142. package/docs/cs/intlayer_with_vanilla.md +2 -1
  143. package/docs/cs/introduction.md +0 -1
  144. package/docs/de/analytics.md +458 -12
  145. package/docs/de/configuration.md +99 -1
  146. package/docs/de/dictionary/content_file.md +4 -4
  147. package/docs/de/dictionary/markdown.md +3 -0
  148. package/docs/de/dictionary/plurial.md +6 -3
  149. package/docs/de/how_works_intlayer.md +93 -1
  150. package/docs/de/interest_of_intlayer.md +97 -2
  151. package/docs/de/intlayer_CMS.md +93 -1
  152. package/docs/de/intlayer_visual_editor.md +88 -2
  153. package/docs/de/intlayer_with_adonisjs.md +121 -1
  154. package/docs/de/intlayer_with_analog.md +111 -2
  155. package/docs/de/intlayer_with_angular_19.md +109 -2
  156. package/docs/de/intlayer_with_angular_21.md +103 -2
  157. package/docs/de/intlayer_with_astro.md +111 -14
  158. package/docs/de/intlayer_with_astro_lit.md +112 -4
  159. package/docs/de/intlayer_with_astro_preact.md +112 -4
  160. package/docs/de/intlayer_with_astro_react.md +112 -4
  161. package/docs/de/intlayer_with_astro_solid.md +112 -4
  162. package/docs/de/intlayer_with_astro_svelte.md +112 -4
  163. package/docs/de/intlayer_with_astro_vanilla.md +106 -4
  164. package/docs/de/intlayer_with_astro_vue.md +112 -4
  165. package/docs/de/intlayer_with_create_react_app.md +107 -2
  166. package/docs/de/intlayer_with_elysia.md +121 -1
  167. package/docs/de/intlayer_with_express.md +115 -1
  168. package/docs/de/intlayer_with_fastify.md +115 -1
  169. package/docs/de/intlayer_with_hono.md +115 -1
  170. package/docs/de/intlayer_with_htmx.md +770 -0
  171. package/docs/de/intlayer_with_lynx+react.md +0 -7
  172. package/docs/de/intlayer_with_nestjs.md +115 -1
  173. package/docs/de/intlayer_with_nextjs_14.md +138 -110
  174. package/docs/de/intlayer_with_nextjs_15.md +120 -45
  175. package/docs/de/intlayer_with_nextjs_16.md +147 -51
  176. package/docs/de/intlayer_with_nextjs_compiler.md +113 -3
  177. package/docs/de/intlayer_with_nextjs_no_locale_path.md +115 -3
  178. package/docs/de/intlayer_with_nextjs_page_router.md +121 -95
  179. package/docs/de/intlayer_with_nuxt.md +104 -2
  180. package/docs/de/intlayer_with_react_native+expo.md +103 -8
  181. package/docs/de/intlayer_with_react_router_v7.md +113 -4
  182. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +111 -4
  183. package/docs/de/intlayer_with_solid_start.md +117 -2
  184. package/docs/de/intlayer_with_storybook.md +0 -13
  185. package/docs/de/intlayer_with_svelte_kit.md +99 -2
  186. package/docs/de/intlayer_with_tanstack+solid.md +119 -16
  187. package/docs/de/intlayer_with_tanstack.md +231 -152
  188. package/docs/de/intlayer_with_vanilla.md +111 -3
  189. package/docs/de/intlayer_with_vite+lit.md +113 -2
  190. package/docs/de/intlayer_with_vite+preact.md +170 -33
  191. package/docs/de/intlayer_with_vite+react.md +102 -6
  192. package/docs/de/intlayer_with_vite+react_compiler.md +107 -2
  193. package/docs/de/intlayer_with_vite+solid.md +113 -2
  194. package/docs/de/intlayer_with_vite+svelte.md +113 -2
  195. package/docs/de/intlayer_with_vite+vanilla.md +119 -2
  196. package/docs/de/intlayer_with_vite+vue.md +98 -2
  197. package/docs/de/introduction.md +105 -2
  198. package/docs/de/migration_from_i18next_to_intlayer.md +0 -2
  199. package/docs/de/migration_from_next-i18next_to_intlayer.md +0 -2
  200. package/docs/de/migration_from_next-intl_to_intlayer.md +0 -2
  201. package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  202. package/docs/de/migration_from_react-i18next_to_intlayer.md +0 -2
  203. package/docs/de/migration_from_vue-i18n_to_intlayer.md +0 -2
  204. package/docs/de/packages/vite-intlayer/intlayerMinify.md +1 -1
  205. package/docs/en/configuration.md +99 -1
  206. package/docs/en/dictionary/content_file.md +4 -4
  207. package/docs/en/how_works_intlayer.md +93 -1
  208. package/docs/en/interest_of_intlayer.md +97 -2
  209. package/docs/en/intlayer_CMS.md +93 -1
  210. package/docs/en/intlayer_visual_editor.md +88 -2
  211. package/docs/en/intlayer_with_adonisjs.md +121 -1
  212. package/docs/en/intlayer_with_analog.md +111 -2
  213. package/docs/en/intlayer_with_angular_19.md +109 -2
  214. package/docs/en/intlayer_with_angular_21.md +103 -2
  215. package/docs/en/intlayer_with_astro.md +107 -4
  216. package/docs/en/intlayer_with_astro_lit.md +112 -4
  217. package/docs/en/intlayer_with_astro_preact.md +112 -4
  218. package/docs/en/intlayer_with_astro_react.md +112 -4
  219. package/docs/en/intlayer_with_astro_solid.md +112 -4
  220. package/docs/en/intlayer_with_astro_svelte.md +112 -4
  221. package/docs/en/intlayer_with_astro_vanilla.md +106 -4
  222. package/docs/en/intlayer_with_astro_vue.md +112 -4
  223. package/docs/en/intlayer_with_create_react_app.md +105 -2
  224. package/docs/en/intlayer_with_elysia.md +121 -1
  225. package/docs/en/intlayer_with_express.md +115 -1
  226. package/docs/en/intlayer_with_fastify.md +115 -1
  227. package/docs/en/intlayer_with_hono.md +115 -1
  228. package/docs/en/intlayer_with_htmx.md +754 -0
  229. package/docs/en/intlayer_with_lynx+react.md +0 -7
  230. package/docs/en/intlayer_with_nestjs.md +115 -1
  231. package/docs/en/intlayer_with_nextjs_14.md +120 -43
  232. package/docs/en/intlayer_with_nextjs_15.md +120 -44
  233. package/docs/en/intlayer_with_nextjs_16.md +121 -43
  234. package/docs/en/intlayer_with_nextjs_compiler.md +111 -2
  235. package/docs/en/intlayer_with_nextjs_no_locale_path.md +115 -3
  236. package/docs/en/intlayer_with_nextjs_page_router.md +110 -95
  237. package/docs/en/intlayer_with_nuxt.md +104 -2
  238. package/docs/en/intlayer_with_react_native+expo.md +103 -8
  239. package/docs/en/intlayer_with_react_router_v7.md +113 -4
  240. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +112 -5
  241. package/docs/en/intlayer_with_solid_start.md +117 -2
  242. package/docs/en/intlayer_with_storybook.md +0 -13
  243. package/docs/en/intlayer_with_svelte_kit.md +99 -2
  244. package/docs/en/intlayer_with_tanstack+solid.md +120 -16
  245. package/docs/en/intlayer_with_tanstack.md +114 -16
  246. package/docs/en/intlayer_with_vanilla.md +111 -3
  247. package/docs/en/intlayer_with_vite+lit.md +113 -2
  248. package/docs/en/intlayer_with_vite+preact.md +143 -34
  249. package/docs/en/intlayer_with_vite+react.md +101 -4
  250. package/docs/en/intlayer_with_vite+react_compiler.md +107 -2
  251. package/docs/en/intlayer_with_vite+solid.md +113 -2
  252. package/docs/en/intlayer_with_vite+svelte.md +113 -2
  253. package/docs/en/intlayer_with_vite+vanilla.md +119 -2
  254. package/docs/en/intlayer_with_vite+vue.md +98 -2
  255. package/docs/en/introduction.md +105 -2
  256. package/docs/en/migration_from_i18next_to_intlayer.md +0 -2
  257. package/docs/en/migration_from_next-i18next_to_intlayer.md +0 -2
  258. package/docs/en/migration_from_next-intl_to_intlayer.md +0 -2
  259. package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  260. package/docs/en/migration_from_react-i18next_to_intlayer.md +0 -2
  261. package/docs/en/migration_from_vue-i18n_to_intlayer.md +0 -2
  262. package/docs/en/packages/vite-intlayer/intlayerMinify.md +1 -1
  263. package/docs/en-GB/analytics.md +527 -58
  264. package/docs/en-GB/configuration.md +99 -1
  265. package/docs/en-GB/dictionary/content_file.md +4 -4
  266. package/docs/en-GB/dictionary/html.md +117 -1
  267. package/docs/en-GB/dictionary/markdown.md +18 -1
  268. package/docs/en-GB/dictionary/plurial.md +5 -2
  269. package/docs/en-GB/dictionary/translation.md +1 -1
  270. package/docs/en-GB/how_works_intlayer.md +93 -1
  271. package/docs/en-GB/interest_of_intlayer.md +97 -2
  272. package/docs/en-GB/intlayer_CMS.md +93 -1
  273. package/docs/en-GB/intlayer_visual_editor.md +88 -2
  274. package/docs/en-GB/intlayer_with_adonisjs.md +121 -1
  275. package/docs/en-GB/intlayer_with_analog.md +111 -2
  276. package/docs/en-GB/intlayer_with_angular_19.md +109 -2
  277. package/docs/en-GB/intlayer_with_angular_21.md +103 -2
  278. package/docs/en-GB/intlayer_with_astro.md +111 -14
  279. package/docs/en-GB/intlayer_with_astro_lit.md +112 -4
  280. package/docs/en-GB/intlayer_with_astro_preact.md +112 -4
  281. package/docs/en-GB/intlayer_with_astro_react.md +112 -4
  282. package/docs/en-GB/intlayer_with_astro_solid.md +112 -4
  283. package/docs/en-GB/intlayer_with_astro_svelte.md +112 -4
  284. package/docs/en-GB/intlayer_with_astro_vanilla.md +106 -4
  285. package/docs/en-GB/intlayer_with_astro_vue.md +112 -4
  286. package/docs/en-GB/intlayer_with_create_react_app.md +105 -2
  287. package/docs/en-GB/intlayer_with_elysia.md +121 -1
  288. package/docs/en-GB/intlayer_with_express.md +115 -1
  289. package/docs/en-GB/intlayer_with_fastify.md +115 -1
  290. package/docs/en-GB/intlayer_with_hono.md +115 -1
  291. package/docs/en-GB/intlayer_with_htmx.md +757 -0
  292. package/docs/en-GB/intlayer_with_lynx+react.md +0 -7
  293. package/docs/en-GB/intlayer_with_nestjs.md +115 -1
  294. package/docs/en-GB/intlayer_with_nextjs_14.md +120 -44
  295. package/docs/en-GB/intlayer_with_nextjs_15.md +123 -45
  296. package/docs/en-GB/intlayer_with_nextjs_16.md +121 -44
  297. package/docs/en-GB/intlayer_with_nextjs_compiler.md +121 -12
  298. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +115 -3
  299. package/docs/en-GB/intlayer_with_nextjs_page_router.md +122 -137
  300. package/docs/en-GB/intlayer_with_nuxt.md +104 -2
  301. package/docs/en-GB/intlayer_with_react_native+expo.md +103 -8
  302. package/docs/en-GB/intlayer_with_react_router_v7.md +113 -4
  303. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +111 -4
  304. package/docs/en-GB/intlayer_with_solid_start.md +117 -2
  305. package/docs/en-GB/intlayer_with_storybook.md +0 -13
  306. package/docs/en-GB/intlayer_with_svelte_kit.md +99 -2
  307. package/docs/en-GB/intlayer_with_tanstack+solid.md +120 -16
  308. package/docs/en-GB/intlayer_with_tanstack.md +255 -167
  309. package/docs/en-GB/intlayer_with_vanilla.md +111 -3
  310. package/docs/en-GB/intlayer_with_vite+lit.md +113 -2
  311. package/docs/en-GB/intlayer_with_vite+preact.md +179 -32
  312. package/docs/en-GB/intlayer_with_vite+react.md +101 -13
  313. package/docs/en-GB/intlayer_with_vite+react_compiler.md +107 -2
  314. package/docs/en-GB/intlayer_with_vite+solid.md +118 -2
  315. package/docs/en-GB/intlayer_with_vite+svelte.md +113 -11
  316. package/docs/en-GB/intlayer_with_vite+vanilla.md +119 -2
  317. package/docs/en-GB/intlayer_with_vite+vue.md +102 -8
  318. package/docs/en-GB/introduction.md +105 -2
  319. package/docs/en-GB/migration_from_i18next_to_intlayer.md +0 -2
  320. package/docs/en-GB/migration_from_next-i18next_to_intlayer.md +0 -2
  321. package/docs/en-GB/migration_from_next-intl_to_intlayer.md +0 -2
  322. package/docs/en-GB/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  323. package/docs/en-GB/migration_from_react-i18next_to_intlayer.md +0 -2
  324. package/docs/en-GB/migration_from_vue-i18n_to_intlayer.md +0 -2
  325. package/docs/en-GB/packages/vite-intlayer/intlayerMinify.md +1 -1
  326. package/docs/es/analytics.md +458 -12
  327. package/docs/es/configuration.md +99 -1
  328. package/docs/es/dictionary/content_file.md +4 -4
  329. package/docs/es/dictionary/markdown.md +18 -1
  330. package/docs/es/dictionary/plurial.md +5 -2
  331. package/docs/es/how_works_intlayer.md +93 -1
  332. package/docs/es/interest_of_intlayer.md +97 -2
  333. package/docs/es/intlayer_CMS.md +93 -1
  334. package/docs/es/intlayer_visual_editor.md +88 -2
  335. package/docs/es/intlayer_with_adonisjs.md +121 -1
  336. package/docs/es/intlayer_with_analog.md +111 -2
  337. package/docs/es/intlayer_with_angular_19.md +109 -2
  338. package/docs/es/intlayer_with_angular_21.md +103 -2
  339. package/docs/es/intlayer_with_astro.md +111 -14
  340. package/docs/es/intlayer_with_astro_lit.md +112 -4
  341. package/docs/es/intlayer_with_astro_preact.md +112 -4
  342. package/docs/es/intlayer_with_astro_react.md +112 -4
  343. package/docs/es/intlayer_with_astro_solid.md +112 -4
  344. package/docs/es/intlayer_with_astro_svelte.md +112 -4
  345. package/docs/es/intlayer_with_astro_vanilla.md +106 -4
  346. package/docs/es/intlayer_with_astro_vue.md +112 -4
  347. package/docs/es/intlayer_with_create_react_app.md +107 -2
  348. package/docs/es/intlayer_with_elysia.md +121 -1
  349. package/docs/es/intlayer_with_express.md +115 -1
  350. package/docs/es/intlayer_with_fastify.md +115 -1
  351. package/docs/es/intlayer_with_hono.md +115 -1
  352. package/docs/es/intlayer_with_htmx.md +763 -0
  353. package/docs/es/intlayer_with_lynx+react.md +0 -7
  354. package/docs/es/intlayer_with_nestjs.md +115 -1
  355. package/docs/es/intlayer_with_nextjs_14.md +120 -44
  356. package/docs/es/intlayer_with_nextjs_15.md +123 -45
  357. package/docs/es/intlayer_with_nextjs_16.md +142 -52
  358. package/docs/es/intlayer_with_nextjs_compiler.md +122 -12
  359. package/docs/es/intlayer_with_nextjs_no_locale_path.md +115 -3
  360. package/docs/es/intlayer_with_nextjs_page_router.md +110 -95
  361. package/docs/es/intlayer_with_nuxt.md +104 -2
  362. package/docs/es/intlayer_with_react_native+expo.md +103 -8
  363. package/docs/es/intlayer_with_react_router_v7.md +113 -4
  364. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +111 -4
  365. package/docs/es/intlayer_with_solid_start.md +117 -2
  366. package/docs/es/intlayer_with_storybook.md +0 -13
  367. package/docs/es/intlayer_with_svelte_kit.md +99 -2
  368. package/docs/es/intlayer_with_tanstack+solid.md +119 -16
  369. package/docs/es/intlayer_with_tanstack.md +252 -147
  370. package/docs/es/intlayer_with_vanilla.md +111 -3
  371. package/docs/es/intlayer_with_vite+lit.md +113 -2
  372. package/docs/es/intlayer_with_vite+preact.md +143 -34
  373. package/docs/es/intlayer_with_vite+react.md +101 -4
  374. package/docs/es/intlayer_with_vite+react_compiler.md +107 -2
  375. package/docs/es/intlayer_with_vite+solid.md +114 -2
  376. package/docs/es/intlayer_with_vite+svelte.md +113 -2
  377. package/docs/es/intlayer_with_vite+vanilla.md +119 -2
  378. package/docs/es/intlayer_with_vite+vue.md +99 -3
  379. package/docs/es/introduction.md +105 -2
  380. package/docs/es/migration_from_i18next_to_intlayer.md +0 -2
  381. package/docs/es/migration_from_next-i18next_to_intlayer.md +0 -2
  382. package/docs/es/migration_from_next-intl_to_intlayer.md +0 -2
  383. package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  384. package/docs/es/migration_from_react-i18next_to_intlayer.md +0 -2
  385. package/docs/es/migration_from_vue-i18n_to_intlayer.md +0 -2
  386. package/docs/es/packages/vite-intlayer/intlayerMinify.md +1 -1
  387. package/docs/fr/analytics.md +437 -13
  388. package/docs/fr/configuration.md +99 -1
  389. package/docs/fr/dictionary/content_file.md +4 -4
  390. package/docs/fr/dictionary/markdown.md +18 -1
  391. package/docs/fr/dictionary/plurial.md +5 -2
  392. package/docs/fr/how_works_intlayer.md +93 -1
  393. package/docs/fr/interest_of_intlayer.md +97 -2
  394. package/docs/fr/intlayer_CMS.md +93 -1
  395. package/docs/fr/intlayer_visual_editor.md +88 -2
  396. package/docs/fr/intlayer_with_adonisjs.md +121 -1
  397. package/docs/fr/intlayer_with_analog.md +111 -2
  398. package/docs/fr/intlayer_with_angular_19.md +109 -2
  399. package/docs/fr/intlayer_with_angular_21.md +103 -2
  400. package/docs/fr/intlayer_with_astro.md +111 -14
  401. package/docs/fr/intlayer_with_astro_lit.md +112 -4
  402. package/docs/fr/intlayer_with_astro_preact.md +112 -4
  403. package/docs/fr/intlayer_with_astro_react.md +112 -4
  404. package/docs/fr/intlayer_with_astro_solid.md +112 -4
  405. package/docs/fr/intlayer_with_astro_svelte.md +112 -4
  406. package/docs/fr/intlayer_with_astro_vanilla.md +106 -4
  407. package/docs/fr/intlayer_with_astro_vue.md +112 -4
  408. package/docs/fr/intlayer_with_create_react_app.md +107 -2
  409. package/docs/fr/intlayer_with_elysia.md +121 -1
  410. package/docs/fr/intlayer_with_express.md +115 -1
  411. package/docs/fr/intlayer_with_fastify.md +115 -1
  412. package/docs/fr/intlayer_with_hono.md +115 -1
  413. package/docs/fr/intlayer_with_htmx.md +756 -0
  414. package/docs/fr/intlayer_with_lynx+react.md +0 -7
  415. package/docs/fr/intlayer_with_nestjs.md +115 -1
  416. package/docs/fr/intlayer_with_nextjs_14.md +138 -110
  417. package/docs/fr/intlayer_with_nextjs_15.md +124 -46
  418. package/docs/fr/intlayer_with_nextjs_16.md +121 -43
  419. package/docs/fr/intlayer_with_nextjs_compiler.md +122 -12
  420. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +115 -3
  421. package/docs/fr/intlayer_with_nextjs_page_router.md +110 -95
  422. package/docs/fr/intlayer_with_nuxt.md +104 -2
  423. package/docs/fr/intlayer_with_react_native+expo.md +103 -8
  424. package/docs/fr/intlayer_with_react_router_v7.md +117 -10
  425. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +111 -4
  426. package/docs/fr/intlayer_with_solid_start.md +117 -2
  427. package/docs/fr/intlayer_with_storybook.md +0 -13
  428. package/docs/fr/intlayer_with_svelte_kit.md +99 -2
  429. package/docs/fr/intlayer_with_tanstack+solid.md +119 -16
  430. package/docs/fr/intlayer_with_tanstack.md +235 -128
  431. package/docs/fr/intlayer_with_vanilla.md +111 -3
  432. package/docs/fr/intlayer_with_vite+lit.md +113 -2
  433. package/docs/fr/intlayer_with_vite+preact.md +143 -34
  434. package/docs/fr/intlayer_with_vite+react.md +101 -4
  435. package/docs/fr/intlayer_with_vite+react_compiler.md +107 -2
  436. package/docs/fr/intlayer_with_vite+solid.md +114 -2
  437. package/docs/fr/intlayer_with_vite+svelte.md +113 -2
  438. package/docs/fr/intlayer_with_vite+vanilla.md +119 -2
  439. package/docs/fr/intlayer_with_vite+vue.md +99 -3
  440. package/docs/fr/introduction.md +105 -2
  441. package/docs/fr/migration_from_i18next_to_intlayer.md +0 -2
  442. package/docs/fr/migration_from_next-i18next_to_intlayer.md +0 -2
  443. package/docs/fr/migration_from_next-intl_to_intlayer.md +0 -2
  444. package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  445. package/docs/fr/migration_from_react-i18next_to_intlayer.md +0 -2
  446. package/docs/fr/migration_from_vue-i18n_to_intlayer.md +0 -2
  447. package/docs/fr/packages/vite-intlayer/intlayerMinify.md +1 -1
  448. package/docs/hi/analytics.md +488 -21
  449. package/docs/hi/configuration.md +98 -0
  450. package/docs/hi/dictionary/content_file.md +4 -4
  451. package/docs/hi/dictionary/html.md +100 -3
  452. package/docs/hi/dictionary/markdown.md +3 -0
  453. package/docs/hi/dictionary/plurial.md +6 -3
  454. package/docs/hi/how_works_intlayer.md +92 -0
  455. package/docs/hi/interest_of_intlayer.md +106 -9
  456. package/docs/hi/intlayer_CMS.md +92 -0
  457. package/docs/hi/intlayer_visual_editor.md +87 -1
  458. package/docs/hi/intlayer_with_adonisjs.md +121 -0
  459. package/docs/hi/intlayer_with_analog.md +116 -8
  460. package/docs/hi/intlayer_with_angular_19.md +115 -8
  461. package/docs/hi/intlayer_with_angular_21.md +109 -8
  462. package/docs/hi/intlayer_with_astro.md +117 -20
  463. package/docs/hi/intlayer_with_astro_lit.md +118 -10
  464. package/docs/hi/intlayer_with_astro_preact.md +118 -10
  465. package/docs/hi/intlayer_with_astro_react.md +118 -10
  466. package/docs/hi/intlayer_with_astro_solid.md +118 -10
  467. package/docs/hi/intlayer_with_astro_svelte.md +118 -10
  468. package/docs/hi/intlayer_with_astro_vanilla.md +112 -10
  469. package/docs/hi/intlayer_with_astro_vue.md +118 -10
  470. package/docs/hi/intlayer_with_create_react_app.md +106 -1
  471. package/docs/hi/intlayer_with_elysia.md +121 -0
  472. package/docs/hi/intlayer_with_express.md +114 -0
  473. package/docs/hi/intlayer_with_fastify.md +115 -0
  474. package/docs/hi/intlayer_with_hono.md +114 -0
  475. package/docs/hi/intlayer_with_htmx.md +771 -0
  476. package/docs/hi/intlayer_with_lynx+react.md +7 -14
  477. package/docs/hi/intlayer_with_nestjs.md +115 -0
  478. package/docs/hi/intlayer_with_nextjs_14.md +144 -120
  479. package/docs/hi/intlayer_with_nextjs_15.md +129 -51
  480. package/docs/hi/intlayer_with_nextjs_16.md +129 -50
  481. package/docs/hi/intlayer_with_nextjs_compiler.md +121 -12
  482. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +121 -9
  483. package/docs/hi/intlayer_with_nextjs_page_router.md +123 -96
  484. package/docs/hi/intlayer_with_nuxt.md +110 -8
  485. package/docs/hi/intlayer_with_react_native+expo.md +102 -7
  486. package/docs/hi/intlayer_with_react_router_v7.md +119 -10
  487. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +122 -22
  488. package/docs/hi/intlayer_with_solid_start.md +115 -1
  489. package/docs/hi/intlayer_with_storybook.md +7 -20
  490. package/docs/hi/intlayer_with_svelte_kit.md +105 -8
  491. package/docs/hi/intlayer_with_tanstack+solid.md +124 -22
  492. package/docs/hi/intlayer_with_tanstack.md +269 -155
  493. package/docs/hi/intlayer_with_vanilla.md +117 -9
  494. package/docs/hi/intlayer_with_vite+lit.md +118 -8
  495. package/docs/hi/intlayer_with_vite+preact.md +170 -41
  496. package/docs/hi/intlayer_with_vite+react.md +108 -20
  497. package/docs/hi/intlayer_with_vite+react_compiler.md +106 -1
  498. package/docs/hi/intlayer_with_vite+solid.md +118 -8
  499. package/docs/hi/intlayer_with_vite+svelte.md +120 -9
  500. package/docs/hi/intlayer_with_vite+vanilla.md +125 -8
  501. package/docs/hi/intlayer_with_vite+vue.md +104 -8
  502. package/docs/hi/introduction.md +104 -1
  503. package/docs/hi/migration_from_i18next_to_intlayer.md +0 -2
  504. package/docs/hi/migration_from_next-i18next_to_intlayer.md +0 -2
  505. package/docs/hi/migration_from_next-intl_to_intlayer.md +0 -2
  506. package/docs/hi/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  507. package/docs/hi/migration_from_react-i18next_to_intlayer.md +0 -2
  508. package/docs/hi/migration_from_vue-i18n_to_intlayer.md +0 -2
  509. package/docs/hi/packages/vite-intlayer/intlayerMinify.md +1 -1
  510. package/docs/id/analytics.md +488 -21
  511. package/docs/id/configuration.md +98 -0
  512. package/docs/id/dictionary/content_file.md +4 -4
  513. package/docs/id/dictionary/markdown.md +3 -0
  514. package/docs/id/dictionary/plurial.md +5 -2
  515. package/docs/id/how_works_intlayer.md +92 -0
  516. package/docs/id/interest_of_intlayer.md +96 -1
  517. package/docs/id/intlayer_CMS.md +92 -0
  518. package/docs/id/intlayer_visual_editor.md +87 -1
  519. package/docs/id/intlayer_with_adonisjs.md +121 -0
  520. package/docs/id/intlayer_with_analog.md +109 -1
  521. package/docs/id/intlayer_with_angular_19.md +108 -1
  522. package/docs/id/intlayer_with_angular_21.md +102 -1
  523. package/docs/id/intlayer_with_astro.md +110 -13
  524. package/docs/id/intlayer_with_astro_lit.md +111 -3
  525. package/docs/id/intlayer_with_astro_preact.md +111 -3
  526. package/docs/id/intlayer_with_astro_react.md +111 -3
  527. package/docs/id/intlayer_with_astro_solid.md +111 -3
  528. package/docs/id/intlayer_with_astro_svelte.md +111 -3
  529. package/docs/id/intlayer_with_astro_vanilla.md +105 -3
  530. package/docs/id/intlayer_with_astro_vue.md +111 -3
  531. package/docs/id/intlayer_with_create_react_app.md +106 -1
  532. package/docs/id/intlayer_with_elysia.md +121 -0
  533. package/docs/id/intlayer_with_express.md +114 -0
  534. package/docs/id/intlayer_with_fastify.md +115 -0
  535. package/docs/id/intlayer_with_hono.md +114 -0
  536. package/docs/id/intlayer_with_htmx.md +761 -0
  537. package/docs/id/intlayer_with_lynx+react.md +0 -7
  538. package/docs/id/intlayer_with_nestjs.md +115 -0
  539. package/docs/id/intlayer_with_nextjs_14.md +132 -66
  540. package/docs/id/intlayer_with_nextjs_15.md +119 -43
  541. package/docs/id/intlayer_with_nextjs_16.md +122 -42
  542. package/docs/id/intlayer_with_nextjs_compiler.md +122 -14
  543. package/docs/id/intlayer_with_nextjs_no_locale_path.md +114 -2
  544. package/docs/id/intlayer_with_nextjs_page_router.md +111 -94
  545. package/docs/id/intlayer_with_nuxt.md +103 -1
  546. package/docs/id/intlayer_with_react_native+expo.md +102 -7
  547. package/docs/id/intlayer_with_react_router_v7.md +112 -3
  548. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +116 -16
  549. package/docs/id/intlayer_with_solid_start.md +115 -1
  550. package/docs/id/intlayer_with_storybook.md +0 -13
  551. package/docs/id/intlayer_with_svelte_kit.md +98 -1
  552. package/docs/id/intlayer_with_tanstack+solid.md +117 -15
  553. package/docs/id/intlayer_with_tanstack.md +229 -129
  554. package/docs/id/intlayer_with_vanilla.md +110 -2
  555. package/docs/id/intlayer_with_vite+lit.md +111 -1
  556. package/docs/id/intlayer_with_vite+preact.md +141 -33
  557. package/docs/id/intlayer_with_vite+react.md +101 -13
  558. package/docs/id/intlayer_with_vite+react_compiler.md +106 -1
  559. package/docs/id/intlayer_with_vite+solid.md +112 -1
  560. package/docs/id/intlayer_with_vite+svelte.md +111 -1
  561. package/docs/id/intlayer_with_vite+vanilla.md +118 -1
  562. package/docs/id/intlayer_with_vite+vue.md +97 -1
  563. package/docs/id/introduction.md +104 -1
  564. package/docs/id/migration_from_i18next_to_intlayer.md +0 -2
  565. package/docs/id/migration_from_next-i18next_to_intlayer.md +0 -2
  566. package/docs/id/migration_from_next-intl_to_intlayer.md +0 -2
  567. package/docs/id/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  568. package/docs/id/migration_from_react-i18next_to_intlayer.md +0 -2
  569. package/docs/id/migration_from_vue-i18n_to_intlayer.md +0 -2
  570. package/docs/id/packages/vite-intlayer/intlayerMinify.md +1 -1
  571. package/docs/it/analytics.md +488 -21
  572. package/docs/it/configuration.md +99 -1
  573. package/docs/it/dictionary/content_file.md +4 -4
  574. package/docs/it/dictionary/markdown.md +18 -1
  575. package/docs/it/dictionary/plurial.md +5 -2
  576. package/docs/it/how_works_intlayer.md +93 -1
  577. package/docs/it/interest_of_intlayer.md +97 -2
  578. package/docs/it/intlayer_CMS.md +93 -1
  579. package/docs/it/intlayer_visual_editor.md +88 -2
  580. package/docs/it/intlayer_with_adonisjs.md +121 -1
  581. package/docs/it/intlayer_with_analog.md +111 -2
  582. package/docs/it/intlayer_with_angular_19.md +109 -2
  583. package/docs/it/intlayer_with_angular_21.md +103 -2
  584. package/docs/it/intlayer_with_astro.md +111 -14
  585. package/docs/it/intlayer_with_astro_lit.md +112 -4
  586. package/docs/it/intlayer_with_astro_preact.md +112 -4
  587. package/docs/it/intlayer_with_astro_react.md +112 -4
  588. package/docs/it/intlayer_with_astro_solid.md +112 -4
  589. package/docs/it/intlayer_with_astro_svelte.md +112 -4
  590. package/docs/it/intlayer_with_astro_vanilla.md +106 -4
  591. package/docs/it/intlayer_with_astro_vue.md +112 -4
  592. package/docs/it/intlayer_with_create_react_app.md +107 -2
  593. package/docs/it/intlayer_with_elysia.md +121 -1
  594. package/docs/it/intlayer_with_express.md +115 -1
  595. package/docs/it/intlayer_with_fastify.md +115 -1
  596. package/docs/it/intlayer_with_hono.md +115 -1
  597. package/docs/it/intlayer_with_htmx.md +761 -0
  598. package/docs/it/intlayer_with_lynx+react.md +0 -7
  599. package/docs/it/intlayer_with_nestjs.md +115 -1
  600. package/docs/it/intlayer_with_nextjs_14.md +138 -115
  601. package/docs/it/intlayer_with_nextjs_15.md +124 -47
  602. package/docs/it/intlayer_with_nextjs_16.md +123 -44
  603. package/docs/it/intlayer_with_nextjs_compiler.md +123 -14
  604. package/docs/it/intlayer_with_nextjs_no_locale_path.md +115 -3
  605. package/docs/it/intlayer_with_nextjs_page_router.md +119 -95
  606. package/docs/it/intlayer_with_nuxt.md +104 -2
  607. package/docs/it/intlayer_with_react_native+expo.md +103 -8
  608. package/docs/it/intlayer_with_react_router_v7.md +113 -4
  609. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +111 -4
  610. package/docs/it/intlayer_with_solid_start.md +117 -2
  611. package/docs/it/intlayer_with_storybook.md +0 -13
  612. package/docs/it/intlayer_with_svelte_kit.md +99 -2
  613. package/docs/it/intlayer_with_tanstack+solid.md +119 -16
  614. package/docs/it/intlayer_with_tanstack.md +232 -131
  615. package/docs/it/intlayer_with_vanilla.md +111 -3
  616. package/docs/it/intlayer_with_vite+lit.md +113 -2
  617. package/docs/it/intlayer_with_vite+preact.md +143 -34
  618. package/docs/it/intlayer_with_vite+react.md +102 -14
  619. package/docs/it/intlayer_with_vite+react_compiler.md +107 -2
  620. package/docs/it/intlayer_with_vite+solid.md +114 -2
  621. package/docs/it/intlayer_with_vite+svelte.md +113 -2
  622. package/docs/it/intlayer_with_vite+vanilla.md +119 -2
  623. package/docs/it/intlayer_with_vite+vue.md +99 -3
  624. package/docs/it/introduction.md +105 -2
  625. package/docs/it/migration_from_i18next_to_intlayer.md +0 -2
  626. package/docs/it/migration_from_next-i18next_to_intlayer.md +0 -2
  627. package/docs/it/migration_from_next-intl_to_intlayer.md +0 -2
  628. package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  629. package/docs/it/migration_from_react-i18next_to_intlayer.md +0 -2
  630. package/docs/it/migration_from_vue-i18n_to_intlayer.md +0 -2
  631. package/docs/it/packages/vite-intlayer/intlayerMinify.md +1 -1
  632. package/docs/ja/analytics.md +458 -12
  633. package/docs/ja/configuration.md +99 -1
  634. package/docs/ja/dictionary/content_file.md +4 -4
  635. package/docs/ja/dictionary/plurial.md +5 -2
  636. package/docs/ja/how_works_intlayer.md +93 -1
  637. package/docs/ja/interest_of_intlayer.md +107 -10
  638. package/docs/ja/intlayer_CMS.md +93 -1
  639. package/docs/ja/intlayer_visual_editor.md +88 -2
  640. package/docs/ja/intlayer_with_adonisjs.md +121 -1
  641. package/docs/ja/intlayer_with_analog.md +119 -10
  642. package/docs/ja/intlayer_with_angular_19.md +117 -10
  643. package/docs/ja/intlayer_with_angular_21.md +111 -10
  644. package/docs/ja/intlayer_with_astro.md +119 -22
  645. package/docs/ja/intlayer_with_astro_lit.md +120 -12
  646. package/docs/ja/intlayer_with_astro_preact.md +120 -12
  647. package/docs/ja/intlayer_with_astro_react.md +120 -12
  648. package/docs/ja/intlayer_with_astro_solid.md +120 -12
  649. package/docs/ja/intlayer_with_astro_svelte.md +120 -12
  650. package/docs/ja/intlayer_with_astro_vanilla.md +114 -12
  651. package/docs/ja/intlayer_with_astro_vue.md +120 -12
  652. package/docs/ja/intlayer_with_create_react_app.md +107 -2
  653. package/docs/ja/intlayer_with_elysia.md +121 -1
  654. package/docs/ja/intlayer_with_express.md +121 -1
  655. package/docs/ja/intlayer_with_fastify.md +115 -1
  656. package/docs/ja/intlayer_with_hono.md +115 -1
  657. package/docs/ja/intlayer_with_htmx.md +769 -0
  658. package/docs/ja/intlayer_with_lynx+react.md +8 -15
  659. package/docs/ja/intlayer_with_nestjs.md +115 -1
  660. package/docs/ja/intlayer_with_nextjs_14.md +128 -51
  661. package/docs/ja/intlayer_with_nextjs_15.md +136 -59
  662. package/docs/ja/intlayer_with_nextjs_16.md +131 -52
  663. package/docs/ja/intlayer_with_nextjs_compiler.md +123 -15
  664. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +123 -11
  665. package/docs/ja/intlayer_with_nextjs_page_router.md +215 -110
  666. package/docs/ja/intlayer_with_nuxt.md +112 -10
  667. package/docs/ja/intlayer_with_react_native+expo.md +103 -8
  668. package/docs/ja/intlayer_with_react_router_v7.md +121 -11
  669. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +123 -23
  670. package/docs/ja/intlayer_with_solid_start.md +117 -2
  671. package/docs/ja/intlayer_with_storybook.md +8 -21
  672. package/docs/ja/intlayer_with_svelte_kit.md +107 -10
  673. package/docs/ja/intlayer_with_tanstack+solid.md +128 -24
  674. package/docs/ja/intlayer_with_tanstack.md +254 -203
  675. package/docs/ja/intlayer_with_vanilla.md +119 -11
  676. package/docs/ja/intlayer_with_vite+lit.md +121 -10
  677. package/docs/ja/intlayer_with_vite+preact.md +151 -23
  678. package/docs/ja/intlayer_with_vite+react.md +109 -12
  679. package/docs/ja/intlayer_with_vite+react_compiler.md +107 -2
  680. package/docs/ja/intlayer_with_vite+solid.md +121 -10
  681. package/docs/ja/intlayer_with_vite+svelte.md +121 -10
  682. package/docs/ja/intlayer_with_vite+vanilla.md +127 -10
  683. package/docs/ja/intlayer_with_vite+vue.md +107 -11
  684. package/docs/ja/introduction.md +105 -2
  685. package/docs/ja/migration_from_i18next_to_intlayer.md +0 -2
  686. package/docs/ja/migration_from_next-i18next_to_intlayer.md +0 -2
  687. package/docs/ja/migration_from_next-intl_to_intlayer.md +0 -2
  688. package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  689. package/docs/ja/migration_from_react-i18next_to_intlayer.md +0 -2
  690. package/docs/ja/migration_from_vue-i18n_to_intlayer.md +0 -2
  691. package/docs/ja/packages/vite-intlayer/intlayerMinify.md +1 -1
  692. package/docs/ko/analytics.md +457 -11
  693. package/docs/ko/configuration.md +99 -1
  694. package/docs/ko/dictionary/content_file.md +4 -4
  695. package/docs/ko/dictionary/markdown.md +18 -1
  696. package/docs/ko/dictionary/plurial.md +6 -3
  697. package/docs/ko/how_works_intlayer.md +93 -1
  698. package/docs/ko/interest_of_intlayer.md +98 -3
  699. package/docs/ko/intlayer_CMS.md +93 -1
  700. package/docs/ko/intlayer_visual_editor.md +88 -2
  701. package/docs/ko/intlayer_with_adonisjs.md +121 -1
  702. package/docs/ko/intlayer_with_analog.md +111 -2
  703. package/docs/ko/intlayer_with_angular_19.md +110 -3
  704. package/docs/ko/intlayer_with_angular_21.md +104 -3
  705. package/docs/ko/intlayer_with_astro.md +119 -19
  706. package/docs/ko/intlayer_with_astro_lit.md +112 -4
  707. package/docs/ko/intlayer_with_astro_preact.md +112 -4
  708. package/docs/ko/intlayer_with_astro_react.md +112 -4
  709. package/docs/ko/intlayer_with_astro_solid.md +112 -4
  710. package/docs/ko/intlayer_with_astro_svelte.md +112 -4
  711. package/docs/ko/intlayer_with_astro_vanilla.md +106 -4
  712. package/docs/ko/intlayer_with_astro_vue.md +112 -4
  713. package/docs/ko/intlayer_with_create_react_app.md +107 -5
  714. package/docs/ko/intlayer_with_elysia.md +121 -1
  715. package/docs/ko/intlayer_with_express.md +115 -1
  716. package/docs/ko/intlayer_with_fastify.md +115 -2
  717. package/docs/ko/intlayer_with_hono.md +115 -1
  718. package/docs/ko/intlayer_with_htmx.md +763 -0
  719. package/docs/ko/intlayer_with_lynx+react.md +0 -7
  720. package/docs/ko/intlayer_with_nestjs.md +115 -1
  721. package/docs/ko/intlayer_with_nextjs_14.md +118 -42
  722. package/docs/ko/intlayer_with_nextjs_15.md +118 -43
  723. package/docs/ko/intlayer_with_nextjs_16.md +121 -43
  724. package/docs/ko/intlayer_with_nextjs_compiler.md +110 -1
  725. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +117 -7
  726. package/docs/ko/intlayer_with_nextjs_page_router.md +110 -94
  727. package/docs/ko/intlayer_with_nuxt.md +104 -2
  728. package/docs/ko/intlayer_with_react_native+expo.md +103 -8
  729. package/docs/ko/intlayer_with_react_router_v7.md +116 -10
  730. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +113 -11
  731. package/docs/ko/intlayer_with_solid_start.md +122 -7
  732. package/docs/ko/intlayer_with_storybook.md +0 -14
  733. package/docs/ko/intlayer_with_svelte_kit.md +99 -2
  734. package/docs/ko/intlayer_with_tanstack+solid.md +121 -17
  735. package/docs/ko/intlayer_with_tanstack.md +260 -191
  736. package/docs/ko/intlayer_with_vanilla.md +111 -2
  737. package/docs/ko/intlayer_with_vite+lit.md +114 -3
  738. package/docs/ko/intlayer_with_vite+preact.md +143 -34
  739. package/docs/ko/intlayer_with_vite+react.md +101 -5
  740. package/docs/ko/intlayer_with_vite+react_compiler.md +107 -10
  741. package/docs/ko/intlayer_with_vite+solid.md +115 -2
  742. package/docs/ko/intlayer_with_vite+svelte.md +114 -6
  743. package/docs/ko/intlayer_with_vite+vanilla.md +121 -11
  744. package/docs/ko/intlayer_with_vite+vue.md +99 -3
  745. package/docs/ko/introduction.md +105 -2
  746. package/docs/ko/migration_from_i18next_to_intlayer.md +0 -2
  747. package/docs/ko/migration_from_next-i18next_to_intlayer.md +0 -2
  748. package/docs/ko/migration_from_next-intl_to_intlayer.md +0 -2
  749. package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  750. package/docs/ko/migration_from_react-i18next_to_intlayer.md +0 -2
  751. package/docs/ko/migration_from_vue-i18n_to_intlayer.md +0 -2
  752. package/docs/ko/packages/express-intlayer/t.md +9 -6
  753. package/docs/ko/packages/vite-intlayer/intlayerMinify.md +1 -1
  754. package/docs/nl/interest_of_intlayer.md +0 -1
  755. package/docs/nl/intlayer_with_storybook.md +0 -12
  756. package/docs/nl/intlayer_with_vanilla.md +2 -1
  757. package/docs/nl/introduction.md +0 -1
  758. package/docs/pl/analytics.md +488 -21
  759. package/docs/pl/configuration.md +98 -0
  760. package/docs/pl/dictionary/content_file.md +4 -4
  761. package/docs/pl/dictionary/markdown.md +3 -0
  762. package/docs/pl/dictionary/plurial.md +5 -2
  763. package/docs/pl/how_works_intlayer.md +92 -0
  764. package/docs/pl/interest_of_intlayer.md +96 -1
  765. package/docs/pl/intlayer_CMS.md +92 -0
  766. package/docs/pl/intlayer_visual_editor.md +87 -1
  767. package/docs/pl/intlayer_with_adonisjs.md +120 -0
  768. package/docs/pl/intlayer_with_analog.md +116 -8
  769. package/docs/pl/intlayer_with_angular_19.md +115 -8
  770. package/docs/pl/intlayer_with_angular_21.md +109 -8
  771. package/docs/pl/intlayer_with_astro.md +117 -20
  772. package/docs/pl/intlayer_with_astro_lit.md +118 -10
  773. package/docs/pl/intlayer_with_astro_preact.md +118 -10
  774. package/docs/pl/intlayer_with_astro_react.md +118 -10
  775. package/docs/pl/intlayer_with_astro_solid.md +118 -10
  776. package/docs/pl/intlayer_with_astro_svelte.md +118 -10
  777. package/docs/pl/intlayer_with_astro_vanilla.md +112 -10
  778. package/docs/pl/intlayer_with_astro_vue.md +118 -10
  779. package/docs/pl/intlayer_with_create_react_app.md +106 -1
  780. package/docs/pl/intlayer_with_elysia.md +120 -0
  781. package/docs/pl/intlayer_with_express.md +114 -0
  782. package/docs/pl/intlayer_with_fastify.md +114 -0
  783. package/docs/pl/intlayer_with_hono.md +114 -0
  784. package/docs/pl/intlayer_with_htmx.md +767 -0
  785. package/docs/pl/intlayer_with_lynx+react.md +7 -14
  786. package/docs/pl/intlayer_with_nestjs.md +114 -0
  787. package/docs/pl/intlayer_with_nextjs_14.md +127 -50
  788. package/docs/pl/intlayer_with_nextjs_15.md +141 -62
  789. package/docs/pl/intlayer_with_nextjs_16.md +128 -51
  790. package/docs/pl/intlayer_with_nextjs_compiler.md +122 -13
  791. package/docs/pl/intlayer_with_nextjs_no_locale_path.md +122 -10
  792. package/docs/pl/intlayer_with_nextjs_page_router.md +115 -97
  793. package/docs/pl/intlayer_with_nuxt.md +110 -8
  794. package/docs/pl/intlayer_with_react_native+expo.md +102 -7
  795. package/docs/pl/intlayer_with_react_router_v7.md +131 -22
  796. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +121 -20
  797. package/docs/pl/intlayer_with_solid_start.md +115 -1
  798. package/docs/pl/intlayer_with_storybook.md +7 -20
  799. package/docs/pl/intlayer_with_svelte_kit.md +105 -8
  800. package/docs/pl/intlayer_with_tanstack+solid.md +124 -22
  801. package/docs/pl/intlayer_with_tanstack.md +238 -160
  802. package/docs/pl/intlayer_with_vanilla.md +117 -9
  803. package/docs/pl/intlayer_with_vite+lit.md +118 -8
  804. package/docs/pl/intlayer_with_vite+preact.md +148 -40
  805. package/docs/pl/intlayer_with_vite+react.md +108 -20
  806. package/docs/pl/intlayer_with_vite+react_compiler.md +108 -3
  807. package/docs/pl/intlayer_with_vite+solid.md +112 -5
  808. package/docs/pl/intlayer_with_vite+svelte.md +118 -8
  809. package/docs/pl/intlayer_with_vite+vanilla.md +125 -8
  810. package/docs/pl/intlayer_with_vite+vue.md +104 -8
  811. package/docs/pl/introduction.md +104 -1
  812. package/docs/pl/migration_from_i18next_to_intlayer.md +0 -2
  813. package/docs/pl/migration_from_next-i18next_to_intlayer.md +0 -2
  814. package/docs/pl/migration_from_next-intl_to_intlayer.md +0 -2
  815. package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  816. package/docs/pl/migration_from_react-i18next_to_intlayer.md +0 -2
  817. package/docs/pl/migration_from_vue-i18n_to_intlayer.md +0 -2
  818. package/docs/pl/packages/next-intlayer/useIntlayer.md +3 -0
  819. package/docs/pl/packages/vite-intlayer/intlayerMinify.md +1 -1
  820. package/docs/pt/analytics.md +488 -21
  821. package/docs/pt/configuration.md +99 -1
  822. package/docs/pt/dictionary/content_file.md +4 -4
  823. package/docs/pt/dictionary/html.md +18 -1
  824. package/docs/pt/dictionary/markdown.md +3 -0
  825. package/docs/pt/dictionary/plurial.md +5 -2
  826. package/docs/pt/how_works_intlayer.md +93 -1
  827. package/docs/pt/interest_of_intlayer.md +98 -3
  828. package/docs/pt/intlayer_CMS.md +93 -1
  829. package/docs/pt/intlayer_visual_editor.md +88 -2
  830. package/docs/pt/intlayer_with_adonisjs.md +121 -1
  831. package/docs/pt/intlayer_with_analog.md +112 -3
  832. package/docs/pt/intlayer_with_angular_19.md +109 -2
  833. package/docs/pt/intlayer_with_angular_21.md +103 -2
  834. package/docs/pt/intlayer_with_astro.md +111 -14
  835. package/docs/pt/intlayer_with_astro_lit.md +112 -4
  836. package/docs/pt/intlayer_with_astro_preact.md +112 -4
  837. package/docs/pt/intlayer_with_astro_react.md +112 -4
  838. package/docs/pt/intlayer_with_astro_solid.md +112 -4
  839. package/docs/pt/intlayer_with_astro_svelte.md +112 -4
  840. package/docs/pt/intlayer_with_astro_vanilla.md +106 -4
  841. package/docs/pt/intlayer_with_astro_vue.md +111 -3
  842. package/docs/pt/intlayer_with_create_react_app.md +107 -2
  843. package/docs/pt/intlayer_with_elysia.md +121 -1
  844. package/docs/pt/intlayer_with_express.md +115 -1
  845. package/docs/pt/intlayer_with_fastify.md +115 -2
  846. package/docs/pt/intlayer_with_hono.md +115 -1
  847. package/docs/pt/intlayer_with_htmx.md +771 -0
  848. package/docs/pt/intlayer_with_lynx+react.md +0 -7
  849. package/docs/pt/intlayer_with_nestjs.md +115 -1
  850. package/docs/pt/intlayer_with_nextjs_14.md +138 -117
  851. package/docs/pt/intlayer_with_nextjs_15.md +120 -45
  852. package/docs/pt/intlayer_with_nextjs_16.md +122 -45
  853. package/docs/pt/intlayer_with_nextjs_compiler.md +122 -12
  854. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +115 -3
  855. package/docs/pt/intlayer_with_nextjs_page_router.md +121 -95
  856. package/docs/pt/intlayer_with_nuxt.md +104 -2
  857. package/docs/pt/intlayer_with_react_native+expo.md +103 -8
  858. package/docs/pt/intlayer_with_react_router_v7.md +140 -33
  859. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +115 -8
  860. package/docs/pt/intlayer_with_solid_start.md +121 -6
  861. package/docs/pt/intlayer_with_storybook.md +0 -13
  862. package/docs/pt/intlayer_with_svelte_kit.md +99 -2
  863. package/docs/pt/intlayer_with_tanstack+solid.md +120 -16
  864. package/docs/pt/intlayer_with_tanstack.md +252 -144
  865. package/docs/pt/intlayer_with_vanilla.md +111 -3
  866. package/docs/pt/intlayer_with_vite+lit.md +113 -2
  867. package/docs/pt/intlayer_with_vite+preact.md +143 -34
  868. package/docs/pt/intlayer_with_vite+react.md +101 -4
  869. package/docs/pt/intlayer_with_vite+react_compiler.md +107 -2
  870. package/docs/pt/intlayer_with_vite+solid.md +114 -2
  871. package/docs/pt/intlayer_with_vite+svelte.md +113 -2
  872. package/docs/pt/intlayer_with_vite+vanilla.md +119 -2
  873. package/docs/pt/intlayer_with_vite+vue.md +98 -2
  874. package/docs/pt/introduction.md +105 -2
  875. package/docs/pt/migration_from_i18next_to_intlayer.md +0 -2
  876. package/docs/pt/migration_from_next-i18next_to_intlayer.md +0 -2
  877. package/docs/pt/migration_from_next-intl_to_intlayer.md +0 -2
  878. package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  879. package/docs/pt/migration_from_react-i18next_to_intlayer.md +0 -2
  880. package/docs/pt/migration_from_vue-i18n_to_intlayer.md +0 -2
  881. package/docs/pt/packages/vite-intlayer/intlayerMinify.md +1 -1
  882. package/docs/ru/analytics.md +458 -12
  883. package/docs/ru/cli/doc-review.md +0 -2
  884. package/docs/ru/configuration.md +99 -1
  885. package/docs/ru/dictionary/content_file.md +4 -4
  886. package/docs/ru/dictionary/markdown.md +0 -2
  887. package/docs/ru/dictionary/plurial.md +6 -3
  888. package/docs/ru/dictionary/translation.md +1 -1
  889. package/docs/ru/how_works_intlayer.md +93 -1
  890. package/docs/ru/interest_of_intlayer.md +97 -2
  891. package/docs/ru/intlayer_CMS.md +93 -1
  892. package/docs/ru/intlayer_visual_editor.md +88 -2
  893. package/docs/ru/intlayer_with_adonisjs.md +121 -1
  894. package/docs/ru/intlayer_with_analog.md +111 -2
  895. package/docs/ru/intlayer_with_angular_19.md +109 -2
  896. package/docs/ru/intlayer_with_angular_21.md +103 -2
  897. package/docs/ru/intlayer_with_astro.md +111 -14
  898. package/docs/ru/intlayer_with_astro_lit.md +112 -4
  899. package/docs/ru/intlayer_with_astro_preact.md +112 -4
  900. package/docs/ru/intlayer_with_astro_react.md +112 -4
  901. package/docs/ru/intlayer_with_astro_solid.md +112 -4
  902. package/docs/ru/intlayer_with_astro_svelte.md +112 -4
  903. package/docs/ru/intlayer_with_astro_vanilla.md +106 -4
  904. package/docs/ru/intlayer_with_astro_vue.md +112 -4
  905. package/docs/ru/intlayer_with_create_react_app.md +107 -2
  906. package/docs/ru/intlayer_with_elysia.md +121 -1
  907. package/docs/ru/intlayer_with_express.md +115 -1
  908. package/docs/ru/intlayer_with_fastify.md +115 -1
  909. package/docs/ru/intlayer_with_hono.md +115 -1
  910. package/docs/ru/intlayer_with_htmx.md +767 -0
  911. package/docs/ru/intlayer_with_lynx+react.md +0 -7
  912. package/docs/ru/intlayer_with_nestjs.md +115 -1
  913. package/docs/ru/intlayer_with_nextjs_14.md +138 -114
  914. package/docs/ru/intlayer_with_nextjs_15.md +123 -62
  915. package/docs/ru/intlayer_with_nextjs_16.md +122 -45
  916. package/docs/ru/intlayer_with_nextjs_compiler.md +123 -14
  917. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +115 -3
  918. package/docs/ru/intlayer_with_nextjs_page_router.md +110 -95
  919. package/docs/ru/intlayer_with_nuxt.md +104 -2
  920. package/docs/ru/intlayer_with_react_native+expo.md +103 -8
  921. package/docs/ru/intlayer_with_react_router_v7.md +113 -4
  922. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +111 -4
  923. package/docs/ru/intlayer_with_solid_start.md +117 -2
  924. package/docs/ru/intlayer_with_storybook.md +0 -13
  925. package/docs/ru/intlayer_with_svelte_kit.md +99 -2
  926. package/docs/ru/intlayer_with_tanstack+solid.md +119 -16
  927. package/docs/ru/intlayer_with_tanstack.md +230 -151
  928. package/docs/ru/intlayer_with_vanilla.md +111 -3
  929. package/docs/ru/intlayer_with_vite+lit.md +113 -2
  930. package/docs/ru/intlayer_with_vite+preact.md +143 -34
  931. package/docs/ru/intlayer_with_vite+react.md +102 -14
  932. package/docs/ru/intlayer_with_vite+react_compiler.md +107 -2
  933. package/docs/ru/intlayer_with_vite+solid.md +114 -2
  934. package/docs/ru/intlayer_with_vite+svelte.md +115 -12
  935. package/docs/ru/intlayer_with_vite+vanilla.md +119 -2
  936. package/docs/ru/intlayer_with_vite+vue.md +99 -3
  937. package/docs/ru/introduction.md +105 -2
  938. package/docs/ru/migration_from_i18next_to_intlayer.md +0 -2
  939. package/docs/ru/migration_from_next-i18next_to_intlayer.md +0 -2
  940. package/docs/ru/migration_from_next-intl_to_intlayer.md +0 -2
  941. package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  942. package/docs/ru/migration_from_react-i18next_to_intlayer.md +0 -2
  943. package/docs/ru/migration_from_vue-i18n_to_intlayer.md +0 -2
  944. package/docs/ru/packages/vite-intlayer/intlayerMinify.md +1 -1
  945. package/docs/tr/analytics.md +488 -21
  946. package/docs/tr/cli/doc-review.md +0 -2
  947. package/docs/tr/configuration.md +98 -0
  948. package/docs/tr/dictionary/content_file.md +4 -4
  949. package/docs/tr/dictionary/markdown.md +3 -0
  950. package/docs/tr/dictionary/plurial.md +6 -3
  951. package/docs/tr/how_works_intlayer.md +92 -0
  952. package/docs/tr/interest_of_intlayer.md +96 -1
  953. package/docs/tr/intlayer_CMS.md +92 -0
  954. package/docs/tr/intlayer_visual_editor.md +87 -1
  955. package/docs/tr/intlayer_with_adonisjs.md +121 -0
  956. package/docs/tr/intlayer_with_analog.md +109 -1
  957. package/docs/tr/intlayer_with_angular_19.md +108 -1
  958. package/docs/tr/intlayer_with_angular_21.md +102 -1
  959. package/docs/tr/intlayer_with_astro.md +117 -27
  960. package/docs/tr/intlayer_with_astro_lit.md +111 -3
  961. package/docs/tr/intlayer_with_astro_preact.md +111 -3
  962. package/docs/tr/intlayer_with_astro_react.md +111 -3
  963. package/docs/tr/intlayer_with_astro_solid.md +111 -3
  964. package/docs/tr/intlayer_with_astro_svelte.md +111 -3
  965. package/docs/tr/intlayer_with_astro_vanilla.md +105 -3
  966. package/docs/tr/intlayer_with_astro_vue.md +111 -3
  967. package/docs/tr/intlayer_with_create_react_app.md +106 -1
  968. package/docs/tr/intlayer_with_elysia.md +121 -0
  969. package/docs/tr/intlayer_with_express.md +114 -0
  970. package/docs/tr/intlayer_with_fastify.md +115 -0
  971. package/docs/tr/intlayer_with_hono.md +114 -0
  972. package/docs/tr/intlayer_with_htmx.md +761 -0
  973. package/docs/tr/intlayer_with_lynx+react.md +0 -7
  974. package/docs/tr/intlayer_with_nestjs.md +115 -0
  975. package/docs/tr/intlayer_with_nextjs_14.md +125 -51
  976. package/docs/tr/intlayer_with_nextjs_15.md +119 -44
  977. package/docs/tr/intlayer_with_nextjs_16.md +120 -43
  978. package/docs/tr/intlayer_with_nextjs_compiler.md +121 -13
  979. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +114 -2
  980. package/docs/tr/intlayer_with_nextjs_page_router.md +124 -120
  981. package/docs/tr/intlayer_with_nuxt.md +103 -1
  982. package/docs/tr/intlayer_with_react_native+expo.md +102 -7
  983. package/docs/tr/intlayer_with_react_router_v7.md +112 -3
  984. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +110 -3
  985. package/docs/tr/intlayer_with_solid_start.md +115 -1
  986. package/docs/tr/intlayer_with_storybook.md +0 -13
  987. package/docs/tr/intlayer_with_svelte_kit.md +98 -1
  988. package/docs/tr/intlayer_with_tanstack+solid.md +117 -15
  989. package/docs/tr/intlayer_with_tanstack.md +259 -128
  990. package/docs/tr/intlayer_with_vanilla.md +110 -2
  991. package/docs/tr/intlayer_with_vite+lit.md +111 -1
  992. package/docs/tr/intlayer_with_vite+preact.md +141 -33
  993. package/docs/tr/intlayer_with_vite+react.md +100 -3
  994. package/docs/tr/intlayer_with_vite+react_compiler.md +106 -1
  995. package/docs/tr/intlayer_with_vite+solid.md +112 -1
  996. package/docs/tr/intlayer_with_vite+svelte.md +111 -1
  997. package/docs/tr/intlayer_with_vite+vanilla.md +118 -1
  998. package/docs/tr/intlayer_with_vite+vue.md +99 -4
  999. package/docs/tr/introduction.md +104 -1
  1000. package/docs/tr/migration_from_i18next_to_intlayer.md +0 -2
  1001. package/docs/tr/migration_from_next-i18next_to_intlayer.md +0 -2
  1002. package/docs/tr/migration_from_next-intl_to_intlayer.md +0 -2
  1003. package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  1004. package/docs/tr/migration_from_react-i18next_to_intlayer.md +0 -2
  1005. package/docs/tr/migration_from_vue-i18n_to_intlayer.md +0 -2
  1006. package/docs/tr/packages/vite-intlayer/intlayerMinify.md +1 -1
  1007. package/docs/uk/analytics.md +488 -21
  1008. package/docs/uk/configuration.md +98 -0
  1009. package/docs/uk/dictionary/content_file.md +4 -4
  1010. package/docs/uk/dictionary/markdown.md +3 -0
  1011. package/docs/uk/dictionary/plurial.md +6 -3
  1012. package/docs/uk/how_works_intlayer.md +92 -0
  1013. package/docs/uk/interest_of_intlayer.md +96 -1
  1014. package/docs/uk/intlayer_CMS.md +92 -0
  1015. package/docs/uk/intlayer_visual_editor.md +87 -1
  1016. package/docs/uk/intlayer_with_adonisjs.md +121 -0
  1017. package/docs/uk/intlayer_with_analog.md +109 -1
  1018. package/docs/uk/intlayer_with_angular_19.md +108 -1
  1019. package/docs/uk/intlayer_with_angular_21.md +102 -1
  1020. package/docs/uk/intlayer_with_astro.md +110 -13
  1021. package/docs/uk/intlayer_with_astro_lit.md +111 -3
  1022. package/docs/uk/intlayer_with_astro_preact.md +111 -3
  1023. package/docs/uk/intlayer_with_astro_react.md +111 -3
  1024. package/docs/uk/intlayer_with_astro_solid.md +111 -3
  1025. package/docs/uk/intlayer_with_astro_svelte.md +111 -3
  1026. package/docs/uk/intlayer_with_astro_vanilla.md +105 -3
  1027. package/docs/uk/intlayer_with_astro_vue.md +111 -3
  1028. package/docs/uk/intlayer_with_create_react_app.md +106 -1
  1029. package/docs/uk/intlayer_with_elysia.md +121 -0
  1030. package/docs/uk/intlayer_with_express.md +114 -0
  1031. package/docs/uk/intlayer_with_fastify.md +115 -0
  1032. package/docs/uk/intlayer_with_hono.md +114 -0
  1033. package/docs/uk/intlayer_with_htmx.md +760 -0
  1034. package/docs/uk/intlayer_with_lynx+react.md +0 -7
  1035. package/docs/uk/intlayer_with_nestjs.md +115 -0
  1036. package/docs/uk/intlayer_with_nextjs_14.md +119 -44
  1037. package/docs/uk/intlayer_with_nextjs_15.md +133 -56
  1038. package/docs/uk/intlayer_with_nextjs_16.md +121 -44
  1039. package/docs/uk/intlayer_with_nextjs_compiler.md +122 -14
  1040. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +114 -2
  1041. package/docs/uk/intlayer_with_nextjs_page_router.md +111 -96
  1042. package/docs/uk/intlayer_with_nuxt.md +103 -1
  1043. package/docs/uk/intlayer_with_react_native+expo.md +102 -7
  1044. package/docs/uk/intlayer_with_react_router_v7.md +112 -3
  1045. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +110 -3
  1046. package/docs/uk/intlayer_with_solid_start.md +115 -1
  1047. package/docs/uk/intlayer_with_storybook.md +0 -13
  1048. package/docs/uk/intlayer_with_svelte_kit.md +98 -1
  1049. package/docs/uk/intlayer_with_tanstack+solid.md +117 -15
  1050. package/docs/uk/intlayer_with_tanstack.md +235 -132
  1051. package/docs/uk/intlayer_with_vanilla.md +110 -2
  1052. package/docs/uk/intlayer_with_vite+lit.md +111 -1
  1053. package/docs/uk/intlayer_with_vite+preact.md +167 -31
  1054. package/docs/uk/intlayer_with_vite+react.md +101 -13
  1055. package/docs/uk/intlayer_with_vite+react_compiler.md +106 -1
  1056. package/docs/uk/intlayer_with_vite+solid.md +112 -1
  1057. package/docs/uk/intlayer_with_vite+svelte.md +111 -1
  1058. package/docs/uk/intlayer_with_vite+vanilla.md +118 -1
  1059. package/docs/uk/intlayer_with_vite+vue.md +97 -1
  1060. package/docs/uk/introduction.md +104 -1
  1061. package/docs/uk/migration_from_i18next_to_intlayer.md +0 -2
  1062. package/docs/uk/migration_from_next-i18next_to_intlayer.md +0 -2
  1063. package/docs/uk/migration_from_next-intl_to_intlayer.md +0 -2
  1064. package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  1065. package/docs/uk/migration_from_react-i18next_to_intlayer.md +0 -2
  1066. package/docs/uk/migration_from_vue-i18n_to_intlayer.md +0 -2
  1067. package/docs/uk/packages/vite-intlayer/intlayerMinify.md +1 -1
  1068. package/docs/ur/intlayer_with_storybook.md +0 -12
  1069. package/docs/ur/intlayer_with_vanilla.md +2 -1
  1070. package/docs/ur/introduction.md +0 -1
  1071. package/docs/vi/analytics.md +488 -21
  1072. package/docs/vi/configuration.md +98 -0
  1073. package/docs/vi/dictionary/content_file.md +4 -4
  1074. package/docs/vi/dictionary/markdown.md +3 -0
  1075. package/docs/vi/dictionary/plurial.md +5 -2
  1076. package/docs/vi/how_works_intlayer.md +92 -0
  1077. package/docs/vi/interest_of_intlayer.md +96 -1
  1078. package/docs/vi/intlayer_CMS.md +92 -0
  1079. package/docs/vi/intlayer_visual_editor.md +87 -1
  1080. package/docs/vi/intlayer_with_adonisjs.md +121 -0
  1081. package/docs/vi/intlayer_with_analog.md +109 -1
  1082. package/docs/vi/intlayer_with_angular_19.md +108 -1
  1083. package/docs/vi/intlayer_with_angular_21.md +102 -1
  1084. package/docs/vi/intlayer_with_astro.md +110 -13
  1085. package/docs/vi/intlayer_with_astro_lit.md +111 -3
  1086. package/docs/vi/intlayer_with_astro_preact.md +111 -3
  1087. package/docs/vi/intlayer_with_astro_react.md +111 -3
  1088. package/docs/vi/intlayer_with_astro_solid.md +111 -3
  1089. package/docs/vi/intlayer_with_astro_svelte.md +111 -3
  1090. package/docs/vi/intlayer_with_astro_vanilla.md +105 -3
  1091. package/docs/vi/intlayer_with_astro_vue.md +111 -3
  1092. package/docs/vi/intlayer_with_create_react_app.md +106 -1
  1093. package/docs/vi/intlayer_with_elysia.md +121 -0
  1094. package/docs/vi/intlayer_with_express.md +114 -0
  1095. package/docs/vi/intlayer_with_fastify.md +115 -0
  1096. package/docs/vi/intlayer_with_hono.md +114 -0
  1097. package/docs/vi/intlayer_with_htmx.md +760 -0
  1098. package/docs/vi/intlayer_with_lynx+react.md +0 -7
  1099. package/docs/vi/intlayer_with_nestjs.md +115 -0
  1100. package/docs/vi/intlayer_with_nextjs_14.md +133 -53
  1101. package/docs/vi/intlayer_with_nextjs_15.md +133 -56
  1102. package/docs/vi/intlayer_with_nextjs_16.md +121 -44
  1103. package/docs/vi/intlayer_with_nextjs_compiler.md +122 -14
  1104. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +114 -2
  1105. package/docs/vi/intlayer_with_nextjs_page_router.md +111 -92
  1106. package/docs/vi/intlayer_with_nuxt.md +103 -1
  1107. package/docs/vi/intlayer_with_react_native+expo.md +102 -7
  1108. package/docs/vi/intlayer_with_react_router_v7.md +112 -3
  1109. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +116 -16
  1110. package/docs/vi/intlayer_with_solid_start.md +115 -1
  1111. package/docs/vi/intlayer_with_storybook.md +0 -13
  1112. package/docs/vi/intlayer_with_svelte_kit.md +98 -1
  1113. package/docs/vi/intlayer_with_tanstack+solid.md +117 -15
  1114. package/docs/vi/intlayer_with_tanstack.md +249 -169
  1115. package/docs/vi/intlayer_with_vanilla.md +110 -2
  1116. package/docs/vi/intlayer_with_vite+lit.md +111 -1
  1117. package/docs/vi/intlayer_with_vite+preact.md +147 -14
  1118. package/docs/vi/intlayer_with_vite+react.md +101 -13
  1119. package/docs/vi/intlayer_with_vite+react_compiler.md +106 -1
  1120. package/docs/vi/intlayer_with_vite+solid.md +112 -1
  1121. package/docs/vi/intlayer_with_vite+svelte.md +111 -1
  1122. package/docs/vi/intlayer_with_vite+vanilla.md +118 -1
  1123. package/docs/vi/intlayer_with_vite+vue.md +97 -1
  1124. package/docs/vi/introduction.md +104 -1
  1125. package/docs/vi/migration_from_i18next_to_intlayer.md +0 -2
  1126. package/docs/vi/migration_from_next-i18next_to_intlayer.md +0 -2
  1127. package/docs/vi/migration_from_next-intl_to_intlayer.md +0 -2
  1128. package/docs/vi/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  1129. package/docs/vi/migration_from_react-i18next_to_intlayer.md +0 -2
  1130. package/docs/vi/migration_from_vue-i18n_to_intlayer.md +0 -2
  1131. package/docs/vi/packages/vite-intlayer/intlayerMinify.md +1 -1
  1132. package/docs/zh/analytics.md +458 -12
  1133. package/docs/zh/configuration.md +99 -1
  1134. package/docs/zh/dictionary/content_file.md +4 -4
  1135. package/docs/zh/dictionary/markdown.md +18 -1
  1136. package/docs/zh/dictionary/plurial.md +6 -3
  1137. package/docs/zh/how_works_intlayer.md +93 -1
  1138. package/docs/zh/interest_of_intlayer.md +108 -13
  1139. package/docs/zh/intlayer_CMS.md +93 -1
  1140. package/docs/zh/intlayer_visual_editor.md +88 -2
  1141. package/docs/zh/intlayer_with_adonisjs.md +121 -1
  1142. package/docs/zh/intlayer_with_analog.md +118 -9
  1143. package/docs/zh/intlayer_with_angular_19.md +117 -10
  1144. package/docs/zh/intlayer_with_angular_21.md +110 -9
  1145. package/docs/zh/intlayer_with_astro.md +108 -4
  1146. package/docs/zh/intlayer_with_astro_lit.md +114 -7
  1147. package/docs/zh/intlayer_with_astro_preact.md +114 -7
  1148. package/docs/zh/intlayer_with_astro_react.md +114 -7
  1149. package/docs/zh/intlayer_with_astro_solid.md +114 -7
  1150. package/docs/zh/intlayer_with_astro_svelte.md +114 -7
  1151. package/docs/zh/intlayer_with_astro_vanilla.md +108 -7
  1152. package/docs/zh/intlayer_with_astro_vue.md +114 -7
  1153. package/docs/zh/intlayer_with_create_react_app.md +110 -6
  1154. package/docs/zh/intlayer_with_elysia.md +121 -1
  1155. package/docs/zh/intlayer_with_express.md +115 -1
  1156. package/docs/zh/intlayer_with_fastify.md +115 -1
  1157. package/docs/zh/intlayer_with_hono.md +115 -1
  1158. package/docs/zh/intlayer_with_htmx.md +769 -0
  1159. package/docs/zh/intlayer_with_lynx+react.md +8 -13
  1160. package/docs/zh/intlayer_with_nestjs.md +115 -1
  1161. package/docs/zh/intlayer_with_nextjs_14.md +120 -45
  1162. package/docs/zh/intlayer_with_nextjs_15.md +121 -44
  1163. package/docs/zh/intlayer_with_nextjs_16.md +121 -42
  1164. package/docs/zh/intlayer_with_nextjs_compiler.md +121 -14
  1165. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +122 -10
  1166. package/docs/zh/intlayer_with_nextjs_page_router.md +110 -94
  1167. package/docs/zh/intlayer_with_nuxt.md +111 -9
  1168. package/docs/zh/intlayer_with_react_native+expo.md +103 -8
  1169. package/docs/zh/intlayer_with_react_router_v7.md +131 -28
  1170. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +134 -30
  1171. package/docs/zh/intlayer_with_solid_start.md +122 -7
  1172. package/docs/zh/intlayer_with_storybook.md +7 -20
  1173. package/docs/zh/intlayer_with_svelte_kit.md +106 -9
  1174. package/docs/zh/intlayer_with_tanstack+solid.md +129 -29
  1175. package/docs/zh/intlayer_with_tanstack.md +251 -191
  1176. package/docs/zh/intlayer_with_vanilla.md +118 -10
  1177. package/docs/zh/intlayer_with_vite+lit.md +121 -8
  1178. package/docs/zh/intlayer_with_vite+preact.md +150 -41
  1179. package/docs/zh/intlayer_with_vite+react.md +104 -12
  1180. package/docs/zh/intlayer_with_vite+react_compiler.md +107 -2
  1181. package/docs/zh/intlayer_with_vite+solid.md +113 -2
  1182. package/docs/zh/intlayer_with_vite+svelte.md +127 -14
  1183. package/docs/zh/intlayer_with_vite+vanilla.md +126 -9
  1184. package/docs/zh/intlayer_with_vite+vue.md +99 -3
  1185. package/docs/zh/introduction.md +105 -2
  1186. package/docs/zh/migration_from_i18next_to_intlayer.md +0 -2
  1187. package/docs/zh/migration_from_next-i18next_to_intlayer.md +0 -2
  1188. package/docs/zh/migration_from_next-intl_to_intlayer.md +0 -2
  1189. package/docs/zh/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  1190. package/docs/zh/migration_from_react-i18next_to_intlayer.md +0 -2
  1191. package/docs/zh/migration_from_vue-i18n_to_intlayer.md +0 -2
  1192. package/docs/zh/packages/vite-intlayer/intlayerMinify.md +1 -1
  1193. package/docs/zh/releases/v6.md +1 -1
  1194. package/docs/zh-TW/introduction.md +0 -1
  1195. package/package.json +7 -7
  1196. package/src/common.ts +45 -18
  1197. package/src/generated/blog.entry.ts +20 -0
  1198. package/src/generated/docs.entry.ts +20 -0
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-04
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-08-30
4
4
  title: "React Router v7 i18n - Complete guide to translate your app"
5
5
  description: "No more i18next. The 2026 guide to building a multilingual (i18n) React Router v7 app. Translate with AI agents and optimise bundle size, SEO and performances."
6
6
  keywords:
@@ -54,7 +54,6 @@ This guide focuses on frontend routing. For fs-routes routing, refer to the [Int
54
54
  Compared to main solutions like `react-i18next` or `i18next`, Intlayer is a solution that comes with integrated optimizations such as:
55
55
 
56
56
  <AccordionGroup>
57
-
58
57
  <Accordion header="Full React Router coverage">
59
58
 
60
59
  Intlayer is optimized to work perfectly with React Router by offering **locale-aware routing**, **middleware for locale detection**, and all the features needed for scaling internationalization (i18n).
@@ -702,8 +701,6 @@ bun run build # Or bun run dev
702
701
  </Tab>
703
702
  </Tabs>
704
703
 
705
- ---
706
-
707
704
  </Step>
708
705
 
709
706
  </Steps>
@@ -772,3 +769,115 @@ To go further, you can implement the [visual editor](https://github.com/aymericz
772
769
  - [Configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md)
773
770
 
774
771
  This comprehensive guide provides everything you need to integrate Intlayer with React Router v7 for a fully internationalised application with locale-aware routing and TypeScript support.
772
+
773
+ ## Frequently Asked Questions
774
+
775
+ <FAQ>
776
+
777
+ <Question title="What are the different solutions available to internationalize a React Router v7 app?">
778
+
779
+ React Router v7 ships no message layer, so you pair it with an i18n library:
780
+
781
+ - **`react-i18next` / `i18next`**: JSON namespaces loaded at runtime, with a separate locale detector to wire into the router.
782
+ - **`react-intl`** and **`Lingui`**: ICU messages with an extraction step.
783
+ - **`Intlayer`**: the most advanced solution. Content declared anywhere in your codebase ([next to each component or centralized](https://intlayer.org/blog/per-component-vs-centralized-i18n)), compiled at build time, typed end to end, with locale aware routing helpers, AI translation, a visual editor and a CMS.
784
+
785
+ See [why Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/interest_of_intlayer.md) and the [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/benchmark/index.md).
786
+
787
+ </Question>
788
+
789
+ <Question title="How much does i18n add to my React Router bundle size?">
790
+
791
+ Much less than a namespace based setup, because a page never downloads a catalogue it does not render. Server rendered markup resolves its content on the server, and the build time compiler replaces `useIntlayer` calls with the exact dictionary entries a component uses, so unused keys and unused languages are dropped, and [dynamic dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dynamic_dictionaries/index.md) split the rest per locale. Measured against the usual alternatives, Intlayer reduces bundle and page size by up to 50%. See [bundle optimization](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/bundle_optimization.md) and the [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/benchmark/index.md).
792
+
793
+ </Question>
794
+
795
+ <Question title="Can I migrate from `react-i18next` or `react-intl` without rewriting my components?">
796
+
797
+ Yes, and there are two paths. You can migrate the content progressively with the [react-i18next migration guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/migration_from_react-i18next_to_intlayer.md) or the [i18next migration guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/migration_from_i18next_to_intlayer.md). Or you can keep your current API entirely: the [compat adapters](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/compat/index.md) expose the exact same API as `react-i18next`, `react-intl` and `i18next`, but served by Intlayer dictionaries, so imports change and component code does not.
798
+
799
+ </Question>
800
+
801
+ <Question title="Can I keep my existing JSON translation files?">
802
+
803
+ Yes. The [sync JSON plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/plugins/sync-json.md) keeps your `/messages/{locale}/{namespace}.json` files as the source of truth and generates Intlayer dictionaries from them, in both directions. A [sync PO plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/plugins/sync-po.md) does the same for gettext catalogues, and [per locale files](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/per_locale_file.md) let you split content by language instead of grouping locales in one file.
804
+
805
+ </Question>
806
+
807
+ <Question title="Do I have to move my content key by key?">
808
+
809
+ No. Run `npx intlayer extract` and Intlayer reads your components, pulls the user facing strings out and writes a `.content` file next to each one, so you review a diff instead of copying strings into a catalogue one at a time. Step 12 of this guide walks through it.
810
+
811
+ For a fully automated pipeline, the [Intlayer Compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/compiler.md) does the same at build time: it scans your JSX, TSX, Vue and Svelte source on every change, generates the dictionaries and keeps them in sync through hot module replacement, so there are no keys to maintain by hand at all.
812
+
813
+ Two limits are worth knowing before you turn the compiler on. It works by static analysis, so strings that only exist at runtime, such as API error codes or CMS fields, stay out of reach. And it has to tell user facing text apart from application logic like `className="active"` or a status code, which needs a few annotations in a large codebase. The [extract command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/cli/extract.md) avoids both by keeping you in the loop.
814
+
815
+ </Question>
816
+
817
+ <Question title="What editor and AI agent tooling is available?">
818
+
819
+ Five pieces, all optional:
820
+
821
+ - **[VS Code extension](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/vs_code_extension.md)**: jump from a `useIntlayer` key to the content file that declares it, extract content from a component, and run build, fill, test, push and pull from the command palette or a dedicated Intlayer tab.
822
+ - **[LSP server](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/lsp.md)**: the same awareness in any editor that speaks LSP, with go to definition, find all references, hover previews of a translated value, autocompletion of keys and fields, and a warning when a key is not declared anywhere. It also resolves `i18next`, `react-i18next`, `next-intl` and `use-intl` calls, which helps while you migrate.
823
+ - **[MCP server](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/mcp_server.md)**: exposes the Intlayer documentation and CLI to Cursor, VS Code, Claude Desktop, Claude Code and ChatGPT, so an assistant answers from current docs instead of guessing, and can run commands such as `intlayer fill` itself.
824
+ - **[Agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/agent_skills.md)**: focused skills such as `intlayer-config`, `intlayer-cli` and `intlayer-content`, plus one per framework, that teach an agent your routing setup and the content node types.
825
+ - **[ESLint plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/eslint.md)**: `no-raw-text` flags hardcoded strings, with further rules for static dictionary keys and unused content.
826
+
827
+ </Question>
828
+
829
+ <Question title="How do I add a locale segment to my routes?">
830
+
831
+ Declare a `:locale` segment on your route tree and let Intlayer resolve it. `validatePrefix` tells you whether the segment is a declared locale, so an unknown prefix returns a 404 instead of rendering a duplicate page, and `getLocalizedUrl` rewrites any path into the target language. If you use file system routes, follow the [file system routes variant](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md) of this guide.
832
+
833
+ </Question>
834
+
835
+ <Question title="Do I have to put the locale in the URL?">
836
+
837
+ No. `routing.mode` accepts `"prefix-no-default"` (the default), `"prefix-all"`, `"no-prefix"` and `"search-params"`, and `routing.domains` maps a locale to its own domain. The locale is persisted in a cookie either way. See the [configuration reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md).
838
+
839
+ </Question>
840
+
841
+ <Question title="Does it work with React Router in framework mode, with SSR and loaders?">
842
+
843
+ Yes. Content resolves during server rendering, and the active locale is available in loaders and actions, so server data can be localized in the same pass as the page. Client navigation keeps the locale without a full reload.
844
+
845
+ </Question>
846
+
847
+ <Question title="How do I add hreflang tags for SEO?">
848
+
849
+ Build the alternates map with `getMultilingualUrls` and emit it from your route `meta` or `links` export, including an `x-default` entry. The same helper feeds a localized `sitemap.xml`.
850
+
851
+ </Question>
852
+
853
+ <Question title="How do I build a language switcher that stays on the current page?">
854
+
855
+ Use `useLocale` for the active and available locales, and `getLocalizedUrl` to translate the current path into the target locale. The user stays on the same route instead of being sent back to the home page, which also avoids losing scroll position and query parameters.
856
+
857
+ </Question>
858
+
859
+ <Question title="How do I translate the app automatically with AI?">
860
+
861
+ Run `npx intlayer fill`, which fills missing translations with the LLM of your choice using your own provider and API key. See the [fill command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/cli/fill.md) and [CI/CD integration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/CI_CD.md).
862
+
863
+ </Question>
864
+
865
+ <Question title="Does Intlayer support plurals, gender and rich text?">
866
+
867
+ Yes: [plural forms](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/plurial.md), [gender based content](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/gender.md), conditions, [insertions](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/insertion.md), [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/markdown.md), and [formatters](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/formatters.md) for numbers, dates and currencies.
868
+
869
+ </Question>
870
+
871
+ <Question title="How can translators edit the content without touching the code?">
872
+
873
+ Through the self hosted [visual editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_visual_editor.md) or the [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_CMS.md), which externalizes content so it can change without a deployment.
874
+
875
+ </Question>
876
+
877
+ <Question title="Is Intlayer free and open source?">
878
+
879
+ Yes, under the Apache 2.0 licence, commercial use included. The hosted CMS is an optional paid service that can also be [self hosted](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/self_hosting.md).
880
+
881
+ </Question>
882
+
883
+ </FAQ>
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-04
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-08-30
4
4
  title: "React Router v7 i18n - Complete guide to translate your app"
5
5
  description: "No more i18next. The 2026 guide to building a multilingual (i18n) React Router v7 app. Translate with AI agents and optimise bundle size, SEO and performances."
6
6
  keywords:
@@ -51,7 +51,6 @@ For client-side routing, refer to the [Intlayer with React Router v7](https://gi
51
51
  Compared to main solutions like `react-i18next` or `i18next`, Intlayer is a solution that comes with integrated optimizations such as:
52
52
 
53
53
  <AccordionGroup>
54
-
55
54
  <Accordion header="Full React Router coverage">
56
55
 
57
56
  Intlayer is optimized to work perfectly with React Router by offering **locale-aware routing**, **middleware for locale detection**, and all the features needed for scaling internationalization (i18n).
@@ -711,8 +710,6 @@ bun run build # Or bun run dev
711
710
  </Tab>
712
711
  </Tabs>
713
712
 
714
- ---
715
-
716
713
  </Step>
717
714
 
718
715
  </Steps>
@@ -781,3 +778,113 @@ To go further, you can implement the [visual editor](https://github.com/aymericz
781
778
  - [Configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md)
782
779
 
783
780
  This comprehensive guide provides everything you need to integrate Intlayer with React Router v7 for a fully internationalised application with locale-aware routing and TypeScript support.
781
+
782
+ ## Frequently Asked Questions
783
+
784
+ <FAQ>
785
+
786
+ <Question title="What are the different solutions available to internationalize a React Router v7 app?">
787
+
788
+ - **`react-i18next` / `i18next`**: JSON namespaces loaded at runtime, with a separate locale detector wired into the router by hand.
789
+ - **`react-intl`** and **`Lingui`**: ICU messages with an extraction step.
790
+ - **`Intlayer`**: the most advanced solution. Content declared anywhere in your codebase ([next to each component or centralized](https://intlayer.org/blog/per-component-vs-centralized-i18n)) and compiled at build time, typed end to end, with locale aware routing helpers, AI translation, a visual editor and a CMS.
791
+
792
+ See [why Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/interest_of_intlayer.md) and the [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/benchmark/index.md).
793
+
794
+ </Question>
795
+
796
+ <Question title="How much does i18n add to my React Router bundle size?">
797
+
798
+ Much less than a namespace based setup, because a page never downloads a catalogue it does not render. Server rendered markup resolves its content on the server, and the build time compiler replaces `useIntlayer` calls with the exact dictionary entries a component uses, so unused keys and unused languages are dropped, and [dynamic dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dynamic_dictionaries/index.md) split the rest per locale. Measured against the usual alternatives, Intlayer reduces bundle and page size by up to 50%. See [bundle optimization](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/bundle_optimization.md) and the [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/benchmark/index.md).
799
+
800
+ </Question>
801
+
802
+ <Question title="Can I migrate from `react-i18next` or `react-intl` without rewriting my components?">
803
+
804
+ Yes, and there are two paths. You can migrate the content progressively with the [react-i18next migration guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/migration_from_react-i18next_to_intlayer.md) or the [i18next migration guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/migration_from_i18next_to_intlayer.md). Or you can keep your current API entirely: the [compat adapters](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/compat/index.md) expose the exact same API as `react-i18next`, `react-intl` and `i18next`, but served by Intlayer dictionaries, so imports change and component code does not.
805
+
806
+ </Question>
807
+
808
+ <Question title="Can I keep my existing JSON translation files?">
809
+
810
+ Yes. The [sync JSON plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/plugins/sync-json.md) keeps your `/messages/{locale}/{namespace}.json` files as the source of truth and generates Intlayer dictionaries from them, in both directions. A [sync PO plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/plugins/sync-po.md) does the same for gettext catalogues, and [per locale files](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/per_locale_file.md) let you split content by language instead of grouping locales in one file.
811
+
812
+ </Question>
813
+
814
+ <Question title="Do I have to move my content key by key?">
815
+
816
+ No. Run `npx intlayer extract` and Intlayer reads your components, pulls the user facing strings out and writes a `.content` file next to each one, so you review a diff instead of copying strings into a catalogue one at a time. Step 11 of this guide walks through it.
817
+
818
+ For a fully automated pipeline, the [Intlayer Compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/compiler.md) does the same at build time: it scans your JSX, TSX, Vue and Svelte source on every change, generates the dictionaries and keeps them in sync through hot module replacement, so there are no keys to maintain by hand at all.
819
+
820
+ Two limits are worth knowing before you turn the compiler on. It works by static analysis, so strings that only exist at runtime, such as API error codes or CMS fields, stay out of reach. And it has to tell user facing text apart from application logic like `className="active"` or a status code, which needs a few annotations in a large codebase. The [extract command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/cli/extract.md) avoids both by keeping you in the loop.
821
+
822
+ </Question>
823
+
824
+ <Question title="What editor and AI agent tooling is available?">
825
+
826
+ Five pieces, all optional:
827
+
828
+ - **[VS Code extension](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/vs_code_extension.md)**: jump from a `useIntlayer` key to the content file that declares it, extract content from a component, and run build, fill, test, push and pull from the command palette or a dedicated Intlayer tab.
829
+ - **[LSP server](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/lsp.md)**: the same awareness in any editor that speaks LSP, with go to definition, find all references, hover previews of a translated value, autocompletion of keys and fields, and a warning when a key is not declared anywhere. It also resolves `i18next`, `react-i18next`, `next-intl` and `use-intl` calls, which helps while you migrate.
830
+ - **[MCP server](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/mcp_server.md)**: exposes the Intlayer documentation and CLI to Cursor, VS Code, Claude Desktop, Claude Code and ChatGPT, so an assistant answers from current docs instead of guessing, and can run commands such as `intlayer fill` itself.
831
+ - **[Agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/agent_skills.md)**: focused skills such as `intlayer-config`, `intlayer-cli` and `intlayer-content`, plus one per framework, that teach an agent your routing setup and the content node types.
832
+ - **[ESLint plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/eslint.md)**: `no-raw-text` flags hardcoded strings, with further rules for static dictionary keys and unused content.
833
+
834
+ </Question>
835
+
836
+ <Question title="What is the difference between this guide and the config based React Router guide?">
837
+
838
+ Only how the routes are declared. This guide uses the file system route conventions, where the locale segment comes from the file names, while the [config based guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_with_react_router_v7.md) declares the same tree in `routes.ts`. The content declarations, the hooks and the configuration are identical in both, so you can switch conventions without touching your i18n.
839
+
840
+ </Question>
841
+
842
+ <Question title="How do I add a locale segment with file system routes?">
843
+
844
+ Steps 4 and 5 cover it: the locale becomes a dynamic segment in the route file names, so every page under it receives the active locale. `validatePrefix` tells you whether that segment is a declared locale, so `/xx/about` returns a real 404 instead of rendering a duplicate page, and `getLocalizedUrl` rewrites any path into the target language.
845
+
846
+ </Question>
847
+
848
+ <Question title="Do I have to put the locale in the URL?">
849
+
850
+ No. `routing.mode` accepts `"prefix-no-default"` (the default), `"prefix-all"`, `"no-prefix"` and `"search-params"`, and `routing.domains` maps each locale to its own domain. See the [configuration reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md).
851
+
852
+ </Question>
853
+
854
+ <Question title="How do I add hreflang tags for SEO?">
855
+
856
+ Build the alternates map with `getMultilingualUrls` and emit it from your route `meta` or `links` export, including an `x-default` entry. The same helper feeds a localized `sitemap.xml`.
857
+
858
+ </Question>
859
+
860
+ <Question title="How do I build a language switcher that stays on the current page?">
861
+
862
+ Step 8 shows the component. `useLocale` exposes the active locale, the declared locales and a setter that persists the choice, while `getLocalizedUrl` rewrites the current path into the target language, so the reader stays on the same route instead of being sent to the home page.
863
+
864
+ </Question>
865
+
866
+ <Question title="How do I translate the app automatically with AI?">
867
+
868
+ Run `npx intlayer fill`. It fills missing translations with the LLM of your choice, using your own provider and API key, and `--git-diff` limits the run to the content changed on the branch. See the [fill command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/cli/fill.md) and [CI/CD integration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/CI_CD.md).
869
+
870
+ </Question>
871
+
872
+ <Question title="Does Intlayer support plurals, gender and rich text?">
873
+
874
+ Yes: [plural forms](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/plurial.md), [gender based content](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/gender.md), conditions, [insertions](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/insertion.md), [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/markdown.md) and [formatters](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/formatters.md) for numbers, dates and currencies.
875
+
876
+ </Question>
877
+
878
+ <Question title="How can translators edit the content without touching the code?">
879
+
880
+ Through the [visual editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_visual_editor.md), which runs on your own infrastructure and lets anyone edit text in place on the running app, or the [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_CMS.md), which externalizes content so it can change without a deployment.
881
+
882
+ </Question>
883
+
884
+ <Question title="Is Intlayer free and open source?">
885
+
886
+ Yes, under the Apache 2.0 licence, commercial use included. The hosted CMS is an optional paid service that can also be [self hosted](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/self_hosting.md).
887
+
888
+ </Question>
889
+
890
+ </FAQ>
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-08-06
3
- updatedAt: 2026-08-06
3
+ updatedAt: 2026-08-30
4
4
  title: "Solid Start i18n - Complete guide to translate your app"
5
5
  description: "No more i18next. The 2026 guide to building a multilingual (i18n) SolidStart app. Server-rendered locale routing, hreflang, sitemap, and AI-assisted translation."
6
6
  keywords:
@@ -69,7 +69,6 @@ This guide covers a **server-rendered** SolidStart application: locale detection
69
69
  Compared to main solutions like `@solid-primitives/i18n` or `i18next`, Intlayer is a solution that comes with integrated optimisations such as:
70
70
 
71
71
  <AccordionGroup>
72
-
73
72
  <Accordion header="Full Solid coverage">
74
73
 
75
74
  Intlayer is optimised to work perfectly with Solid by offering **component-level content scoping**, **reactive translations**, and all the features needed for scaling internationalisation (i18n).
@@ -1088,3 +1087,119 @@ To go further, you can implement the [visual editor](https://github.com/aymericz
1088
1087
  - [useLocale hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/packages/solid-intlayer/useLocale.md)
1089
1088
  - [Content Declaration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dictionary/content_file.md)
1090
1089
  - [Configuration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/configuration.md)
1090
+
1091
+ ## Frequently Asked Questions
1092
+
1093
+ <FAQ>
1094
+
1095
+ <Question title="What are the different solutions available to internationalize a Solid Start app?">
1096
+
1097
+ - **`@solid-primitives/i18n`**: the community primitive, a flat dictionary you assemble, load and type yourself.
1098
+ - **`i18next`** with a Solid wrapper: mature catalogues, but nothing for locale aware routing or server rendering in Solid Start.
1099
+ - **`Intlayer`**: the most advanced solution. Content declared anywhere in your codebase ([next to each component or centralized](https://intlayer.org/blog/per-component-vs-centralized-i18n)) and compiled at build time, with localized routes, server side locale resolution, canonical and hreflang links, a multilingual sitemap, AI translation, a visual editor and a CMS.
1100
+
1101
+ On Solid Start the difference shows in the server pieces, which this guide covers as dedicated steps rather than leaving them to you. See [why Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/interest_of_intlayer.md) and the [Solid i18n benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/benchmark/solid.md).
1102
+
1103
+ </Question>
1104
+
1105
+ <Question title="How much does i18n add to my Solid Start bundle size?">
1106
+
1107
+ Much less than a namespace based setup, because a page never downloads a catalogue it does not render. Server rendered markup resolves its content on the server, and the build time compiler replaces `useIntlayer` calls with the exact dictionary entries a component uses, so unused keys and unused languages are dropped, and [dynamic dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dynamic_dictionaries/index.md) split the rest per locale. Measured against the usual alternatives, Intlayer reduces bundle and page size by up to 50%. See [bundle optimization](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/bundle_optimization.md) and the [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/benchmark/solid.md).
1108
+
1109
+ </Question>
1110
+
1111
+ <Question title="Can I migrate from `@solid-primitives/i18n` or `i18next` without rewriting my components?">
1112
+
1113
+ Largely. Follow the [i18next migration guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/migration_from_i18next_to_intlayer.md) to move the content over. You can also migrate gradually: the [sync JSON plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/plugins/sync-json.md) keeps your existing JSON catalogues as the source of truth and generates Intlayer dictionaries from them, so both layers stay in sync while you move components across one at a time.
1114
+
1115
+ </Question>
1116
+
1117
+ <Question title="Can I keep my existing JSON translation files?">
1118
+
1119
+ Yes. The [sync JSON plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/plugins/sync-json.md) keeps your `/messages/{locale}/{namespace}.json` files as the source of truth and generates Intlayer dictionaries from them, in both directions. A [sync PO plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/plugins/sync-po.md) does the same for gettext catalogues, and [per locale files](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/per_locale_file.md) let you split content by language instead of grouping locales in one file.
1120
+
1121
+ </Question>
1122
+
1123
+ <Question title="Do I have to move my content key by key?">
1124
+
1125
+ No. Run `npx intlayer extract` and Intlayer reads your components, pulls the user facing strings out and writes a `.content` file next to each one, so you review a diff instead of copying strings into a catalogue one at a time. Step 15 of this guide walks through it.
1126
+
1127
+ For a fully automated pipeline, the [Intlayer Compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/compiler.md) does the same at build time: it scans your JSX, TSX, Vue and Svelte source on every change, generates the dictionaries and keeps them in sync through hot module replacement, so there are no keys to maintain by hand at all.
1128
+
1129
+ Two limits are worth knowing before you turn the compiler on. It works by static analysis, so strings that only exist at runtime, such as API error codes or CMS fields, stay out of reach. And it has to tell user facing text apart from application logic like `className="active"` or a status code, which needs a few annotations in a large codebase. The [extract command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/cli/extract.md) avoids both by keeping you in the loop.
1130
+
1131
+ </Question>
1132
+
1133
+ <Question title="What editor and AI agent tooling is available?">
1134
+
1135
+ Five pieces, all optional:
1136
+
1137
+ - **[VS Code extension](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/vs_code_extension.md)**: jump from a `useIntlayer` key to the content file that declares it, extract content from a component, and run build, fill, test, push and pull from the command palette or a dedicated Intlayer tab.
1138
+ - **[LSP server](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/lsp.md)**: the same awareness in any editor that speaks LSP, with go to definition, find all references, hover previews of a translated value, autocompletion of keys and fields, and a warning when a key is not declared anywhere. It also resolves `i18next`, `react-i18next`, `next-intl` and `use-intl` calls, which helps while you migrate.
1139
+ - **[MCP server](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/mcp_server.md)**: exposes the Intlayer documentation and CLI to Cursor, VS Code, Claude Desktop, Claude Code and ChatGPT, so an assistant answers from current docs instead of guessing, and can run commands such as `intlayer fill` itself.
1140
+ - **[Agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/agent_skills.md)**: focused skills such as `intlayer-config`, `intlayer-cli` and `intlayer-content`, plus one per framework, that teach an agent your routing setup and the content node types.
1141
+ - **[ESLint plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/eslint.md)**: `no-raw-text` flags hardcoded strings, with further rules for static dictionary keys and unused content.
1142
+
1143
+ </Question>
1144
+
1145
+ <Question title="Does Intlayer work with Solid Start server side rendering?">
1146
+
1147
+ Yes. Step 6 provides the locale to the application on the server and step 7 sets the `lang` and `dir` attributes there, so the first HTML response already carries the right language, which is what crawlers and social preview bots read.
1148
+
1149
+ </Question>
1150
+
1151
+ <Question title="Does changing the locale re-render my whole app?">
1152
+
1153
+ No. Content is backed by Solid signals, so switching language updates only the DOM nodes that read the changed values, without re-running the components around them.
1154
+
1155
+ </Question>
1156
+
1157
+ <Question title="How do I add canonical and hreflang links?">
1158
+
1159
+ Step 11 covers it. `getMultilingualUrls` builds the alternates for every declared locale, including `x-default`, and step 13 feeds the same data into a multilingual sitemap so every language version of a page links to the others.
1160
+
1161
+ </Question>
1162
+
1163
+ <Question title="How do I handle 404 pages on localized routes?">
1164
+
1165
+ Step 12 covers it. `validatePrefix` tells you whether the locale segment of the URL is a declared locale, so `/xx/about` returns a real 404 instead of being treated as a path and indexed as a duplicate page.
1166
+
1167
+ </Question>
1168
+
1169
+ <Question title="Do I have to put the locale in the URL?">
1170
+
1171
+ No. `routing.mode` accepts `"prefix-no-default"` (the default), `"prefix-all"`, `"no-prefix"` and `"search-params"`, and `routing.domains` maps each locale to its own domain. See the [configuration reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md).
1172
+
1173
+ </Question>
1174
+
1175
+ <Question title="How do I get the locale in a server function?">
1176
+
1177
+ Step 14 covers it. The locale resolved for the request is available inside server functions, so data fetched there can be localized in the same pass instead of being translated again on the client.
1178
+
1179
+ </Question>
1180
+
1181
+ <Question title="How do I translate the app automatically with AI?">
1182
+
1183
+ Run `npx intlayer fill`. It fills missing translations with the LLM of your choice, using your own provider and API key, and `--git-diff` limits the run to the content changed on the branch. See the [fill command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/cli/fill.md) and [CI/CD integration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/CI_CD.md).
1184
+
1185
+ </Question>
1186
+
1187
+ <Question title="Does Intlayer support plurals, gender and rich text?">
1188
+
1189
+ Yes: [plural forms](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/plurial.md), [gender based content](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/gender.md), conditions, [insertions](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/insertion.md), [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/markdown.md) and [formatters](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/formatters.md) for numbers, dates and currencies.
1190
+
1191
+ </Question>
1192
+
1193
+ <Question title="How can translators edit the content without touching the code?">
1194
+
1195
+ Through the [visual editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_visual_editor.md), which runs on your own infrastructure and lets anyone edit text in place on the running app, or the [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_CMS.md), which externalizes content so it can change without a deployment.
1196
+
1197
+ </Question>
1198
+
1199
+ <Question title="Is Intlayer free and open source?">
1200
+
1201
+ Yes, under the Apache 2.0 licence, commercial use included. The hosted CMS is an optional paid service that can also be [self hosted](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/self_hosting.md).
1202
+
1203
+ </Question>
1204
+
1205
+ </FAQ>
@@ -37,7 +37,6 @@ author: aymericzip
37
37
  Compared to main solutions like `storybook-react-i18next` or `i18next`, Intlayer is a solution that comes with integrated optimizations such as:
38
38
 
39
39
  <AccordionGroup>
40
-
41
40
  <Accordion header="Full Storybook coverage">
42
41
 
43
42
  Intlayer is optimized to work perfectly with Storybook by offering **multilingual story decorators**, **locale switching**, and all the features needed for scaling internationalization (i18n) across your design system.
@@ -128,8 +127,6 @@ bun add vite-intlayer --dev
128
127
  | `react-intlayer` | React bindings - `IntlayerProvider`, `useIntlayer` hook |
129
128
  | `vite-intlayer` | Vite plugin - watches and compiles content declaration files |
130
129
 
131
- ---
132
-
133
130
  </Step>
134
131
 
135
132
  <Step number={2} title="Create an Intlayer Configuration">
@@ -159,8 +156,6 @@ export default config;
159
156
 
160
157
  > For the full list of options see the [configuration reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md).
161
158
 
162
- ---
163
-
164
159
  </Step>
165
160
 
166
161
  <Step number={3} title="Add the Vite Plugin to Storybook">
@@ -208,8 +203,6 @@ export default config;
208
203
 
209
204
  The `intlayer()` plugin watches your `*.content.ts` files and rebuilds dictionaries automatically whenever they change during Storybook development.
210
205
 
211
- ---
212
-
213
206
  </Step>
214
207
 
215
208
  <Step number={4} title="Add the `IntlayerProvider` Decorator and a Locale Toolbar">
@@ -294,8 +287,6 @@ bun add intlayer react-intlayer
294
287
  bun add @intlayer/webpack --dev
295
288
  ```
296
289
 
297
- ---
298
-
299
290
  </Step>
300
291
 
301
292
  <Step number={2} title="Create an Intlayer Configuration">
@@ -318,8 +309,6 @@ const config: IntlayerConfig = {
318
309
  export default config;
319
310
  ```
320
311
 
321
- ---
322
-
323
312
  </Step>
324
313
 
325
314
  <Step number={3} title="Configure Storybook's Webpack">
@@ -347,8 +336,6 @@ const config: StorybookConfig = {
347
336
  export default config;
348
337
  ```
349
338
 
350
- ---
351
-
352
339
  </Step>
353
340
 
354
341
  <Step number={4} title="Add the `IntlayerProvider` Decorator and a Locale Toolbar">
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-11-20
3
- updatedAt: 2026-06-23
3
+ updatedAt: 2026-08-30
4
4
  title: "SvelteKit i18n - Complete guide to translate your app"
5
5
  description: "No more i18next. The 2026 guide to building a multilingual (i18n) SvelteKit app. Translate with AI agents and optimise bundle size, SEO and performances."
6
6
  keywords:
@@ -65,7 +65,6 @@ author: aymericzip
65
65
  Compared to main solutions like `svelte-i18n` or `i18next`, Intlayer is a solution that comes with integrated optimizations such as:
66
66
 
67
67
  <AccordionGroup>
68
-
69
68
  <Accordion header="Full SvelteKit coverage">
70
69
 
71
70
  Intlayer is optimized to work perfectly with SvelteKit by offering **multilingual routing**, **SSR support**, and all the features needed for scaling internationalization (i18n).
@@ -787,3 +786,101 @@ It is recommended to ignore the files generated by Intlayer.
787
786
 
788
787
  - **Visual Editor**: Integrate the [Intlayer Visual Editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_visual_editor.md) to edit translations directly from the UI.
789
788
  - **CMS**: Externalise your content management using the [Intlayer CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_CMS.md).
789
+
790
+ ## Frequently Asked Questions
791
+
792
+ <FAQ>
793
+
794
+ <Question title="What are the different solutions available to internationalize a SvelteKit app?">
795
+
796
+ - **`svelte-i18n`** and **`typesafe-i18n`**: store based message catalogues, wired into the load functions by hand.
797
+ - **`Paraglide`**: compiled messages with a strong typing story, focused on the message layer only.
798
+ - **`Intlayer`**: the most advanced solution. Content declared anywhere in your codebase ([next to each component or centralized](https://intlayer.org/blog/per-component-vs-centralized-i18n)) and compiled at build time, with locale aware routing, server side locale detection, AI translation, a visual editor and a CMS.
799
+
800
+ On SvelteKit the difference shows in the server side pieces: locale detection in hooks, localized links and the editor integration come with the library instead of being assembled per project. See [why Intlayer](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/interest_of_intlayer.md) and the [Svelte i18n benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/benchmark/svelte.md).
801
+
802
+ </Question>
803
+
804
+ <Question title="How much does i18n add to my SvelteKit bundle size?">
805
+
806
+ Much less than a namespace based setup, because a page never downloads a catalogue it does not render. Server rendered markup resolves its content on the server, and the build time compiler replaces `useIntlayer` calls with the exact dictionary entries a component uses, so unused keys and unused languages are dropped, and [dynamic dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dynamic_dictionaries/index.md) split the rest per locale. Measured against the usual alternatives, Intlayer reduces bundle and page size by up to 50%. See [bundle optimization](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/bundle_optimization.md) and the [benchmark](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/benchmark/svelte.md).
807
+
808
+ </Question>
809
+
810
+ <Question title="Can I migrate from `svelte-i18n` or `typesafe-i18n` without rewriting my components?">
811
+
812
+ Largely. Follow the [Svelte I18n migration guide](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/compat/svelte-i18n.md) to move the content over. You can also migrate gradually: the [sync JSON plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/plugins/sync-json.md) keeps your existing JSON catalogues as the source of truth and generates Intlayer dictionaries from them, so both layers stay in sync while you move components across one at a time.
813
+
814
+ </Question>
815
+
816
+ <Question title="Can I keep my existing JSON translation files?">
817
+
818
+ Yes. The [sync JSON plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/plugins/sync-json.md) keeps your `/messages/{locale}/{namespace}.json` files as the source of truth and generates Intlayer dictionaries from them, in both directions. A [sync PO plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/plugins/sync-po.md) does the same for gettext catalogues, and [per locale files](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/per_locale_file.md) let you split content by language instead of grouping locales in one file.
819
+
820
+ </Question>
821
+
822
+ <Question title="Do I have to move my content key by key?">
823
+
824
+ No. Run `npx intlayer extract` and Intlayer reads your components, pulls the user facing strings out and writes a `.content` file next to each one, so you review a diff instead of copying strings into a catalogue one at a time. Step 12 of this guide walks through it.
825
+
826
+ For a fully automated pipeline, the [Intlayer Compiler](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/compiler.md) does the same at build time: it scans your JSX, TSX, Vue and Svelte source on every change, generates the dictionaries and keeps them in sync through hot module replacement, so there are no keys to maintain by hand at all.
827
+
828
+ Two limits are worth knowing before you turn the compiler on. It works by static analysis, so strings that only exist at runtime, such as API error codes or CMS fields, stay out of reach. And it has to tell user facing text apart from application logic like `className="active"` or a status code, which needs a few annotations in a large codebase. The [extract command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/cli/extract.md) avoids both by keeping you in the loop.
829
+
830
+ </Question>
831
+
832
+ <Question title="What editor and AI agent tooling is available?">
833
+
834
+ Five pieces, all optional:
835
+
836
+ - **[VS Code extension](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/vs_code_extension.md)**: jump from a `useIntlayer` key to the content file that declares it, extract content from a component, and run build, fill, test, push and pull from the command palette or a dedicated Intlayer tab.
837
+ - **[LSP server](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/lsp.md)**: the same awareness in any editor that speaks LSP, with go to definition, find all references, hover previews of a translated value, autocompletion of keys and fields, and a warning when a key is not declared anywhere. It also resolves `i18next`, `react-i18next`, `next-intl` and `use-intl` calls, which helps while you migrate.
838
+ - **[MCP server](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/mcp_server.md)**: exposes the Intlayer documentation and CLI to Cursor, VS Code, Claude Desktop, Claude Code and ChatGPT, so an assistant answers from current docs instead of guessing, and can run commands such as `intlayer fill` itself.
839
+ - **[Agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/agent_skills.md)**: focused skills such as `intlayer-config`, `intlayer-cli` and `intlayer-content`, plus one per framework, that teach an agent your routing setup and the content node types.
840
+ - **[ESLint plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/eslint.md)**: `no-raw-text` flags hardcoded strings, with further rules for static dictionary keys and unused content.
841
+
842
+ </Question>
843
+
844
+ <Question title="Does Intlayer work with SvelteKit server side rendering and prerendering?">
845
+
846
+ Yes. Step 7 covers server side locale detection in `hooks.server.ts`, so the first HTML response already carries the right language, which is what search engines and social crawlers read. Prerendered routes resolve their content at build time.
847
+
848
+ </Question>
849
+
850
+ <Question title="How do I set up localized routes and internationalized links?">
851
+
852
+ Steps 6 and 8 cover it. A locale segment on the route tree plus `getLocalizedUrl` for links keeps navigation inside the active language, and `routing.mode` decides whether the default locale is prefixed at all. See the [configuration reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md).
853
+
854
+ </Question>
855
+
856
+ <Question title="How do I build a language switcher in Svelte?">
857
+
858
+ Step 9 shows the component. `useLocale` exposes the active locale, the declared locales and a setter that persists the choice in a cookie, while `getLocalizedUrl` rewrites the current path so the reader stays on the same page after switching.
859
+
860
+ </Question>
861
+
862
+ <Question title="How do I translate a SvelteKit app automatically with AI?">
863
+
864
+ Run `npx intlayer fill`, which fills missing translations with the LLM of your choice using your own provider and API key, and `--git-diff` restricts the run to the content changed on the branch. See the [fill command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/cli/fill.md) and [CI/CD integration](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/CI_CD.md).
865
+
866
+ </Question>
867
+
868
+ <Question title="Does Intlayer support plurals, gender and rich text?">
869
+
870
+ Yes: [plural forms](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/plurial.md), [gender based content](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/gender.md), conditions, [insertions](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/insertion.md), [Markdown](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/markdown.md) and [formatters](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/formatters.md) for numbers, dates and currencies.
871
+
872
+ </Question>
873
+
874
+ <Question title="How can translators edit the content without touching the code?">
875
+
876
+ Through the [visual editor](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_visual_editor.md), which runs on your own infrastructure and lets anyone edit text in place on the running app, or the [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/intlayer_CMS.md), which externalizes content so it can change without a deployment.
877
+
878
+ </Question>
879
+
880
+ <Question title="Is Intlayer free and open source?">
881
+
882
+ Yes, under the Apache 2.0 licence, commercial use included. The hosted CMS is an optional paid service that can also be [self hosted](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/self_hosting.md).
883
+
884
+ </Question>
885
+
886
+ </FAQ>