@intlayer/docs 9.4.0-canary.0 → 9.4.1

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 (1444) hide show
  1. package/README.md +3 -0
  2. package/authors.json +1 -1
  3. package/blog/ar/i18n_using_next-i18next.md +52 -13
  4. package/blog/ar/i18n_using_next-intl.md +20 -2
  5. package/blog/de/i18n_using_next-i18next.md +37 -37
  6. package/blog/de/i18n_using_next-intl.md +18 -0
  7. package/blog/en/i18n_using_next-i18next.md +35 -0
  8. package/blog/en/i18n_using_next-intl.md +18 -0
  9. package/blog/en/rag_powered_documentation_assistant.md +4 -1
  10. package/blog/en-GB/i18n_using_next-i18next.md +28 -1
  11. package/blog/en-GB/i18n_using_next-intl.md +18 -0
  12. package/blog/es/i18n_using_next-i18next.md +52 -13
  13. package/blog/es/i18n_using_next-intl.md +18 -0
  14. package/blog/fr/i18n_using_next-i18next.md +27 -0
  15. package/blog/fr/i18n_using_next-intl.md +18 -0
  16. package/blog/hi/i18n_using_next-i18next.md +52 -13
  17. package/blog/hi/i18n_using_next-intl.md +18 -0
  18. package/blog/id/i18n_using_next-i18next.md +40 -13
  19. package/blog/id/i18n_using_next-intl.md +18 -0
  20. package/blog/it/i18n_using_next-i18next.md +40 -13
  21. package/blog/it/i18n_using_next-intl.md +18 -0
  22. package/blog/ja/i18n_using_next-i18next.md +27 -0
  23. package/blog/ja/i18n_using_next-intl.md +18 -0
  24. package/blog/ko/i18n_using_next-i18next.md +40 -13
  25. package/blog/ko/i18n_using_next-intl.md +18 -0
  26. package/blog/pl/i18n_using_next-i18next.md +40 -13
  27. package/blog/pl/i18n_using_next-intl.md +18 -0
  28. package/blog/pt/i18n_using_next-i18next.md +52 -13
  29. package/blog/pt/i18n_using_next-intl.md +18 -0
  30. package/blog/ru/i18n_using_next-i18next.md +37 -37
  31. package/blog/ru/i18n_using_next-intl.md +19 -1
  32. package/blog/tr/i18n_using_next-i18next.md +40 -13
  33. package/blog/tr/i18n_using_next-intl.md +18 -0
  34. package/blog/uk/i18n_using_next-i18next.md +53 -26
  35. package/blog/uk/i18n_using_next-intl.md +30 -12
  36. package/blog/vi/i18n_using_next-i18next.md +40 -13
  37. package/blog/vi/i18n_using_next-intl.md +18 -0
  38. package/blog/zh/i18n_using_next-i18next.md +31 -31
  39. package/blog/zh/i18n_using_next-intl.md +22 -4
  40. package/dist/cjs/authors2.cjs +1 -1
  41. package/dist/cjs/generated/docs.entry.cjs +140 -0
  42. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  43. package/dist/esm/authors2.mjs +1 -1
  44. package/dist/esm/generated/docs.entry.mjs +140 -0
  45. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  46. package/dist/types/generated/docs.entry.d.ts +7 -0
  47. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  48. package/docs/ar/analytics.md +32 -11
  49. package/docs/ar/benchmark/tanstack.md +6 -0
  50. package/docs/ar/cli/ci.md +2 -0
  51. package/docs/ar/cli/doc-review.md +9 -1
  52. package/docs/ar/cli/fill.md +0 -8
  53. package/docs/ar/cli/index.md +2 -0
  54. package/docs/ar/cli/list_projects.md +0 -2
  55. package/docs/ar/cli/login.md +28 -0
  56. package/docs/ar/compiler.md +14 -0
  57. package/docs/ar/configuration.md +7 -8
  58. package/docs/ar/custom_domains.md +33 -0
  59. package/docs/ar/custom_url_rewrites.md +9 -5
  60. package/docs/ar/dictionary/html.md +16 -14
  61. package/docs/ar/dictionary/markdown.md +7 -3
  62. package/docs/ar/dictionary/plurial.md +92 -123
  63. package/docs/ar/dynamic_dictionaries/variants.md +24 -36
  64. package/docs/ar/formatters.md +0 -128
  65. package/docs/ar/how_works_intlayer.md +8 -1
  66. package/docs/ar/interest_of_intlayer.md +16 -0
  67. package/docs/ar/intlayer_visual_editor.md +12 -0
  68. package/docs/ar/intlayer_with_adonisjs.md +5 -3
  69. package/docs/ar/intlayer_with_analog.md +17 -0
  70. package/docs/ar/intlayer_with_angular_19.md +17 -0
  71. package/docs/ar/intlayer_with_angular_21.md +17 -0
  72. package/docs/ar/intlayer_with_astro.md +41 -0
  73. package/docs/ar/intlayer_with_astro_lit.md +17 -0
  74. package/docs/ar/intlayer_with_astro_preact.md +23 -0
  75. package/docs/ar/intlayer_with_astro_react.md +17 -0
  76. package/docs/ar/intlayer_with_astro_solid.md +17 -0
  77. package/docs/ar/intlayer_with_astro_svelte.md +17 -0
  78. package/docs/ar/intlayer_with_astro_vanilla.md +17 -0
  79. package/docs/ar/intlayer_with_astro_vue.md +17 -0
  80. package/docs/ar/intlayer_with_create_react_app.md +55 -119
  81. package/docs/ar/intlayer_with_elysia.md +343 -0
  82. package/docs/ar/intlayer_with_express.md +11 -3
  83. package/docs/ar/intlayer_with_fastify.md +5 -3
  84. package/docs/ar/intlayer_with_hono.md +48 -3
  85. package/docs/ar/intlayer_with_lynx+react.md +30 -0
  86. package/docs/ar/intlayer_with_nestjs.md +19 -3
  87. package/docs/ar/intlayer_with_next-i18next.md +11 -0
  88. package/docs/ar/intlayer_with_nextjs_14.md +233 -36
  89. package/docs/ar/intlayer_with_nextjs_15.md +218 -0
  90. package/docs/ar/intlayer_with_nextjs_16.md +170 -44
  91. package/docs/ar/intlayer_with_nextjs_compiler.md +47 -5
  92. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +159 -4
  93. package/docs/ar/intlayer_with_nextjs_page_router.md +15 -28
  94. package/docs/ar/intlayer_with_nuxt.md +17 -0
  95. package/docs/ar/intlayer_with_react_router_v7.md +47 -0
  96. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +191 -52
  97. package/docs/ar/intlayer_with_solid_start.md +12 -0
  98. package/docs/ar/intlayer_with_storybook.md +17 -0
  99. package/docs/ar/intlayer_with_svelte_kit.md +25 -16
  100. package/docs/ar/intlayer_with_tanstack+solid.md +249 -6
  101. package/docs/ar/intlayer_with_tanstack.md +283 -49
  102. package/docs/ar/intlayer_with_vanilla.md +17 -0
  103. package/docs/ar/intlayer_with_vite+lit.md +21 -0
  104. package/docs/ar/intlayer_with_vite+preact.md +51 -16
  105. package/docs/ar/intlayer_with_vite+react.md +21 -12
  106. package/docs/ar/intlayer_with_vite+react_compiler.md +2 -0
  107. package/docs/ar/intlayer_with_vite+solid.md +28 -48
  108. package/docs/ar/intlayer_with_vite+svelte.md +42 -12
  109. package/docs/ar/intlayer_with_vite+vanilla.md +19 -0
  110. package/docs/ar/intlayer_with_vite+vue.md +32 -14
  111. package/docs/ar/live-sync.md +13 -2
  112. package/docs/ar/packages/elysia-intlayer/exports.md +136 -0
  113. package/docs/ar/packages/elysia-intlayer/intlayer.md +139 -0
  114. package/docs/ar/packages/intlayer/getDictionary.md +155 -0
  115. package/docs/ar/packages/intlayer/getDictionaryAsync.md +166 -0
  116. package/docs/ar/packages/intlayer/getEnumeration.md +2 -0
  117. package/docs/ar/packages/intlayer/getIntlayer.md +197 -0
  118. package/docs/ar/packages/intlayer/getIntlayerAsync.md +141 -0
  119. package/docs/ar/packages/intlayer/getLocaleLang.md +0 -2
  120. package/docs/ar/packages/intlayer/getLocalizedPath.md +33 -7
  121. package/docs/ar/packages/intlayer/getLocalizedUrl.md +14 -30
  122. package/docs/ar/packages/intlayer/getMultilingualUrls.md +6 -2
  123. package/docs/ar/packages/intlayer/getTranslation.md +2 -0
  124. package/docs/ar/packages/next-intlayer/t.md +20 -0
  125. package/docs/ar/packages/next-intlayer/useIntlayer.md +31 -0
  126. package/docs/ar/packages/next-intlayer/useLocale.md +2 -0
  127. package/docs/ar/packages/react-intlayer/useDictionary.md +0 -2
  128. package/docs/ar/packages/react-intlayer/useI18n.md +31 -0
  129. package/docs/ar/packages/react-intlayer/useIntlayer.md +0 -42
  130. package/docs/ar/packages/vite-intlayer/intlayerPrune.md +2 -0
  131. package/docs/ar/per_locale_file.md +13 -13
  132. package/docs/ar/readme.md +1 -0
  133. package/docs/ar/releases/v6.md +16 -2
  134. package/docs/ar/releases/v9.md +2 -0
  135. package/docs/ar/self_hosting.md +67 -24
  136. package/docs/bn/intlayer_with_fastify.md +5 -3
  137. package/docs/bn/intlayer_with_hono.md +5 -3
  138. package/docs/cs/intlayer_with_fastify.md +5 -3
  139. package/docs/cs/intlayer_with_hono.md +5 -3
  140. package/docs/de/analytics.md +32 -11
  141. package/docs/de/benchmark/tanstack.md +6 -0
  142. package/docs/de/cli/ci.md +2 -0
  143. package/docs/de/cli/doc-review.md +9 -1
  144. package/docs/de/cli/fill.md +0 -8
  145. package/docs/de/cli/index.md +2 -0
  146. package/docs/de/cli/init.md +0 -8
  147. package/docs/de/cli/list_projects.md +0 -2
  148. package/docs/de/cli/login.md +28 -0
  149. package/docs/de/compiler.md +14 -0
  150. package/docs/de/configuration.md +7 -8
  151. package/docs/de/custom_domains.md +34 -0
  152. package/docs/de/custom_url_rewrites.md +7 -5
  153. package/docs/de/dictionary/enumeration.md +0 -183
  154. package/docs/de/dictionary/html.md +18 -18
  155. package/docs/de/dictionary/insertion.md +0 -14
  156. package/docs/de/dictionary/markdown.md +31 -14
  157. package/docs/de/dictionary/plurial.md +70 -272
  158. package/docs/de/dynamic_dictionaries/variants.md +24 -0
  159. package/docs/de/formatters.md +12 -39
  160. package/docs/de/how_works_intlayer.md +8 -1
  161. package/docs/de/intlayer_CMS.md +26 -21
  162. package/docs/de/intlayer_visual_editor.md +12 -0
  163. package/docs/de/intlayer_with_adonisjs.md +5 -3
  164. package/docs/de/intlayer_with_astro.md +24 -0
  165. package/docs/de/intlayer_with_astro_preact.md +6 -0
  166. package/docs/de/intlayer_with_create_react_app.md +51 -0
  167. package/docs/de/intlayer_with_elysia.md +343 -0
  168. package/docs/de/intlayer_with_express.md +7 -3
  169. package/docs/de/intlayer_with_fastify.md +5 -3
  170. package/docs/de/intlayer_with_hono.md +5 -3
  171. package/docs/de/intlayer_with_lynx+react.md +13 -26
  172. package/docs/de/intlayer_with_nestjs.md +5 -3
  173. package/docs/de/intlayer_with_next-intl.md +0 -5
  174. package/docs/de/intlayer_with_nextjs_14.md +239 -9
  175. package/docs/de/intlayer_with_nextjs_15.md +200 -0
  176. package/docs/de/intlayer_with_nextjs_16.md +95 -35
  177. package/docs/de/intlayer_with_nextjs_compiler.md +467 -10
  178. package/docs/de/intlayer_with_nextjs_no_locale_path.md +125 -4
  179. package/docs/de/intlayer_with_nextjs_page_router.md +4 -43
  180. package/docs/de/intlayer_with_react_router_v7.md +30 -0
  181. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +102 -12
  182. package/docs/de/intlayer_with_solid_start.md +12 -0
  183. package/docs/de/intlayer_with_svelte_kit.md +6 -0
  184. package/docs/de/intlayer_with_tanstack+solid.md +157 -6
  185. package/docs/de/intlayer_with_tanstack.md +348 -178
  186. package/docs/de/intlayer_with_vite+lit.md +4 -0
  187. package/docs/de/intlayer_with_vite+preact.md +8 -4
  188. package/docs/de/intlayer_with_vite+react.md +4 -2
  189. package/docs/de/intlayer_with_vite+react_compiler.md +2 -0
  190. package/docs/de/intlayer_with_vite+solid.md +11 -12
  191. package/docs/de/intlayer_with_vite+svelte.md +24 -0
  192. package/docs/de/intlayer_with_vite+vanilla.md +2 -0
  193. package/docs/de/intlayer_with_vite+vue.md +15 -2
  194. package/docs/de/live-sync.md +39 -0
  195. package/docs/de/packages/elysia-intlayer/exports.md +136 -0
  196. package/docs/de/packages/elysia-intlayer/intlayer.md +139 -0
  197. package/docs/de/packages/intlayer/getDictionary.md +155 -0
  198. package/docs/de/packages/intlayer/getDictionaryAsync.md +166 -0
  199. package/docs/de/packages/intlayer/getEnumeration.md +2 -0
  200. package/docs/de/packages/intlayer/getIntlayer.md +197 -0
  201. package/docs/de/packages/intlayer/getIntlayerAsync.md +141 -0
  202. package/docs/de/packages/intlayer/getLocalizedPath.md +33 -7
  203. package/docs/de/packages/intlayer/getLocalizedUrl.md +6 -30
  204. package/docs/de/packages/intlayer/getMultilingualUrls.md +6 -2
  205. package/docs/de/packages/intlayer/getTranslation.md +2 -0
  206. package/docs/de/packages/next-intlayer/t.md +20 -0
  207. package/docs/de/packages/next-intlayer/useIntlayer.md +31 -0
  208. package/docs/de/packages/next-intlayer/useLocale.md +2 -0
  209. package/docs/de/packages/react-intlayer/useDictionary.md +0 -2
  210. package/docs/de/packages/react-intlayer/useI18n.md +31 -0
  211. package/docs/de/packages/react-intlayer/useIntlayer.md +0 -42
  212. package/docs/de/packages/solid-intlayer/useRewriteURL.md +0 -2
  213. package/docs/de/packages/vite-intlayer/intlayerPrune.md +2 -0
  214. package/docs/de/per_locale_file.md +13 -13
  215. package/docs/de/readme.md +3 -2
  216. package/docs/de/releases/v6.md +33 -33
  217. package/docs/de/releases/v9.md +2 -0
  218. package/docs/de/self_hosting.md +68 -24
  219. package/docs/en/analytics.md +503 -34
  220. package/docs/en/cli/index.md +2 -0
  221. package/docs/en/cli/login.md +28 -0
  222. package/docs/en/custom_domains.md +39 -2
  223. package/docs/en/dictionary/html.md +16 -16
  224. package/docs/en/dynamic_dictionaries/variants.md +3 -3
  225. package/docs/en/intlayer_with_adonisjs.md +5 -3
  226. package/docs/en/intlayer_with_elysia.md +339 -0
  227. package/docs/en/intlayer_with_express.md +5 -3
  228. package/docs/en/intlayer_with_fastify.md +5 -4
  229. package/docs/en/intlayer_with_hono.md +5 -3
  230. package/docs/en/intlayer_with_nestjs.md +5 -3
  231. package/docs/en/intlayer_with_nextjs_14.md +2 -7
  232. package/docs/en/intlayer_with_nextjs_15.md +5 -5
  233. package/docs/en/intlayer_with_nextjs_16.md +5 -5
  234. package/docs/en/intlayer_with_nextjs_compiler.md +4 -4
  235. package/docs/en/intlayer_with_nextjs_no_locale_path.md +7 -7
  236. package/docs/en/intlayer_with_nextjs_page_router.md +4 -28
  237. package/docs/en/intlayer_with_tanstack+solid.md +157 -6
  238. package/docs/en/intlayer_with_tanstack.md +159 -7
  239. package/docs/en/packages/elysia-intlayer/exports.md +134 -0
  240. package/docs/en/packages/elysia-intlayer/intlayer.md +137 -0
  241. package/docs/en/packages/intlayer/exports.md +19 -14
  242. package/docs/en/packages/intlayer/getDictionary.md +154 -0
  243. package/docs/en/packages/intlayer/getDictionaryAsync.md +166 -0
  244. package/docs/en/packages/intlayer/getIntlayer.md +196 -0
  245. package/docs/en/packages/intlayer/getIntlayerAsync.md +141 -0
  246. package/docs/en/packages/next-intlayer/exports.md +10 -9
  247. package/docs/en/packages/next-intlayer/t.md +2 -4
  248. package/docs/en/packages/next-intlayer/useIntlayer.md +5 -6
  249. package/docs/en/readme.md +1 -0
  250. package/docs/en/self_hosting.md +77 -20
  251. package/docs/en-GB/benchmark/tanstack.md +6 -0
  252. package/docs/en-GB/cli/ci.md +2 -0
  253. package/docs/en-GB/cli/doc-review.md +7 -1
  254. package/docs/en-GB/cli/fill.md +0 -8
  255. package/docs/en-GB/cli/index.md +2 -0
  256. package/docs/en-GB/cli/list_projects.md +0 -2
  257. package/docs/en-GB/cli/login.md +28 -0
  258. package/docs/en-GB/compiler.md +14 -0
  259. package/docs/en-GB/custom_domains.md +34 -0
  260. package/docs/en-GB/custom_url_rewrites.md +7 -5
  261. package/docs/en-GB/dictionary/condition.md +0 -201
  262. package/docs/en-GB/dictionary/content_file.md +0 -3
  263. package/docs/en-GB/dictionary/enumeration.md +0 -183
  264. package/docs/en-GB/dictionary/file.md +0 -166
  265. package/docs/en-GB/dictionary/gender.md +0 -212
  266. package/docs/en-GB/dictionary/html.md +17 -15
  267. package/docs/en-GB/dictionary/insertion.md +0 -4
  268. package/docs/en-GB/dictionary/markdown.md +7 -3
  269. package/docs/en-GB/dictionary/plurial.md +68 -271
  270. package/docs/en-GB/dictionary/translation.md +0 -133
  271. package/docs/en-GB/dynamic_dictionaries/variants.md +24 -0
  272. package/docs/en-GB/formatters.md +0 -164
  273. package/docs/en-GB/how_works_intlayer.md +7 -0
  274. package/docs/en-GB/intlayer_visual_editor.md +12 -0
  275. package/docs/en-GB/intlayer_with_adonisjs.md +5 -3
  276. package/docs/en-GB/intlayer_with_astro.md +24 -0
  277. package/docs/en-GB/intlayer_with_astro_preact.md +6 -0
  278. package/docs/en-GB/intlayer_with_create_react_app.md +10 -78
  279. package/docs/en-GB/intlayer_with_elysia.md +339 -0
  280. package/docs/en-GB/intlayer_with_express.md +11 -3
  281. package/docs/en-GB/intlayer_with_fastify.md +5 -4
  282. package/docs/en-GB/intlayer_with_hono.md +5 -3
  283. package/docs/en-GB/intlayer_with_lynx+react.md +8 -53
  284. package/docs/en-GB/intlayer_with_nestjs.md +5 -3
  285. package/docs/en-GB/intlayer_with_nextjs_14.md +180 -9
  286. package/docs/en-GB/intlayer_with_nextjs_15.md +195 -0
  287. package/docs/en-GB/intlayer_with_nextjs_16.md +225 -0
  288. package/docs/en-GB/intlayer_with_nextjs_compiler.md +165 -5
  289. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +139 -4
  290. package/docs/en-GB/intlayer_with_react_router_v7.md +110 -0
  291. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +260 -63
  292. package/docs/en-GB/intlayer_with_solid_start.md +12 -0
  293. package/docs/en-GB/intlayer_with_svelte_kit.md +109 -4
  294. package/docs/en-GB/intlayer_with_tanstack+solid.md +159 -6
  295. package/docs/en-GB/intlayer_with_tanstack.md +381 -111
  296. package/docs/en-GB/intlayer_with_vite+lit.md +2 -0
  297. package/docs/en-GB/intlayer_with_vite+preact.md +103 -4
  298. package/docs/en-GB/intlayer_with_vite+react.md +109 -0
  299. package/docs/en-GB/intlayer_with_vite+react_compiler.md +2 -0
  300. package/docs/en-GB/intlayer_with_vite+solid.md +80 -17
  301. package/docs/en-GB/intlayer_with_vite+svelte.md +132 -0
  302. package/docs/en-GB/intlayer_with_vite+vanilla.md +2 -0
  303. package/docs/en-GB/intlayer_with_vite+vue.md +168 -23
  304. package/docs/en-GB/live-sync.md +13 -2
  305. package/docs/en-GB/packages/elysia-intlayer/exports.md +134 -0
  306. package/docs/en-GB/packages/elysia-intlayer/intlayer.md +137 -0
  307. package/docs/en-GB/packages/intlayer/getDictionary.md +154 -0
  308. package/docs/en-GB/packages/intlayer/getDictionaryAsync.md +166 -0
  309. package/docs/en-GB/packages/intlayer/getEnumeration.md +2 -0
  310. package/docs/en-GB/packages/intlayer/getIntlayer.md +196 -0
  311. package/docs/en-GB/packages/intlayer/getIntlayerAsync.md +141 -0
  312. package/docs/en-GB/packages/intlayer/getLocalizedPath.md +33 -6
  313. package/docs/en-GB/packages/intlayer/getLocalizedUrl.md +6 -30
  314. package/docs/en-GB/packages/intlayer/getMultilingualUrls.md +14 -2
  315. package/docs/en-GB/packages/next-intlayer/t.md +20 -0
  316. package/docs/en-GB/packages/next-intlayer/useIntlayer.md +31 -4
  317. package/docs/en-GB/packages/next-intlayer/useLocale.md +2 -0
  318. package/docs/en-GB/packages/react-intlayer/useDictionary.md +0 -2
  319. package/docs/en-GB/packages/react-intlayer/useI18n.md +31 -0
  320. package/docs/en-GB/packages/react-intlayer/useIntlayer.md +0 -42
  321. package/docs/en-GB/packages/vite-intlayer/intlayerPrune.md +2 -0
  322. package/docs/en-GB/per_locale_file.md +13 -13
  323. package/docs/en-GB/readme.md +3 -2
  324. package/docs/en-GB/releases/v6.md +30 -28
  325. package/docs/en-GB/self_hosting.md +60 -29
  326. package/docs/es/analytics.md +32 -11
  327. package/docs/es/benchmark/tanstack.md +6 -0
  328. package/docs/es/cli/ci.md +2 -0
  329. package/docs/es/cli/doc-review.md +13 -1
  330. package/docs/es/cli/fill.md +0 -8
  331. package/docs/es/cli/index.md +2 -0
  332. package/docs/es/cli/list_projects.md +0 -2
  333. package/docs/es/cli/login.md +28 -2
  334. package/docs/es/compat/next-intl.md +0 -2
  335. package/docs/es/compiler.md +14 -0
  336. package/docs/es/component_i18n.md +4 -0
  337. package/docs/es/configuration.md +7 -8
  338. package/docs/es/custom_domains.md +34 -0
  339. package/docs/es/custom_url_rewrites.md +7 -5
  340. package/docs/es/dictionary/enumeration.md +0 -154
  341. package/docs/es/dictionary/html.md +16 -16
  342. package/docs/es/dictionary/markdown.md +7 -3
  343. package/docs/es/dictionary/plurial.md +72 -275
  344. package/docs/es/dynamic_dictionaries/variants.md +24 -0
  345. package/docs/es/formatters.md +24 -113
  346. package/docs/es/how_works_intlayer.md +5 -0
  347. package/docs/es/intlayer_CMS.md +16 -8
  348. package/docs/es/intlayer_visual_editor.md +12 -0
  349. package/docs/es/intlayer_with_adonisjs.md +5 -3
  350. package/docs/es/intlayer_with_astro.md +24 -0
  351. package/docs/es/intlayer_with_astro_preact.md +6 -0
  352. package/docs/es/intlayer_with_create_react_app.md +55 -26
  353. package/docs/es/intlayer_with_elysia.md +339 -0
  354. package/docs/es/intlayer_with_express.md +11 -32
  355. package/docs/es/intlayer_with_fastify.md +5 -3
  356. package/docs/es/intlayer_with_hono.md +5 -3
  357. package/docs/es/intlayer_with_lynx+react.md +13 -0
  358. package/docs/es/intlayer_with_nestjs.md +19 -3
  359. package/docs/es/intlayer_with_nextjs_14.md +178 -50
  360. package/docs/es/intlayer_with_nextjs_15.md +197 -0
  361. package/docs/es/intlayer_with_nextjs_16.md +129 -66
  362. package/docs/es/intlayer_with_nextjs_compiler.md +45 -5
  363. package/docs/es/intlayer_with_nextjs_no_locale_path.md +145 -4
  364. package/docs/es/intlayer_with_nextjs_page_router.md +15 -28
  365. package/docs/es/intlayer_with_react_router_v7.md +30 -0
  366. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +28 -28
  367. package/docs/es/intlayer_with_solid_start.md +12 -0
  368. package/docs/es/intlayer_with_svelte_kit.md +6 -0
  369. package/docs/es/intlayer_with_tanstack+solid.md +157 -6
  370. package/docs/es/intlayer_with_tanstack.md +336 -192
  371. package/docs/es/intlayer_with_vite+lit.md +4 -0
  372. package/docs/es/intlayer_with_vite+preact.md +36 -4
  373. package/docs/es/intlayer_with_vite+react.md +2 -0
  374. package/docs/es/intlayer_with_vite+react_compiler.md +2 -0
  375. package/docs/es/intlayer_with_vite+solid.md +11 -36
  376. package/docs/es/intlayer_with_vite+svelte.md +2 -0
  377. package/docs/es/intlayer_with_vite+vanilla.md +2 -0
  378. package/docs/es/intlayer_with_vite+vue.md +15 -2
  379. package/docs/es/live-sync.md +13 -4
  380. package/docs/es/packages/elysia-intlayer/exports.md +134 -0
  381. package/docs/es/packages/elysia-intlayer/intlayer.md +137 -0
  382. package/docs/es/packages/intlayer/getDictionary.md +155 -0
  383. package/docs/es/packages/intlayer/getDictionaryAsync.md +166 -0
  384. package/docs/es/packages/intlayer/getEnumeration.md +2 -0
  385. package/docs/es/packages/intlayer/getIntlayer.md +197 -0
  386. package/docs/es/packages/intlayer/getIntlayerAsync.md +141 -0
  387. package/docs/es/packages/intlayer/getLocalizedPath.md +34 -7
  388. package/docs/es/packages/intlayer/getLocalizedUrl.md +6 -30
  389. package/docs/es/packages/intlayer/getMultilingualUrls.md +14 -2
  390. package/docs/es/packages/intlayer/getTranslation.md +2 -0
  391. package/docs/es/packages/next-intlayer/t.md +20 -0
  392. package/docs/es/packages/next-intlayer/useIntlayer.md +31 -0
  393. package/docs/es/packages/next-intlayer/useLocale.md +2 -0
  394. package/docs/es/packages/react-intlayer/useDictionary.md +0 -2
  395. package/docs/es/packages/react-intlayer/useI18n.md +31 -0
  396. package/docs/es/packages/react-intlayer/useIntlayer.md +0 -42
  397. package/docs/es/packages/solid-intlayer/useRewriteURL.md +0 -2
  398. package/docs/es/packages/vite-intlayer/intlayerPrune.md +2 -0
  399. package/docs/es/per_locale_file.md +13 -13
  400. package/docs/es/readme.md +3 -2
  401. package/docs/es/releases/v6.md +8 -2
  402. package/docs/es/releases/v9.md +2 -0
  403. package/docs/es/self_hosting.md +67 -24
  404. package/docs/fr/CI_CD.md +2 -0
  405. package/docs/fr/analytics.md +54 -11
  406. package/docs/fr/benchmark/tanstack.md +6 -0
  407. package/docs/fr/cli/ci.md +2 -0
  408. package/docs/fr/cli/doc-review.md +7 -1
  409. package/docs/fr/cli/fill.md +0 -8
  410. package/docs/fr/cli/index.md +2 -0
  411. package/docs/fr/cli/list_projects.md +0 -2
  412. package/docs/fr/cli/login.md +28 -0
  413. package/docs/fr/compiler.md +14 -0
  414. package/docs/fr/configuration.md +7 -10
  415. package/docs/fr/custom_domains.md +34 -0
  416. package/docs/fr/custom_url_rewrites.md +7 -5
  417. package/docs/fr/dictionary/condition.md +0 -201
  418. package/docs/fr/dictionary/html.md +17 -17
  419. package/docs/fr/dictionary/markdown.md +7 -3
  420. package/docs/fr/dictionary/plurial.md +79 -110
  421. package/docs/fr/dynamic_dictionaries/variants.md +24 -0
  422. package/docs/fr/formatters.md +0 -106
  423. package/docs/fr/how_works_intlayer.md +5 -2
  424. package/docs/fr/intlayer_CMS.md +26 -21
  425. package/docs/fr/intlayer_visual_editor.md +12 -0
  426. package/docs/fr/intlayer_with_adonisjs.md +5 -3
  427. package/docs/fr/intlayer_with_astro.md +24 -0
  428. package/docs/fr/intlayer_with_create_react_app.md +55 -0
  429. package/docs/fr/intlayer_with_elysia.md +339 -0
  430. package/docs/fr/intlayer_with_express.md +11 -69
  431. package/docs/fr/intlayer_with_fastify.md +5 -3
  432. package/docs/fr/intlayer_with_hono.md +5 -3
  433. package/docs/fr/intlayer_with_lynx+react.md +13 -0
  434. package/docs/fr/intlayer_with_nestjs.md +19 -3
  435. package/docs/fr/intlayer_with_nextjs_14.md +237 -9
  436. package/docs/fr/intlayer_with_nextjs_15.md +179 -8
  437. package/docs/fr/intlayer_with_nextjs_16.md +125 -29
  438. package/docs/fr/intlayer_with_nextjs_compiler.md +45 -5
  439. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +143 -4
  440. package/docs/fr/intlayer_with_nextjs_page_router.md +15 -28
  441. package/docs/fr/intlayer_with_nuxt.md +29 -0
  442. package/docs/fr/intlayer_with_react_router_v7.md +31 -0
  443. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +29 -1
  444. package/docs/fr/intlayer_with_solid_start.md +12 -0
  445. package/docs/fr/intlayer_with_svelte_kit.md +6 -0
  446. package/docs/fr/intlayer_with_tanstack+solid.md +157 -8
  447. package/docs/fr/intlayer_with_tanstack.md +302 -156
  448. package/docs/fr/intlayer_with_vite+lit.md +4 -0
  449. package/docs/fr/intlayer_with_vite+preact.md +36 -4
  450. package/docs/fr/intlayer_with_vite+react.md +2 -0
  451. package/docs/fr/intlayer_with_vite+react_compiler.md +2 -0
  452. package/docs/fr/intlayer_with_vite+solid.md +11 -36
  453. package/docs/fr/intlayer_with_vite+svelte.md +2 -0
  454. package/docs/fr/intlayer_with_vite+vanilla.md +2 -0
  455. package/docs/fr/intlayer_with_vite+vue.md +15 -2
  456. package/docs/fr/live-sync.md +13 -2
  457. package/docs/fr/packages/elysia-intlayer/exports.md +134 -0
  458. package/docs/fr/packages/elysia-intlayer/intlayer.md +137 -0
  459. package/docs/fr/packages/intlayer/getDictionary.md +154 -0
  460. package/docs/fr/packages/intlayer/getDictionaryAsync.md +166 -0
  461. package/docs/fr/packages/intlayer/getEnumeration.md +2 -0
  462. package/docs/fr/packages/intlayer/getIntlayer.md +196 -0
  463. package/docs/fr/packages/intlayer/getIntlayerAsync.md +141 -0
  464. package/docs/fr/packages/intlayer/getLocalizedPath.md +33 -7
  465. package/docs/fr/packages/intlayer/getLocalizedUrl.md +6 -30
  466. package/docs/fr/packages/intlayer/getMultilingualUrls.md +6 -2
  467. package/docs/fr/packages/intlayer/getTranslation.md +2 -0
  468. package/docs/fr/packages/next-intlayer/t.md +20 -0
  469. package/docs/fr/packages/next-intlayer/useIntlayer.md +31 -0
  470. package/docs/fr/packages/next-intlayer/useLocale.md +2 -0
  471. package/docs/fr/packages/react-intlayer/useI18n.md +31 -0
  472. package/docs/fr/packages/react-intlayer/useIntlayer.md +0 -42
  473. package/docs/fr/packages/vite-intlayer/intlayerPrune.md +2 -0
  474. package/docs/fr/per_locale_file.md +13 -13
  475. package/docs/fr/readme.md +3 -2
  476. package/docs/fr/releases/v6.md +8 -2
  477. package/docs/fr/releases/v9.md +2 -0
  478. package/docs/fr/self_hosting.md +67 -24
  479. package/docs/hi/benchmark/tanstack.md +6 -0
  480. package/docs/hi/cli/ci.md +2 -0
  481. package/docs/hi/cli/doc-review.md +10 -2
  482. package/docs/hi/cli/fill.md +0 -8
  483. package/docs/hi/cli/index.md +2 -0
  484. package/docs/hi/cli/list_projects.md +0 -2
  485. package/docs/hi/cli/login.md +28 -0
  486. package/docs/hi/compiler.md +14 -0
  487. package/docs/hi/configuration.md +7 -8
  488. package/docs/hi/custom_domains.md +33 -0
  489. package/docs/hi/custom_url_rewrites.md +7 -5
  490. package/docs/hi/dictionary/content_file.md +0 -2
  491. package/docs/hi/dictionary/html.md +36 -15
  492. package/docs/hi/dictionary/insertion.md +0 -14
  493. package/docs/hi/dictionary/markdown.md +31 -14
  494. package/docs/hi/dictionary/plurial.md +81 -113
  495. package/docs/hi/dynamic_dictionaries/variants.md +24 -0
  496. package/docs/hi/formatters.md +12 -37
  497. package/docs/hi/how_works_intlayer.md +8 -1
  498. package/docs/hi/interest_of_intlayer.md +16 -0
  499. package/docs/hi/intlayer_visual_editor.md +12 -0
  500. package/docs/hi/intlayer_with_adonisjs.md +5 -3
  501. package/docs/hi/intlayer_with_analog.md +17 -0
  502. package/docs/hi/intlayer_with_angular_19.md +20 -0
  503. package/docs/hi/intlayer_with_angular_21.md +17 -0
  504. package/docs/hi/intlayer_with_astro.md +43 -0
  505. package/docs/hi/intlayer_with_astro_lit.md +43 -0
  506. package/docs/hi/intlayer_with_astro_preact.md +49 -0
  507. package/docs/hi/intlayer_with_astro_react.md +43 -0
  508. package/docs/hi/intlayer_with_astro_solid.md +43 -0
  509. package/docs/hi/intlayer_with_astro_svelte.md +43 -0
  510. package/docs/hi/intlayer_with_astro_vanilla.md +43 -0
  511. package/docs/hi/intlayer_with_astro_vue.md +19 -0
  512. package/docs/hi/intlayer_with_create_react_app.md +53 -418
  513. package/docs/hi/intlayer_with_elysia.md +343 -0
  514. package/docs/hi/intlayer_with_express.md +9 -17
  515. package/docs/hi/intlayer_with_fastify.md +5 -3
  516. package/docs/hi/intlayer_with_hono.md +44 -3
  517. package/docs/hi/intlayer_with_lynx+react.md +25 -10
  518. package/docs/hi/intlayer_with_next-i18next.md +21 -0
  519. package/docs/hi/intlayer_with_nextjs_14.md +233 -34
  520. package/docs/hi/intlayer_with_nextjs_15.md +223 -8
  521. package/docs/hi/intlayer_with_nextjs_16.md +134 -10
  522. package/docs/hi/intlayer_with_nextjs_compiler.md +49 -5
  523. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +162 -4
  524. package/docs/hi/intlayer_with_nextjs_page_router.md +28 -35
  525. package/docs/hi/intlayer_with_nuxt.md +46 -0
  526. package/docs/hi/intlayer_with_react_router_v7.md +49 -0
  527. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +161 -45
  528. package/docs/hi/intlayer_with_solid_start.md +12 -0
  529. package/docs/hi/intlayer_with_storybook.md +17 -0
  530. package/docs/hi/intlayer_with_svelte_kit.md +25 -0
  531. package/docs/hi/intlayer_with_tanstack+solid.md +252 -6
  532. package/docs/hi/intlayer_with_tanstack.md +387 -157
  533. package/docs/hi/intlayer_with_vanilla.md +17 -0
  534. package/docs/hi/intlayer_with_vite+lit.md +21 -0
  535. package/docs/hi/intlayer_with_vite+preact.md +32 -99
  536. package/docs/hi/intlayer_with_vite+react.md +23 -7
  537. package/docs/hi/intlayer_with_vite+react_compiler.md +2 -0
  538. package/docs/hi/intlayer_with_vite+solid.md +30 -25
  539. package/docs/hi/intlayer_with_vite+svelte.md +79 -0
  540. package/docs/hi/intlayer_with_vite+vanilla.md +19 -68
  541. package/docs/hi/intlayer_with_vite+vue.md +29 -9
  542. package/docs/hi/live-sync.md +39 -0
  543. package/docs/hi/packages/elysia-intlayer/exports.md +136 -0
  544. package/docs/hi/packages/elysia-intlayer/intlayer.md +139 -0
  545. package/docs/hi/packages/intlayer/getDictionary.md +156 -0
  546. package/docs/hi/packages/intlayer/getDictionaryAsync.md +166 -0
  547. package/docs/hi/packages/intlayer/getEnumeration.md +2 -0
  548. package/docs/hi/packages/intlayer/getIntlayer.md +197 -0
  549. package/docs/hi/packages/intlayer/getIntlayerAsync.md +141 -0
  550. package/docs/hi/packages/intlayer/getLocalizedPath.md +33 -7
  551. package/docs/hi/packages/intlayer/getLocalizedUrl.md +6 -15
  552. package/docs/hi/packages/intlayer/getMultilingualUrls.md +6 -2
  553. package/docs/hi/packages/intlayer/getTranslation.md +2 -0
  554. package/docs/hi/packages/next-intlayer/t.md +20 -31
  555. package/docs/hi/packages/next-intlayer/useIntlayer.md +33 -0
  556. package/docs/hi/packages/next-intlayer/useLocale.md +2 -0
  557. package/docs/hi/packages/react-intlayer/useDictionary.md +0 -2
  558. package/docs/hi/packages/react-intlayer/useI18n.md +31 -0
  559. package/docs/hi/packages/react-intlayer/useIntlayer.md +0 -42
  560. package/docs/hi/packages/vite-intlayer/intlayerPrune.md +2 -0
  561. package/docs/hi/per_locale_file.md +13 -13
  562. package/docs/hi/readme.md +3 -2
  563. package/docs/hi/releases/v6.md +16 -2
  564. package/docs/hi/releases/v9.md +2 -0
  565. package/docs/hi/self_hosting.md +80 -26
  566. package/docs/id/benchmark/tanstack.md +6 -0
  567. package/docs/id/cli/ci.md +2 -0
  568. package/docs/id/cli/doc-review.md +9 -1
  569. package/docs/id/cli/fill.md +0 -8
  570. package/docs/id/cli/index.md +2 -0
  571. package/docs/id/cli/login.md +28 -0
  572. package/docs/id/compiler.md +14 -0
  573. package/docs/id/configuration.md +7 -8
  574. package/docs/id/custom_domains.md +34 -0
  575. package/docs/id/custom_url_rewrites.md +7 -5
  576. package/docs/id/dictionary/content_file.md +0 -29
  577. package/docs/id/dictionary/file.md +0 -166
  578. package/docs/id/dictionary/gender.md +0 -212
  579. package/docs/id/dictionary/html.md +134 -16
  580. package/docs/id/dictionary/insertion.md +0 -14
  581. package/docs/id/dictionary/markdown.md +31 -14
  582. package/docs/id/dictionary/plurial.md +79 -110
  583. package/docs/id/dynamic_dictionaries/variants.md +24 -0
  584. package/docs/id/formatters.md +12 -39
  585. package/docs/id/interest_of_intlayer.md +0 -2
  586. package/docs/id/intlayer_with_adonisjs.md +5 -3
  587. package/docs/id/intlayer_with_astro.md +24 -0
  588. package/docs/id/intlayer_with_astro_preact.md +6 -0
  589. package/docs/id/intlayer_with_create_react_app.md +43 -0
  590. package/docs/id/intlayer_with_elysia.md +343 -0
  591. package/docs/id/intlayer_with_express.md +5 -3
  592. package/docs/id/intlayer_with_fastify.md +5 -3
  593. package/docs/id/intlayer_with_hono.md +44 -3
  594. package/docs/id/intlayer_with_nestjs.md +5 -3
  595. package/docs/id/intlayer_with_nextjs_14.md +126 -7
  596. package/docs/id/intlayer_with_nextjs_15.md +103 -0
  597. package/docs/id/intlayer_with_nextjs_16.md +121 -2
  598. package/docs/id/intlayer_with_nextjs_compiler.md +72 -5
  599. package/docs/id/intlayer_with_nextjs_no_locale_path.md +141 -4
  600. package/docs/id/intlayer_with_nextjs_page_router.md +31 -24
  601. package/docs/id/intlayer_with_react_router_v7.md +30 -0
  602. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +145 -50
  603. package/docs/id/intlayer_with_solid_start.md +12 -0
  604. package/docs/id/intlayer_with_svelte_kit.md +6 -0
  605. package/docs/id/intlayer_with_tanstack+solid.md +232 -6
  606. package/docs/id/intlayer_with_tanstack.md +370 -145
  607. package/docs/id/intlayer_with_vite+lit.md +4 -0
  608. package/docs/id/intlayer_with_vite+preact.md +34 -4
  609. package/docs/id/intlayer_with_vite+react.md +4 -0
  610. package/docs/id/intlayer_with_vite+react_compiler.md +2 -0
  611. package/docs/id/intlayer_with_vite+solid.md +11 -27
  612. package/docs/id/intlayer_with_vite+svelte.md +27 -0
  613. package/docs/id/intlayer_with_vite+vanilla.md +2 -0
  614. package/docs/id/intlayer_with_vite+vue.md +13 -2
  615. package/docs/id/packages/elysia-intlayer/exports.md +136 -0
  616. package/docs/id/packages/elysia-intlayer/intlayer.md +139 -0
  617. package/docs/id/packages/intlayer/getDictionary.md +155 -0
  618. package/docs/id/packages/intlayer/getDictionaryAsync.md +166 -0
  619. package/docs/id/packages/intlayer/getEnumeration.md +2 -0
  620. package/docs/id/packages/intlayer/getIntlayer.md +197 -0
  621. package/docs/id/packages/intlayer/getIntlayerAsync.md +141 -0
  622. package/docs/id/packages/intlayer/getLocalizedPath.md +34 -7
  623. package/docs/id/packages/intlayer/getLocalizedUrl.md +11 -32
  624. package/docs/id/packages/intlayer/getMultilingualUrls.md +14 -2
  625. package/docs/id/packages/intlayer/getTranslation.md +2 -0
  626. package/docs/id/packages/next-intlayer/t.md +20 -0
  627. package/docs/id/packages/next-intlayer/useIntlayer.md +31 -0
  628. package/docs/id/packages/react-intlayer/useDictionary.md +0 -2
  629. package/docs/id/packages/react-intlayer/useI18n.md +31 -0
  630. package/docs/id/packages/react-intlayer/useIntlayer.md +0 -44
  631. package/docs/id/packages/vite-intlayer/intlayerPrune.md +2 -0
  632. package/docs/id/per_locale_file.md +13 -13
  633. package/docs/id/readme.md +3 -2
  634. package/docs/id/self_hosting.md +62 -31
  635. package/docs/it/benchmark/tanstack.md +6 -0
  636. package/docs/it/cli/ci.md +2 -0
  637. package/docs/it/cli/doc-review.md +9 -1
  638. package/docs/it/cli/fill.md +0 -8
  639. package/docs/it/cli/index.md +2 -0
  640. package/docs/it/cli/list_projects.md +0 -2
  641. package/docs/it/cli/login.md +28 -0
  642. package/docs/it/cli/watch.md +0 -2
  643. package/docs/it/compiler.md +14 -0
  644. package/docs/it/configuration.md +7 -8
  645. package/docs/it/custom_domains.md +34 -0
  646. package/docs/it/custom_url_rewrites.md +7 -5
  647. package/docs/it/dictionary/enumeration.md +30 -0
  648. package/docs/it/dictionary/file.md +0 -166
  649. package/docs/it/dictionary/html.md +18 -18
  650. package/docs/it/dictionary/markdown.md +7 -3
  651. package/docs/it/dictionary/plurial.md +70 -273
  652. package/docs/it/dynamic_dictionaries/variants.md +24 -0
  653. package/docs/it/formatters.md +24 -113
  654. package/docs/it/how_works_intlayer.md +8 -1
  655. package/docs/it/intlayer_CMS.md +26 -21
  656. package/docs/it/intlayer_visual_editor.md +12 -0
  657. package/docs/it/intlayer_with_adonisjs.md +5 -3
  658. package/docs/it/intlayer_with_astro.md +24 -0
  659. package/docs/it/intlayer_with_astro_preact.md +6 -0
  660. package/docs/it/intlayer_with_create_react_app.md +57 -38
  661. package/docs/it/intlayer_with_elysia.md +343 -0
  662. package/docs/it/intlayer_with_express.md +9 -3
  663. package/docs/it/intlayer_with_fastify.md +5 -3
  664. package/docs/it/intlayer_with_hono.md +44 -3
  665. package/docs/it/intlayer_with_lynx+react.md +13 -9
  666. package/docs/it/intlayer_with_nestjs.md +5 -3
  667. package/docs/it/intlayer_with_nextjs_14.md +239 -9
  668. package/docs/it/intlayer_with_nextjs_15.md +196 -20
  669. package/docs/it/intlayer_with_nextjs_16.md +106 -2
  670. package/docs/it/intlayer_with_nextjs_compiler.md +47 -5
  671. package/docs/it/intlayer_with_nextjs_no_locale_path.md +140 -4
  672. package/docs/it/intlayer_with_nextjs_page_router.md +6 -28
  673. package/docs/it/intlayer_with_react_router_v7.md +30 -0
  674. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +30 -0
  675. package/docs/it/intlayer_with_solid_start.md +12 -0
  676. package/docs/it/intlayer_with_svelte_kit.md +6 -0
  677. package/docs/it/intlayer_with_tanstack+solid.md +157 -6
  678. package/docs/it/intlayer_with_tanstack.md +321 -171
  679. package/docs/it/intlayer_with_vite+lit.md +4 -0
  680. package/docs/it/intlayer_with_vite+preact.md +36 -4
  681. package/docs/it/intlayer_with_vite+react.md +4 -5
  682. package/docs/it/intlayer_with_vite+react_compiler.md +2 -0
  683. package/docs/it/intlayer_with_vite+solid.md +11 -31
  684. package/docs/it/intlayer_with_vite+svelte.md +27 -0
  685. package/docs/it/intlayer_with_vite+vanilla.md +2 -0
  686. package/docs/it/intlayer_with_vite+vue.md +21 -2
  687. package/docs/it/live-sync.md +13 -2
  688. package/docs/it/packages/elysia-intlayer/exports.md +136 -0
  689. package/docs/it/packages/elysia-intlayer/intlayer.md +139 -0
  690. package/docs/it/packages/intlayer/getDictionary.md +154 -0
  691. package/docs/it/packages/intlayer/getDictionaryAsync.md +166 -0
  692. package/docs/it/packages/intlayer/getEnumeration.md +2 -0
  693. package/docs/it/packages/intlayer/getIntlayer.md +197 -0
  694. package/docs/it/packages/intlayer/getIntlayerAsync.md +141 -0
  695. package/docs/it/packages/intlayer/getLocalizedPath.md +34 -7
  696. package/docs/it/packages/intlayer/getLocalizedUrl.md +6 -30
  697. package/docs/it/packages/intlayer/getMultilingualUrls.md +14 -2
  698. package/docs/it/packages/intlayer/getTranslation.md +2 -0
  699. package/docs/it/packages/next-intlayer/t.md +20 -31
  700. package/docs/it/packages/next-intlayer/useIntlayer.md +31 -0
  701. package/docs/it/packages/next-intlayer/useLocale.md +2 -0
  702. package/docs/it/packages/react-intlayer/useDictionary.md +0 -2
  703. package/docs/it/packages/react-intlayer/useI18n.md +31 -0
  704. package/docs/it/packages/react-intlayer/useIntlayer.md +0 -44
  705. package/docs/it/packages/vite-intlayer/intlayerPrune.md +2 -0
  706. package/docs/it/per_locale_file.md +13 -13
  707. package/docs/it/readme.md +3 -2
  708. package/docs/it/releases/v6.md +16 -2
  709. package/docs/it/releases/v8.md +2 -4
  710. package/docs/it/releases/v9.md +2 -0
  711. package/docs/it/self_hosting.md +61 -30
  712. package/docs/ja/analytics.md +32 -11
  713. package/docs/ja/benchmark/tanstack.md +6 -0
  714. package/docs/ja/cli/build.md +0 -14
  715. package/docs/ja/cli/ci.md +2 -0
  716. package/docs/ja/cli/doc-review.md +8 -0
  717. package/docs/ja/cli/fill.md +0 -8
  718. package/docs/ja/cli/index.md +2 -0
  719. package/docs/ja/cli/list_projects.md +0 -2
  720. package/docs/ja/cli/login.md +28 -0
  721. package/docs/ja/cli/push.md +0 -15
  722. package/docs/ja/compiler.md +14 -0
  723. package/docs/ja/configuration.md +7 -8
  724. package/docs/ja/custom_domains.md +32 -0
  725. package/docs/ja/custom_url_rewrites.md +7 -5
  726. package/docs/ja/dictionary/content_file.md +0 -13
  727. package/docs/ja/dictionary/html.md +19 -17
  728. package/docs/ja/dictionary/plurial.md +81 -115
  729. package/docs/ja/dynamic_dictionaries/variants.md +24 -0
  730. package/docs/ja/formatters.md +0 -164
  731. package/docs/ja/how_works_intlayer.md +7 -0
  732. package/docs/ja/interest_of_intlayer.md +18 -0
  733. package/docs/ja/intlayer_visual_editor.md +13 -1
  734. package/docs/ja/intlayer_with_adonisjs.md +5 -3
  735. package/docs/ja/intlayer_with_analog.md +19 -0
  736. package/docs/ja/intlayer_with_angular_19.md +17 -0
  737. package/docs/ja/intlayer_with_angular_21.md +17 -0
  738. package/docs/ja/intlayer_with_astro.md +41 -0
  739. package/docs/ja/intlayer_with_astro_lit.md +17 -0
  740. package/docs/ja/intlayer_with_astro_preact.md +17 -0
  741. package/docs/ja/intlayer_with_astro_react.md +17 -0
  742. package/docs/ja/intlayer_with_astro_solid.md +17 -0
  743. package/docs/ja/intlayer_with_astro_svelte.md +17 -0
  744. package/docs/ja/intlayer_with_astro_vanilla.md +17 -0
  745. package/docs/ja/intlayer_with_astro_vue.md +17 -0
  746. package/docs/ja/intlayer_with_create_react_app.md +55 -272
  747. package/docs/ja/intlayer_with_elysia.md +343 -0
  748. package/docs/ja/intlayer_with_express.md +11 -3
  749. package/docs/ja/intlayer_with_fastify.md +5 -3
  750. package/docs/ja/intlayer_with_hono.md +44 -3
  751. package/docs/ja/intlayer_with_lynx+react.md +27 -0
  752. package/docs/ja/intlayer_with_nestjs.md +19 -3
  753. package/docs/ja/intlayer_with_nextjs_14.md +198 -90
  754. package/docs/ja/intlayer_with_nextjs_15.md +217 -0
  755. package/docs/ja/intlayer_with_nextjs_16.md +123 -2
  756. package/docs/ja/intlayer_with_nextjs_compiler.md +72 -5
  757. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +169 -6
  758. package/docs/ja/intlayer_with_nextjs_page_router.md +2 -24
  759. package/docs/ja/intlayer_with_nuxt.md +17 -0
  760. package/docs/ja/intlayer_with_react_router_v7.md +147 -27
  761. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +45 -0
  762. package/docs/ja/intlayer_with_solid_start.md +12 -0
  763. package/docs/ja/intlayer_with_storybook.md +17 -0
  764. package/docs/ja/intlayer_with_svelte_kit.md +527 -12
  765. package/docs/ja/intlayer_with_tanstack+solid.md +174 -8
  766. package/docs/ja/intlayer_with_tanstack.md +401 -215
  767. package/docs/ja/intlayer_with_vanilla.md +17 -0
  768. package/docs/ja/intlayer_with_vite+lit.md +21 -0
  769. package/docs/ja/intlayer_with_vite+preact.md +17 -4
  770. package/docs/ja/intlayer_with_vite+react.md +522 -0
  771. package/docs/ja/intlayer_with_vite+react_compiler.md +2 -0
  772. package/docs/ja/intlayer_with_vite+solid.md +28 -42
  773. package/docs/ja/intlayer_with_vite+svelte.md +54 -12
  774. package/docs/ja/intlayer_with_vite+vanilla.md +19 -0
  775. package/docs/ja/intlayer_with_vite+vue.md +32 -5
  776. package/docs/ja/packages/astro-intlayer/exports.md +0 -4
  777. package/docs/ja/packages/elysia-intlayer/exports.md +136 -0
  778. package/docs/ja/packages/elysia-intlayer/intlayer.md +139 -0
  779. package/docs/ja/packages/intlayer/getDictionary.md +155 -0
  780. package/docs/ja/packages/intlayer/getDictionaryAsync.md +166 -0
  781. package/docs/ja/packages/intlayer/getEnumeration.md +2 -0
  782. package/docs/ja/packages/intlayer/getIntlayer.md +197 -0
  783. package/docs/ja/packages/intlayer/getIntlayerAsync.md +141 -0
  784. package/docs/ja/packages/intlayer/getLocalizedPath.md +33 -7
  785. package/docs/ja/packages/intlayer/getLocalizedUrl.md +14 -30
  786. package/docs/ja/packages/intlayer/getMultilingualUrls.md +14 -50
  787. package/docs/ja/packages/intlayer/getPrefix.md +0 -2
  788. package/docs/ja/packages/intlayer/getTranslation.md +2 -0
  789. package/docs/ja/packages/next-intlayer/t.md +20 -0
  790. package/docs/ja/packages/next-intlayer/useIntlayer.md +31 -0
  791. package/docs/ja/packages/next-intlayer/useLocale.md +2 -0
  792. package/docs/ja/packages/react-intlayer/useDictionary.md +0 -2
  793. package/docs/ja/packages/react-intlayer/useI18n.md +31 -0
  794. package/docs/ja/packages/react-intlayer/useIntlayer.md +0 -42
  795. package/docs/ja/packages/vite-intlayer/intlayerPrune.md +2 -0
  796. package/docs/ja/per_locale_file.md +13 -13
  797. package/docs/ja/readme.md +3 -2
  798. package/docs/ja/releases/v6.md +16 -2
  799. package/docs/ja/self_hosting.md +67 -23
  800. package/docs/ko/analytics.md +32 -11
  801. package/docs/ko/benchmark/tanstack.md +6 -0
  802. package/docs/ko/cli/ci.md +2 -0
  803. package/docs/ko/cli/doc-review.md +8 -0
  804. package/docs/ko/cli/fill.md +0 -8
  805. package/docs/ko/cli/index.md +2 -0
  806. package/docs/ko/cli/login.md +28 -0
  807. package/docs/ko/cli/push.md +0 -15
  808. package/docs/ko/compat/next-i18next.md +2 -0
  809. package/docs/ko/compiler.md +14 -0
  810. package/docs/ko/configuration.md +7 -8
  811. package/docs/ko/custom_domains.md +34 -0
  812. package/docs/ko/custom_url_rewrites.md +7 -5
  813. package/docs/ko/dictionary/html.md +3 -1
  814. package/docs/ko/dictionary/markdown.md +7 -3
  815. package/docs/ko/dictionary/plurial.md +79 -111
  816. package/docs/ko/dynamic_dictionaries/variants.md +24 -0
  817. package/docs/ko/formatters.md +0 -184
  818. package/docs/ko/how_works_intlayer.md +7 -0
  819. package/docs/ko/intlayer_visual_editor.md +12 -0
  820. package/docs/ko/intlayer_with_adonisjs.md +5 -3
  821. package/docs/ko/intlayer_with_analog.md +2 -0
  822. package/docs/ko/intlayer_with_astro.md +108 -66
  823. package/docs/ko/intlayer_with_astro_lit.md +110 -66
  824. package/docs/ko/intlayer_with_astro_preact.md +110 -66
  825. package/docs/ko/intlayer_with_astro_react.md +106 -62
  826. package/docs/ko/intlayer_with_astro_solid.md +106 -62
  827. package/docs/ko/intlayer_with_astro_svelte.md +108 -64
  828. package/docs/ko/intlayer_with_astro_vanilla.md +107 -63
  829. package/docs/ko/intlayer_with_astro_vue.md +83 -63
  830. package/docs/ko/intlayer_with_create_react_app.md +53 -2
  831. package/docs/ko/intlayer_with_elysia.md +343 -0
  832. package/docs/ko/intlayer_with_express.md +11 -3
  833. package/docs/ko/intlayer_with_fastify.md +5 -3
  834. package/docs/ko/intlayer_with_hono.md +44 -3
  835. package/docs/ko/intlayer_with_lynx+react.md +51 -0
  836. package/docs/ko/intlayer_with_nestjs.md +19 -3
  837. package/docs/ko/intlayer_with_nextjs_14.md +199 -50
  838. package/docs/ko/intlayer_with_nextjs_15.md +156 -2
  839. package/docs/ko/intlayer_with_nextjs_16.md +107 -0
  840. package/docs/ko/intlayer_with_nextjs_compiler.md +374 -40
  841. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +152 -10
  842. package/docs/ko/intlayer_with_nextjs_page_router.md +13 -79
  843. package/docs/ko/intlayer_with_nuxt.md +29 -29
  844. package/docs/ko/intlayer_with_react_native+expo.md +2 -2
  845. package/docs/ko/intlayer_with_react_router_v7.md +138 -106
  846. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +275 -51
  847. package/docs/ko/intlayer_with_solid_start.md +12 -0
  848. package/docs/ko/intlayer_with_storybook.md +0 -4
  849. package/docs/ko/intlayer_with_svelte_kit.md +38 -32
  850. package/docs/ko/intlayer_with_tanstack+solid.md +159 -8
  851. package/docs/ko/intlayer_with_tanstack.md +379 -182
  852. package/docs/ko/intlayer_with_vanilla.md +0 -2
  853. package/docs/ko/intlayer_with_vite+lit.md +4 -0
  854. package/docs/ko/intlayer_with_vite+preact.md +36 -4
  855. package/docs/ko/intlayer_with_vite+react.md +415 -0
  856. package/docs/ko/intlayer_with_vite+react_compiler.md +2 -2
  857. package/docs/ko/intlayer_with_vite+solid.md +81 -8
  858. package/docs/ko/intlayer_with_vite+svelte.md +132 -99
  859. package/docs/ko/intlayer_with_vite+vanilla.md +2 -2
  860. package/docs/ko/intlayer_with_vite+vue.md +15 -0
  861. package/docs/ko/live-sync.md +0 -2
  862. package/docs/ko/packages/elysia-intlayer/exports.md +136 -0
  863. package/docs/ko/packages/elysia-intlayer/intlayer.md +139 -0
  864. package/docs/ko/packages/express-intlayer/t.md +1 -69
  865. package/docs/ko/packages/intlayer/getDictionary.md +155 -0
  866. package/docs/ko/packages/intlayer/getDictionaryAsync.md +166 -0
  867. package/docs/ko/packages/intlayer/getEnumeration.md +2 -0
  868. package/docs/ko/packages/intlayer/getIntlayer.md +197 -0
  869. package/docs/ko/packages/intlayer/getIntlayerAsync.md +141 -0
  870. package/docs/ko/packages/intlayer/getLocaleLang.md +0 -2
  871. package/docs/ko/packages/intlayer/getLocalizedPath.md +33 -7
  872. package/docs/ko/packages/intlayer/getLocalizedUrl.md +14 -30
  873. package/docs/ko/packages/intlayer/getMultilingualUrls.md +14 -35
  874. package/docs/ko/packages/intlayer/getPrefix.md +0 -2
  875. package/docs/ko/packages/intlayer/getTranslation.md +2 -0
  876. package/docs/ko/packages/next-intlayer/t.md +20 -31
  877. package/docs/ko/packages/next-intlayer/useIntlayer.md +31 -0
  878. package/docs/ko/packages/next-intlayer/useLocale.md +2 -0
  879. package/docs/ko/packages/next-intlayer/usePathname.md +0 -4
  880. package/docs/ko/packages/react-intlayer/useDictionary.md +0 -2
  881. package/docs/ko/packages/react-intlayer/useI18n.md +31 -0
  882. package/docs/ko/packages/react-intlayer/useIntlayer.md +0 -42
  883. package/docs/ko/packages/vite-intlayer/intlayerPrune.md +2 -0
  884. package/docs/ko/per_locale_file.md +13 -13
  885. package/docs/ko/readme.md +3 -2
  886. package/docs/ko/releases/v6.md +16 -2
  887. package/docs/ko/releases/v8.md +2 -4
  888. package/docs/ko/self_hosting.md +61 -30
  889. package/docs/nl/intlayer_with_fastify.md +5 -3
  890. package/docs/nl/intlayer_with_hono.md +5 -3
  891. package/docs/pl/benchmark/tanstack.md +6 -0
  892. package/docs/pl/cli/ci.md +2 -0
  893. package/docs/pl/cli/doc-review.md +9 -1
  894. package/docs/pl/cli/fill.md +0 -8
  895. package/docs/pl/cli/index.md +2 -0
  896. package/docs/pl/cli/list_projects.md +0 -2
  897. package/docs/pl/cli/login.md +28 -0
  898. package/docs/pl/cli/watch.md +0 -2
  899. package/docs/pl/compiler.md +16 -0
  900. package/docs/pl/configuration.md +7 -8
  901. package/docs/pl/custom_domains.md +31 -0
  902. package/docs/pl/custom_url_rewrites.md +7 -5
  903. package/docs/pl/dictionary/file.md +0 -166
  904. package/docs/pl/dictionary/gender.md +0 -2
  905. package/docs/pl/dictionary/html.md +18 -18
  906. package/docs/pl/dictionary/insertion.md +0 -14
  907. package/docs/pl/dictionary/markdown.md +31 -14
  908. package/docs/pl/dictionary/plurial.md +87 -119
  909. package/docs/pl/dynamic_dictionaries/variants.md +24 -0
  910. package/docs/pl/formatters.md +12 -39
  911. package/docs/pl/intlayer_with_adonisjs.md +5 -3
  912. package/docs/pl/intlayer_with_analog.md +17 -0
  913. package/docs/pl/intlayer_with_angular_19.md +17 -0
  914. package/docs/pl/intlayer_with_angular_21.md +17 -0
  915. package/docs/pl/intlayer_with_astro.md +113 -0
  916. package/docs/pl/intlayer_with_astro_lit.md +17 -0
  917. package/docs/pl/intlayer_with_astro_preact.md +23 -0
  918. package/docs/pl/intlayer_with_astro_react.md +17 -0
  919. package/docs/pl/intlayer_with_astro_solid.md +17 -0
  920. package/docs/pl/intlayer_with_astro_svelte.md +17 -0
  921. package/docs/pl/intlayer_with_astro_vanilla.md +17 -0
  922. package/docs/pl/intlayer_with_astro_vue.md +17 -0
  923. package/docs/pl/intlayer_with_create_react_app.md +43 -0
  924. package/docs/pl/intlayer_with_elysia.md +343 -0
  925. package/docs/pl/intlayer_with_express.md +5 -3
  926. package/docs/pl/intlayer_with_fastify.md +5 -3
  927. package/docs/pl/intlayer_with_hono.md +44 -3
  928. package/docs/pl/intlayer_with_lynx+react.md +17 -0
  929. package/docs/pl/intlayer_with_nextjs_14.md +143 -11
  930. package/docs/pl/intlayer_with_nextjs_15.md +117 -4
  931. package/docs/pl/intlayer_with_nextjs_16.md +122 -0
  932. package/docs/pl/intlayer_with_nextjs_compiler.md +47 -5
  933. package/docs/pl/intlayer_with_nextjs_no_locale_path.md +158 -4
  934. package/docs/pl/intlayer_with_nextjs_page_router.md +91 -36
  935. package/docs/pl/intlayer_with_nuxt.md +17 -0
  936. package/docs/pl/intlayer_with_react_router_v7.md +47 -2
  937. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +29 -25
  938. package/docs/pl/intlayer_with_solid_start.md +12 -0
  939. package/docs/pl/intlayer_with_storybook.md +17 -0
  940. package/docs/pl/intlayer_with_svelte_kit.md +23 -0
  941. package/docs/pl/intlayer_with_tanstack+solid.md +249 -6
  942. package/docs/pl/intlayer_with_tanstack.md +415 -151
  943. package/docs/pl/intlayer_with_vanilla.md +17 -0
  944. package/docs/pl/intlayer_with_vite+lit.md +21 -0
  945. package/docs/pl/intlayer_with_vite+preact.md +51 -0
  946. package/docs/pl/intlayer_with_vite+react.md +21 -0
  947. package/docs/pl/intlayer_with_vite+react_compiler.md +2 -0
  948. package/docs/pl/intlayer_with_vite+solid.md +28 -27
  949. package/docs/pl/intlayer_with_vite+svelte.md +42 -0
  950. package/docs/pl/intlayer_with_vite+vanilla.md +19 -0
  951. package/docs/pl/intlayer_with_vite+vue.md +23 -52
  952. package/docs/pl/migration_from_i18next_to_intlayer.md +99 -0
  953. package/docs/pl/migration_from_next-intl_to_intlayer.md +0 -2
  954. package/docs/pl/migration_from_vue-i18n_to_intlayer.md +123 -0
  955. package/docs/pl/packages/elysia-intlayer/exports.md +136 -0
  956. package/docs/pl/packages/elysia-intlayer/intlayer.md +139 -0
  957. package/docs/pl/packages/intlayer/getDictionary.md +154 -0
  958. package/docs/pl/packages/intlayer/getDictionaryAsync.md +166 -0
  959. package/docs/pl/packages/intlayer/getEnumeration.md +2 -0
  960. package/docs/pl/packages/intlayer/getIntlayer.md +197 -0
  961. package/docs/pl/packages/intlayer/getIntlayerAsync.md +141 -0
  962. package/docs/pl/packages/intlayer/getLocalizedPath.md +34 -7
  963. package/docs/pl/packages/intlayer/getLocalizedUrl.md +11 -25
  964. package/docs/pl/packages/intlayer/getMultilingualUrls.md +6 -2
  965. package/docs/pl/packages/intlayer/getTranslation.md +2 -0
  966. package/docs/pl/packages/next-intlayer/t.md +20 -0
  967. package/docs/pl/packages/next-intlayer/useIntlayer.md +6 -0
  968. package/docs/pl/packages/react-intlayer/useDictionary.md +0 -2
  969. package/docs/pl/packages/react-intlayer/useI18n.md +9 -0
  970. package/docs/pl/packages/react-intlayer/useIntlayer.md +0 -41
  971. package/docs/pl/packages/vite-intlayer/intlayerPrune.md +2 -0
  972. package/docs/pl/per_locale_file.md +13 -13
  973. package/docs/pl/readme.md +3 -2
  974. package/docs/pl/releases/v9.md +2 -0
  975. package/docs/pl/self_hosting.md +61 -30
  976. package/docs/pt/benchmark/tanstack.md +6 -0
  977. package/docs/pt/cli/ci.md +2 -0
  978. package/docs/pt/cli/doc-review.md +9 -1
  979. package/docs/pt/cli/fill.md +0 -8
  980. package/docs/pt/cli/index.md +2 -0
  981. package/docs/pt/cli/list_projects.md +0 -6
  982. package/docs/pt/cli/login.md +28 -2
  983. package/docs/pt/cli/watch.md +0 -2
  984. package/docs/pt/compiler.md +16 -0
  985. package/docs/pt/configuration.md +7 -8
  986. package/docs/pt/custom_domains.md +34 -0
  987. package/docs/pt/custom_url_rewrites.md +7 -5
  988. package/docs/pt/dictionary/html.md +20 -18
  989. package/docs/pt/dictionary/insertion.md +0 -14
  990. package/docs/pt/dictionary/markdown.md +31 -14
  991. package/docs/pt/dictionary/plurial.md +70 -273
  992. package/docs/pt/dynamic_dictionaries/variants.md +24 -0
  993. package/docs/pt/formatters.md +24 -137
  994. package/docs/pt/how_works_intlayer.md +5 -0
  995. package/docs/pt/intlayer_CMS.md +26 -21
  996. package/docs/pt/intlayer_visual_editor.md +12 -2
  997. package/docs/pt/intlayer_with_adonisjs.md +5 -3
  998. package/docs/pt/intlayer_with_astro.md +96 -0
  999. package/docs/pt/intlayer_with_astro_lit.md +0 -8
  1000. package/docs/pt/intlayer_with_astro_preact.md +6 -0
  1001. package/docs/pt/intlayer_with_create_react_app.md +55 -35
  1002. package/docs/pt/intlayer_with_elysia.md +344 -0
  1003. package/docs/pt/intlayer_with_express.md +11 -3
  1004. package/docs/pt/intlayer_with_fastify.md +5 -3
  1005. package/docs/pt/intlayer_with_hono.md +44 -3
  1006. package/docs/pt/intlayer_with_lynx+react.md +13 -9
  1007. package/docs/pt/intlayer_with_nestjs.md +19 -3
  1008. package/docs/pt/intlayer_with_nextjs_14.md +237 -7
  1009. package/docs/pt/intlayer_with_nextjs_15.md +200 -0
  1010. package/docs/pt/intlayer_with_nextjs_16.md +105 -0
  1011. package/docs/pt/intlayer_with_nextjs_compiler.md +45 -5
  1012. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +141 -4
  1013. package/docs/pt/intlayer_with_nextjs_page_router.md +4 -28
  1014. package/docs/pt/intlayer_with_react_router_v7.md +37 -30
  1015. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +30 -2
  1016. package/docs/pt/intlayer_with_solid_start.md +12 -0
  1017. package/docs/pt/intlayer_with_svelte_kit.md +6 -0
  1018. package/docs/pt/intlayer_with_tanstack+solid.md +157 -6
  1019. package/docs/pt/intlayer_with_tanstack.md +332 -188
  1020. package/docs/pt/intlayer_with_vite+lit.md +4 -0
  1021. package/docs/pt/intlayer_with_vite+preact.md +34 -0
  1022. package/docs/pt/intlayer_with_vite+react.md +2 -0
  1023. package/docs/pt/intlayer_with_vite+react_compiler.md +2 -0
  1024. package/docs/pt/intlayer_with_vite+solid.md +11 -36
  1025. package/docs/pt/intlayer_with_vite+svelte.md +4 -0
  1026. package/docs/pt/intlayer_with_vite+vanilla.md +2 -0
  1027. package/docs/pt/intlayer_with_vite+vue.md +24 -52
  1028. package/docs/pt/live-sync.md +13 -2
  1029. package/docs/pt/packages/elysia-intlayer/exports.md +136 -0
  1030. package/docs/pt/packages/elysia-intlayer/intlayer.md +139 -0
  1031. package/docs/pt/packages/intlayer/getDictionary.md +155 -0
  1032. package/docs/pt/packages/intlayer/getDictionaryAsync.md +166 -0
  1033. package/docs/pt/packages/intlayer/getEnumeration.md +2 -0
  1034. package/docs/pt/packages/intlayer/getIntlayer.md +197 -0
  1035. package/docs/pt/packages/intlayer/getIntlayerAsync.md +141 -0
  1036. package/docs/pt/packages/intlayer/getLocalizedPath.md +34 -7
  1037. package/docs/pt/packages/intlayer/getLocalizedUrl.md +6 -30
  1038. package/docs/pt/packages/intlayer/getMultilingualUrls.md +14 -2
  1039. package/docs/pt/packages/intlayer/getTranslation.md +2 -0
  1040. package/docs/pt/packages/next-intlayer/t.md +20 -31
  1041. package/docs/pt/packages/next-intlayer/useIntlayer.md +31 -0
  1042. package/docs/pt/packages/next-intlayer/useLocale.md +2 -0
  1043. package/docs/pt/packages/react-intlayer/useDictionary.md +0 -2
  1044. package/docs/pt/packages/react-intlayer/useI18n.md +31 -0
  1045. package/docs/pt/packages/react-intlayer/useIntlayer.md +0 -42
  1046. package/docs/pt/packages/vite-intlayer/intlayerPrune.md +2 -0
  1047. package/docs/pt/per_locale_file.md +13 -13
  1048. package/docs/pt/readme.md +3 -2
  1049. package/docs/pt/releases/v6.md +16 -2
  1050. package/docs/pt/releases/v9.md +2 -0
  1051. package/docs/pt/self_hosting.md +62 -31
  1052. package/docs/ru/analytics.md +32 -11
  1053. package/docs/ru/benchmark/tanstack.md +6 -0
  1054. package/docs/ru/cli/ci.md +2 -0
  1055. package/docs/ru/cli/doc-review.md +7 -1
  1056. package/docs/ru/cli/fill.md +0 -8
  1057. package/docs/ru/cli/index.md +2 -0
  1058. package/docs/ru/cli/list_projects.md +0 -2
  1059. package/docs/ru/cli/login.md +28 -0
  1060. package/docs/ru/cli/watch.md +0 -2
  1061. package/docs/ru/compiler.md +14 -0
  1062. package/docs/ru/configuration.md +7 -8
  1063. package/docs/ru/custom_domains.md +34 -0
  1064. package/docs/ru/custom_url_rewrites.md +7 -5
  1065. package/docs/ru/dictionary/condition.md +0 -163
  1066. package/docs/ru/dictionary/enumeration.md +0 -183
  1067. package/docs/ru/dictionary/file.md +0 -166
  1068. package/docs/ru/dictionary/html.md +16 -14
  1069. package/docs/ru/dictionary/markdown.md +10 -3
  1070. package/docs/ru/dictionary/plurial.md +74 -276
  1071. package/docs/ru/dictionary/translation.md +0 -133
  1072. package/docs/ru/dynamic_dictionaries/variants.md +24 -0
  1073. package/docs/ru/formatters.md +0 -158
  1074. package/docs/ru/how_works_intlayer.md +8 -1
  1075. package/docs/ru/intlayer_visual_editor.md +12 -0
  1076. package/docs/ru/intlayer_with_adonisjs.md +5 -3
  1077. package/docs/ru/intlayer_with_astro.md +24 -0
  1078. package/docs/ru/intlayer_with_astro_lit.md +24 -0
  1079. package/docs/ru/intlayer_with_astro_preact.md +24 -0
  1080. package/docs/ru/intlayer_with_astro_react.md +24 -0
  1081. package/docs/ru/intlayer_with_astro_solid.md +24 -0
  1082. package/docs/ru/intlayer_with_astro_svelte.md +24 -0
  1083. package/docs/ru/intlayer_with_astro_vanilla.md +24 -0
  1084. package/docs/ru/intlayer_with_create_react_app.md +55 -32
  1085. package/docs/ru/intlayer_with_elysia.md +343 -0
  1086. package/docs/ru/intlayer_with_express.md +7 -91
  1087. package/docs/ru/intlayer_with_fastify.md +5 -3
  1088. package/docs/ru/intlayer_with_hono.md +48 -3
  1089. package/docs/ru/intlayer_with_lynx+react.md +13 -0
  1090. package/docs/ru/intlayer_with_nestjs.md +19 -3
  1091. package/docs/ru/intlayer_with_nextjs_14.md +243 -36
  1092. package/docs/ru/intlayer_with_nextjs_15.md +180 -4
  1093. package/docs/ru/intlayer_with_nextjs_16.md +105 -0
  1094. package/docs/ru/intlayer_with_nextjs_compiler.md +47 -5
  1095. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +149 -4
  1096. package/docs/ru/intlayer_with_nextjs_page_router.md +11 -84
  1097. package/docs/ru/intlayer_with_react_router_v7.md +30 -0
  1098. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +30 -2
  1099. package/docs/ru/intlayer_with_solid_start.md +12 -0
  1100. package/docs/ru/intlayer_with_svelte_kit.md +6 -0
  1101. package/docs/ru/intlayer_with_tanstack+solid.md +159 -8
  1102. package/docs/ru/intlayer_with_tanstack.md +342 -170
  1103. package/docs/ru/intlayer_with_vite+lit.md +4 -0
  1104. package/docs/ru/intlayer_with_vite+preact.md +34 -4
  1105. package/docs/ru/intlayer_with_vite+react.md +2 -0
  1106. package/docs/ru/intlayer_with_vite+react_compiler.md +2 -0
  1107. package/docs/ru/intlayer_with_vite+solid.md +11 -27
  1108. package/docs/ru/intlayer_with_vite+svelte.md +29 -0
  1109. package/docs/ru/intlayer_with_vite+vanilla.md +2 -0
  1110. package/docs/ru/intlayer_with_vite+vue.md +10 -2
  1111. package/docs/ru/packages/elysia-intlayer/exports.md +136 -0
  1112. package/docs/ru/packages/elysia-intlayer/intlayer.md +139 -0
  1113. package/docs/ru/packages/intlayer/getDictionary.md +155 -0
  1114. package/docs/ru/packages/intlayer/getDictionaryAsync.md +166 -0
  1115. package/docs/ru/packages/intlayer/getEnumeration.md +2 -0
  1116. package/docs/ru/packages/intlayer/getIntlayer.md +197 -0
  1117. package/docs/ru/packages/intlayer/getIntlayerAsync.md +141 -0
  1118. package/docs/ru/packages/intlayer/getLocalizedPath.md +33 -7
  1119. package/docs/ru/packages/intlayer/getLocalizedUrl.md +6 -30
  1120. package/docs/ru/packages/intlayer/getMultilingualUrls.md +6 -2
  1121. package/docs/ru/packages/intlayer/getTranslation.md +2 -0
  1122. package/docs/ru/packages/next-intlayer/t.md +20 -31
  1123. package/docs/ru/packages/next-intlayer/useIntlayer.md +31 -0
  1124. package/docs/ru/packages/next-intlayer/useLocale.md +2 -0
  1125. package/docs/ru/packages/react-intlayer/useDictionary.md +0 -2
  1126. package/docs/ru/packages/react-intlayer/useI18n.md +31 -0
  1127. package/docs/ru/packages/react-intlayer/useIntlayer.md +0 -42
  1128. package/docs/ru/packages/react-intlayer/useLocale.md +0 -50
  1129. package/docs/ru/packages/vite-intlayer/intlayerPrune.md +2 -0
  1130. package/docs/ru/per_locale_file.md +14 -13
  1131. package/docs/ru/readme.md +3 -2
  1132. package/docs/ru/releases/v6.md +16 -5
  1133. package/docs/ru/releases/v9.md +2 -0
  1134. package/docs/ru/self_hosting.md +61 -30
  1135. package/docs/tr/benchmark/tanstack.md +6 -0
  1136. package/docs/tr/cli/ci.md +2 -0
  1137. package/docs/tr/cli/doc-review.md +7 -1
  1138. package/docs/tr/cli/fill.md +0 -8
  1139. package/docs/tr/cli/index.md +2 -0
  1140. package/docs/tr/cli/list_projects.md +0 -6
  1141. package/docs/tr/cli/login.md +28 -0
  1142. package/docs/tr/cli/watch.md +0 -2
  1143. package/docs/tr/compiler.md +14 -0
  1144. package/docs/tr/configuration.md +7 -8
  1145. package/docs/tr/custom_domains.md +28 -0
  1146. package/docs/tr/custom_url_rewrites.md +7 -5
  1147. package/docs/tr/dictionary/html.md +35 -14
  1148. package/docs/tr/dictionary/markdown.md +31 -14
  1149. package/docs/tr/dictionary/plurial.md +83 -115
  1150. package/docs/tr/dynamic_dictionaries/variants.md +24 -0
  1151. package/docs/tr/formatters.md +0 -145
  1152. package/docs/tr/intlayer_visual_editor.md +12 -0
  1153. package/docs/tr/intlayer_with_adonisjs.md +5 -3
  1154. package/docs/tr/intlayer_with_analog.md +2 -0
  1155. package/docs/tr/intlayer_with_astro.md +107 -0
  1156. package/docs/tr/intlayer_with_astro_lit.md +8 -8
  1157. package/docs/tr/intlayer_with_astro_preact.md +14 -8
  1158. package/docs/tr/intlayer_with_astro_react.md +8 -8
  1159. package/docs/tr/intlayer_with_astro_solid.md +8 -8
  1160. package/docs/tr/intlayer_with_astro_svelte.md +8 -8
  1161. package/docs/tr/intlayer_with_astro_vanilla.md +8 -8
  1162. package/docs/tr/intlayer_with_create_react_app.md +55 -0
  1163. package/docs/tr/intlayer_with_elysia.md +343 -0
  1164. package/docs/tr/intlayer_with_express.md +5 -3
  1165. package/docs/tr/intlayer_with_fastify.md +5 -3
  1166. package/docs/tr/intlayer_with_hono.md +44 -3
  1167. package/docs/tr/intlayer_with_lynx+react.md +8 -0
  1168. package/docs/tr/intlayer_with_nestjs.md +19 -3
  1169. package/docs/tr/intlayer_with_nextjs_14.md +361 -4
  1170. package/docs/tr/intlayer_with_nextjs_15.md +201 -0
  1171. package/docs/tr/intlayer_with_nextjs_16.md +105 -0
  1172. package/docs/tr/intlayer_with_nextjs_compiler.md +72 -5
  1173. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +123 -13
  1174. package/docs/tr/intlayer_with_nextjs_page_router.md +4 -28
  1175. package/docs/tr/intlayer_with_react_router_v7.md +30 -0
  1176. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +30 -2
  1177. package/docs/tr/intlayer_with_solid_start.md +12 -0
  1178. package/docs/tr/intlayer_with_svelte_kit.md +6 -0
  1179. package/docs/tr/intlayer_with_tanstack+solid.md +232 -6
  1180. package/docs/tr/intlayer_with_tanstack.md +351 -157
  1181. package/docs/tr/intlayer_with_vite+lit.md +4 -0
  1182. package/docs/tr/intlayer_with_vite+preact.md +34 -4
  1183. package/docs/tr/intlayer_with_vite+react.md +4 -0
  1184. package/docs/tr/intlayer_with_vite+react_compiler.md +2 -0
  1185. package/docs/tr/intlayer_with_vite+solid.md +11 -27
  1186. package/docs/tr/intlayer_with_vite+svelte.md +29 -0
  1187. package/docs/tr/intlayer_with_vite+vanilla.md +2 -0
  1188. package/docs/tr/intlayer_with_vite+vue.md +15 -42
  1189. package/docs/tr/live-sync.md +13 -2
  1190. package/docs/tr/packages/elysia-intlayer/exports.md +136 -0
  1191. package/docs/tr/packages/elysia-intlayer/intlayer.md +139 -0
  1192. package/docs/tr/packages/intlayer/getDictionary.md +155 -0
  1193. package/docs/tr/packages/intlayer/getDictionaryAsync.md +166 -0
  1194. package/docs/tr/packages/intlayer/getEnumeration.md +2 -0
  1195. package/docs/tr/packages/intlayer/getIntlayer.md +197 -0
  1196. package/docs/tr/packages/intlayer/getIntlayerAsync.md +141 -0
  1197. package/docs/tr/packages/intlayer/getLocalizedPath.md +34 -7
  1198. package/docs/tr/packages/intlayer/getLocalizedUrl.md +11 -0
  1199. package/docs/tr/packages/intlayer/getMultilingualUrls.md +6 -2
  1200. package/docs/tr/packages/intlayer/getTranslation.md +2 -0
  1201. package/docs/tr/packages/next-intlayer/t.md +20 -0
  1202. package/docs/tr/packages/next-intlayer/useIntlayer.md +31 -0
  1203. package/docs/tr/packages/next-intlayer/useLocale.md +2 -0
  1204. package/docs/tr/packages/react-intlayer/useDictionary.md +0 -2
  1205. package/docs/tr/packages/react-intlayer/useI18n.md +31 -0
  1206. package/docs/tr/packages/react-intlayer/useIntlayer.md +0 -42
  1207. package/docs/tr/packages/solid-intlayer/useRewriteURL.md +0 -2
  1208. package/docs/tr/packages/vite-intlayer/intlayerPrune.md +2 -0
  1209. package/docs/tr/per_locale_file.md +13 -13
  1210. package/docs/tr/readme.md +3 -2
  1211. package/docs/tr/releases/v6.md +16 -2
  1212. package/docs/tr/self_hosting.md +68 -25
  1213. package/docs/uk/CI_CD.md +2 -0
  1214. package/docs/uk/benchmark/tanstack.md +6 -0
  1215. package/docs/uk/cli/ci.md +2 -0
  1216. package/docs/uk/cli/doc-review.md +9 -1
  1217. package/docs/uk/cli/fill.md +0 -8
  1218. package/docs/uk/cli/index.md +2 -0
  1219. package/docs/uk/cli/login.md +28 -0
  1220. package/docs/uk/compiler.md +14 -0
  1221. package/docs/uk/configuration.md +7 -8
  1222. package/docs/uk/custom_domains.md +35 -0
  1223. package/docs/uk/custom_url_rewrites.md +7 -5
  1224. package/docs/uk/dictionary/file.md +0 -166
  1225. package/docs/uk/dictionary/gender.md +0 -212
  1226. package/docs/uk/dictionary/html.md +134 -16
  1227. package/docs/uk/dictionary/markdown.md +31 -14
  1228. package/docs/uk/dictionary/plurial.md +85 -116
  1229. package/docs/uk/dynamic_dictionaries/variants.md +24 -0
  1230. package/docs/uk/formatters.md +0 -139
  1231. package/docs/uk/how_works_intlayer.md +2 -0
  1232. package/docs/uk/interest_of_intlayer.md +0 -2
  1233. package/docs/uk/intlayer_with_adonisjs.md +5 -3
  1234. package/docs/uk/intlayer_with_analog.md +2 -0
  1235. package/docs/uk/intlayer_with_astro.md +24 -0
  1236. package/docs/uk/intlayer_with_astro_preact.md +6 -0
  1237. package/docs/uk/intlayer_with_create_react_app.md +43 -0
  1238. package/docs/uk/intlayer_with_elysia.md +343 -0
  1239. package/docs/uk/intlayer_with_express.md +5 -3
  1240. package/docs/uk/intlayer_with_fastify.md +5 -3
  1241. package/docs/uk/intlayer_with_hono.md +44 -3
  1242. package/docs/uk/intlayer_with_lynx+react.md +0 -2
  1243. package/docs/uk/intlayer_with_nestjs.md +5 -3
  1244. package/docs/uk/intlayer_with_nextjs_14.md +126 -7
  1245. package/docs/uk/intlayer_with_nextjs_15.md +102 -242
  1246. package/docs/uk/intlayer_with_nextjs_16.md +105 -0
  1247. package/docs/uk/intlayer_with_nextjs_compiler.md +72 -5
  1248. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +125 -4
  1249. package/docs/uk/intlayer_with_nextjs_page_router.md +4 -28
  1250. package/docs/uk/intlayer_with_nuxt.md +29 -0
  1251. package/docs/uk/intlayer_with_react_router_v7.md +28 -0
  1252. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +30 -2
  1253. package/docs/uk/intlayer_with_solid_start.md +12 -0
  1254. package/docs/uk/intlayer_with_svelte_kit.md +2 -0
  1255. package/docs/uk/intlayer_with_tanstack+solid.md +233 -7
  1256. package/docs/uk/intlayer_with_tanstack.md +381 -159
  1257. package/docs/uk/intlayer_with_vite+lit.md +4 -0
  1258. package/docs/uk/intlayer_with_vite+preact.md +6 -4
  1259. package/docs/uk/intlayer_with_vite+react.md +4 -0
  1260. package/docs/uk/intlayer_with_vite+react_compiler.md +2 -0
  1261. package/docs/uk/intlayer_with_vite+solid.md +11 -27
  1262. package/docs/uk/intlayer_with_vite+svelte.md +4 -0
  1263. package/docs/uk/intlayer_with_vite+vanilla.md +2 -0
  1264. package/docs/uk/intlayer_with_vite+vue.md +8 -2
  1265. package/docs/uk/packages/elysia-intlayer/exports.md +136 -0
  1266. package/docs/uk/packages/elysia-intlayer/intlayer.md +139 -0
  1267. package/docs/uk/packages/intlayer/getDictionary.md +155 -0
  1268. package/docs/uk/packages/intlayer/getDictionaryAsync.md +166 -0
  1269. package/docs/uk/packages/intlayer/getEnumeration.md +2 -0
  1270. package/docs/uk/packages/intlayer/getIntlayer.md +197 -0
  1271. package/docs/uk/packages/intlayer/getIntlayerAsync.md +141 -0
  1272. package/docs/uk/packages/intlayer/getLocalizedPath.md +33 -7
  1273. package/docs/uk/packages/intlayer/getTranslation.md +2 -0
  1274. package/docs/uk/packages/next-intlayer/t.md +20 -2
  1275. package/docs/uk/packages/next-intlayer/useIntlayer.md +31 -0
  1276. package/docs/uk/packages/react-intlayer/useDictionary.md +0 -2
  1277. package/docs/uk/packages/react-intlayer/useI18n.md +31 -0
  1278. package/docs/uk/packages/react-intlayer/useIntlayer.md +0 -42
  1279. package/docs/uk/packages/vite-intlayer/intlayerPrune.md +2 -0
  1280. package/docs/uk/readme.md +3 -2
  1281. package/docs/uk/releases/v8.md +2 -4
  1282. package/docs/uk/releases/v9.md +2 -0
  1283. package/docs/uk/self_hosting.md +61 -29
  1284. package/docs/ur/intlayer_with_fastify.md +5 -3
  1285. package/docs/ur/intlayer_with_hono.md +5 -3
  1286. package/docs/vi/benchmark/tanstack.md +6 -0
  1287. package/docs/vi/cli/ci.md +2 -0
  1288. package/docs/vi/cli/doc-review.md +9 -1
  1289. package/docs/vi/cli/fill.md +0 -8
  1290. package/docs/vi/cli/index.md +2 -0
  1291. package/docs/vi/cli/list_projects.md +0 -2
  1292. package/docs/vi/cli/login.md +28 -2
  1293. package/docs/vi/compiler.md +14 -0
  1294. package/docs/vi/configuration.md +7 -8
  1295. package/docs/vi/custom_domains.md +33 -0
  1296. package/docs/vi/custom_url_rewrites.md +7 -5
  1297. package/docs/vi/dictionary/file.md +0 -166
  1298. package/docs/vi/dictionary/gender.md +0 -2
  1299. package/docs/vi/dictionary/html.md +134 -16
  1300. package/docs/vi/dictionary/insertion.md +0 -14
  1301. package/docs/vi/dictionary/markdown.md +31 -14
  1302. package/docs/vi/dictionary/plurial.md +81 -113
  1303. package/docs/vi/dynamic_dictionaries/variants.md +24 -0
  1304. package/docs/vi/formatters.md +12 -39
  1305. package/docs/vi/interest_of_intlayer.md +0 -2
  1306. package/docs/vi/intlayer_with_adonisjs.md +5 -3
  1307. package/docs/vi/intlayer_with_analog.md +2 -0
  1308. package/docs/vi/intlayer_with_astro.md +24 -0
  1309. package/docs/vi/intlayer_with_astro_preact.md +6 -0
  1310. package/docs/vi/intlayer_with_create_react_app.md +43 -0
  1311. package/docs/vi/intlayer_with_elysia.md +343 -0
  1312. package/docs/vi/intlayer_with_fastify.md +5 -3
  1313. package/docs/vi/intlayer_with_hono.md +44 -3
  1314. package/docs/vi/intlayer_with_nextjs_14.md +126 -7
  1315. package/docs/vi/intlayer_with_nextjs_15.md +137 -147
  1316. package/docs/vi/intlayer_with_nextjs_16.md +105 -0
  1317. package/docs/vi/intlayer_with_nextjs_compiler.md +72 -5
  1318. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +161 -4
  1319. package/docs/vi/intlayer_with_nextjs_page_router.md +67 -29
  1320. package/docs/vi/intlayer_with_nuxt.md +29 -0
  1321. package/docs/vi/intlayer_with_react_router_v7.md +30 -0
  1322. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +147 -52
  1323. package/docs/vi/intlayer_with_solid_start.md +12 -0
  1324. package/docs/vi/intlayer_with_svelte_kit.md +6 -0
  1325. package/docs/vi/intlayer_with_tanstack+solid.md +232 -6
  1326. package/docs/vi/intlayer_with_tanstack.md +412 -167
  1327. package/docs/vi/intlayer_with_vite+lit.md +4 -0
  1328. package/docs/vi/intlayer_with_vite+preact.md +28 -4
  1329. package/docs/vi/intlayer_with_vite+react.md +5 -3
  1330. package/docs/vi/intlayer_with_vite+react_compiler.md +2 -0
  1331. package/docs/vi/intlayer_with_vite+solid.md +11 -27
  1332. package/docs/vi/intlayer_with_vite+svelte.md +27 -0
  1333. package/docs/vi/intlayer_with_vite+vanilla.md +2 -0
  1334. package/docs/vi/intlayer_with_vite+vue.md +13 -2
  1335. package/docs/vi/packages/elysia-intlayer/exports.md +136 -0
  1336. package/docs/vi/packages/elysia-intlayer/intlayer.md +139 -0
  1337. package/docs/vi/packages/intlayer/getDictionary.md +155 -0
  1338. package/docs/vi/packages/intlayer/getDictionaryAsync.md +166 -0
  1339. package/docs/vi/packages/intlayer/getEnumeration.md +2 -0
  1340. package/docs/vi/packages/intlayer/getIntlayer.md +197 -0
  1341. package/docs/vi/packages/intlayer/getIntlayerAsync.md +141 -0
  1342. package/docs/vi/packages/intlayer/getLocalizedPath.md +34 -7
  1343. package/docs/vi/packages/intlayer/getLocalizedUrl.md +11 -32
  1344. package/docs/vi/packages/intlayer/getMultilingualUrls.md +14 -2
  1345. package/docs/vi/packages/intlayer/getTranslation.md +2 -0
  1346. package/docs/vi/packages/next-intlayer/t.md +20 -0
  1347. package/docs/vi/packages/next-intlayer/useIntlayer.md +31 -0
  1348. package/docs/vi/packages/react-intlayer/useDictionary.md +0 -2
  1349. package/docs/vi/packages/react-intlayer/useI18n.md +31 -0
  1350. package/docs/vi/packages/react-intlayer/useIntlayer.md +0 -42
  1351. package/docs/vi/packages/vite-intlayer/intlayerPrune.md +2 -0
  1352. package/docs/vi/per_locale_file.md +13 -13
  1353. package/docs/vi/readme.md +3 -2
  1354. package/docs/vi/self_hosting.md +61 -30
  1355. package/docs/zh/analytics.md +32 -11
  1356. package/docs/zh/benchmark/tanstack.md +6 -0
  1357. package/docs/zh/cli/ci.md +2 -0
  1358. package/docs/zh/cli/doc-review.md +7 -1
  1359. package/docs/zh/cli/fill.md +0 -8
  1360. package/docs/zh/cli/index.md +2 -0
  1361. package/docs/zh/cli/list_projects.md +0 -2
  1362. package/docs/zh/cli/login.md +28 -0
  1363. package/docs/zh/cli/push.md +0 -15
  1364. package/docs/zh/compiler.md +14 -0
  1365. package/docs/zh/configuration.md +7 -8
  1366. package/docs/zh/custom_domains.md +27 -0
  1367. package/docs/zh/custom_url_rewrites.md +7 -5
  1368. package/docs/zh/dictionary/content_file.md +0 -10
  1369. package/docs/zh/dictionary/html.md +16 -14
  1370. package/docs/zh/dictionary/markdown.md +7 -3
  1371. package/docs/zh/dictionary/plurial.md +79 -110
  1372. package/docs/zh/dynamic_dictionaries/variants.md +24 -0
  1373. package/docs/zh/formatters.md +0 -146
  1374. package/docs/zh/how_works_intlayer.md +5 -0
  1375. package/docs/zh/interest_of_intlayer.md +19 -0
  1376. package/docs/zh/intlayer_visual_editor.md +12 -0
  1377. package/docs/zh/intlayer_with_adonisjs.md +5 -3
  1378. package/docs/zh/intlayer_with_analog.md +19 -0
  1379. package/docs/zh/intlayer_with_angular_19.md +17 -0
  1380. package/docs/zh/intlayer_with_angular_21.md +17 -0
  1381. package/docs/zh/intlayer_with_astro.md +18 -2
  1382. package/docs/zh/intlayer_with_astro_lit.md +30 -8
  1383. package/docs/zh/intlayer_with_astro_preact.md +36 -8
  1384. package/docs/zh/intlayer_with_astro_react.md +30 -8
  1385. package/docs/zh/intlayer_with_astro_solid.md +30 -8
  1386. package/docs/zh/intlayer_with_astro_svelte.md +30 -8
  1387. package/docs/zh/intlayer_with_astro_vanilla.md +30 -8
  1388. package/docs/zh/intlayer_with_astro_vue.md +22 -0
  1389. package/docs/zh/intlayer_with_create_react_app.md +10 -2
  1390. package/docs/zh/intlayer_with_elysia.md +343 -0
  1391. package/docs/zh/intlayer_with_express.md +11 -3
  1392. package/docs/zh/intlayer_with_fastify.md +5 -3
  1393. package/docs/zh/intlayer_with_hono.md +5 -3
  1394. package/docs/zh/intlayer_with_lynx+react.md +65 -0
  1395. package/docs/zh/intlayer_with_nestjs.md +19 -3
  1396. package/docs/zh/intlayer_with_nextjs_14.md +123 -111
  1397. package/docs/zh/intlayer_with_nextjs_15.md +181 -0
  1398. package/docs/zh/intlayer_with_nextjs_16.md +104 -0
  1399. package/docs/zh/intlayer_with_nextjs_compiler.md +51 -9
  1400. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +146 -582
  1401. package/docs/zh/intlayer_with_nextjs_page_router.md +14 -27
  1402. package/docs/zh/intlayer_with_nuxt.md +17 -0
  1403. package/docs/zh/intlayer_with_react_router_v7.md +176 -0
  1404. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +105 -4
  1405. package/docs/zh/intlayer_with_solid_start.md +12 -0
  1406. package/docs/zh/intlayer_with_storybook.md +17 -0
  1407. package/docs/zh/intlayer_with_svelte_kit.md +17 -0
  1408. package/docs/zh/intlayer_with_tanstack+solid.md +178 -10
  1409. package/docs/zh/intlayer_with_tanstack.md +369 -162
  1410. package/docs/zh/intlayer_with_vanilla.md +17 -0
  1411. package/docs/zh/intlayer_with_vite+lit.md +19 -0
  1412. package/docs/zh/intlayer_with_vite+preact.md +90 -48
  1413. package/docs/zh/intlayer_with_vite+react.md +19 -0
  1414. package/docs/zh/intlayer_with_vite+solid.md +11 -24
  1415. package/docs/zh/intlayer_with_vite+svelte.md +14 -16
  1416. package/docs/zh/intlayer_with_vite+vanilla.md +17 -0
  1417. package/docs/zh/intlayer_with_vite+vue.md +15 -4
  1418. package/docs/zh/live-sync.md +39 -2
  1419. package/docs/zh/packages/elysia-intlayer/exports.md +136 -0
  1420. package/docs/zh/packages/elysia-intlayer/intlayer.md +139 -0
  1421. package/docs/zh/packages/intlayer/getDictionary.md +155 -0
  1422. package/docs/zh/packages/intlayer/getDictionaryAsync.md +166 -0
  1423. package/docs/zh/packages/intlayer/getEnumeration.md +2 -0
  1424. package/docs/zh/packages/intlayer/getIntlayer.md +197 -0
  1425. package/docs/zh/packages/intlayer/getIntlayerAsync.md +141 -0
  1426. package/docs/zh/packages/intlayer/getLocaleLang.md +0 -2
  1427. package/docs/zh/packages/intlayer/getLocalizedPath.md +33 -7
  1428. package/docs/zh/packages/intlayer/getLocalizedUrl.md +14 -30
  1429. package/docs/zh/packages/intlayer/getMultilingualUrls.md +14 -2
  1430. package/docs/zh/packages/intlayer/getPrefix.md +0 -2
  1431. package/docs/zh/packages/intlayer/getTranslation.md +2 -0
  1432. package/docs/zh/packages/next-intlayer/t.md +20 -0
  1433. package/docs/zh/packages/next-intlayer/useIntlayer.md +32 -0
  1434. package/docs/zh/packages/next-intlayer/useLocale.md +2 -0
  1435. package/docs/zh/packages/react-intlayer/useDictionary.md +0 -2
  1436. package/docs/zh/packages/react-intlayer/useI18n.md +31 -0
  1437. package/docs/zh/packages/react-intlayer/useIntlayer.md +0 -42
  1438. package/docs/zh/packages/vite-intlayer/exports.md +0 -6
  1439. package/docs/zh/packages/vite-intlayer/intlayerPrune.md +2 -0
  1440. package/docs/zh/per_locale_file.md +13 -13
  1441. package/docs/zh/releases/v6.md +16 -2
  1442. package/docs/zh/self_hosting.md +61 -29
  1443. package/package.json +7 -7
  1444. package/src/generated/docs.entry.ts +140 -0
@@ -43,7 +43,7 @@ author: aymericzip
43
43
 
44
44
  | Event | Captured where | What it tells you |
45
45
  | ------------------ | ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- |
46
- | `page_view` | Provider level (`IntlayerProvider`) | Which page and locale a session viewed, on first load, route change, or locale switch. |
46
+ | `page_view` | Provider level (the Intlayer provider) | Which page and locale a session viewed, on first load, route change, or locale switch. |
47
47
  | `content_exposure` | Node level (`useIntlayer` / interpreter plugins) | Which dictionary key / key path was actually resolved and displayed — and, when part of an experiment, which **variant**. |
48
48
  | `conversion` | Wherever you call `useConversion()` | A goal reached (signup, click, purchase…) attributed to the A/B variant the session was exposed to. |
49
49
 
@@ -51,9 +51,9 @@ Events are collected in memory and sent as a **single batched request roughly ev
51
51
 
52
52
  ## How it powers A/B testing on content
53
53
 
54
- Intlayer already lets you declare content [Variants](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/index.md) (e.g. a `hero-banner` dictionary with a `control` and a `black_friday` variant). `@intlayer/analytics` closes the loop:
54
+ Intlayer already lets you declare content [Variants](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/index.md) (e.g. a `hero-banner` dictionary with a default and a `black_friday` variant). `@intlayer/analytics` closes the loop:
55
55
 
56
- 1. `getVariant(experimentKey, variants)` deterministically assigns each anonymous session to a variant — a pure function of the session id and the experiment key, so the assignment is **stable across the session** and requires **no server round-trip** before first render (no flicker, no layout shift).
56
+ 1. `useExperiment(experimentKey, variants)` deterministically assigns each anonymous session to a variant — a pure function of the session id and the experiment key, so the assignment is **stable across the session** and requires **no server round-trip** before first render (no flicker, no layout shift).
57
57
  2. Every `content_exposure` event carries the `variant` that was shown.
58
58
  3. `useConversion()` lets you attribute a goal (e.g. `"cta_click"`) to that variant.
59
59
  4. The dashboard's experiment results endpoint compares conversion rates per variant, including statistical significance (a z-test).
@@ -78,7 +78,7 @@ pnpm add @intlayer/analytics
78
78
  bun add @intlayer/analytics
79
79
  ```
80
80
 
81
- Installing the package is all it takes to turn analytics on: `analytics.enabled` defaults to `true`, and `@intlayer/config` resolves it to `false` whenever the package cannot be found in your project. If you don't install it, every integration point resolves to a no-op — see [Zero-cost when not installed](#zero-cost-when-not-installed) below.
81
+ Installing the package is all it takes to turn analytics on: `analytics.enabled` defaults to `true`, and Intlayer resolves it to `false` whenever the package cannot be found in your project. If you don't install it, every integration point resolves to a no-op — see [Zero-cost when not installed](#zero-cost-when-not-installed) below.
82
82
 
83
83
  ## Configuration
84
84
 
@@ -99,10 +99,26 @@ export default config;
99
99
  ```
100
100
 
101
101
  - `editor.backendURL` — the base URL analytics events are sent to (`POST {backendURL}/api/analytics/events`).
102
- - `editor.clientId` — the public project key attributed to every ingested event. It also acts as an **enable switch**: analytics stays fully disabled (and tree-shaken, see below) until `clientId` is configured.
102
+ - `editor.clientId` — the **public** project key. It identifies the project when the SDK requests an ingest token, and acts as an **enable switch**: analytics stays fully disabled (and tree-shaken, see below) until `clientId` is configured.
103
+ - `editor.clientSecret` — **never used by analytics, and never sent to the browser.** It is a server-only credential; see [How events are authenticated](#how-events-are-authenticated).
103
104
 
104
105
  If you self-host Intlayer, analytics automatically points at your own instance since it shares `editor.backendURL`.
105
106
 
107
+ ### Calling the API from the browser
108
+
109
+ The same token backs a small credential-free client, so a static site or SPA can read its CMS content at runtime with no server, no server action, and no secret in the bundle:
110
+
111
+ ```ts fileName="content.ts"
112
+ import { createPublicClient } from "@intlayer/api/public";
113
+
114
+ const client = createPublicClient();
115
+
116
+ const keys = await client.getDictionaryKeys();
117
+ const [navbar] = await client.getDictionaries(["navbar"]);
118
+ ```
119
+
120
+ It authenticates itself from `editor.clientId` — the exchange, caching and renewal are handled internally. The scopes bound what it can reach: published dictionary content and analytics ingestion. Anything else (pushing dictionaries, reading a project, spending AI credits) needs a real credential, and therefore a server or a signed-in user.
121
+
106
122
  ### Opting out
107
123
 
108
124
  The optional `analytics` block tunes — or turns off — the collection:
@@ -123,70 +139,520 @@ export default config;
123
139
 
124
140
  Uninstalling `@intlayer/analytics` has the same effect as `enabled: false`. See the [Configuration reference](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/configuration.md#analytics-configuration) for the full field list.
125
141
 
126
- ## Framework support
127
-
128
- Analytics is wired into the shared `IntlayerProvider` from `react-intlayer`, so it is available today anywhere that provider is used:
129
-
130
- | Framework | Status |
131
- | -------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
132
- | React | ✅ Available |
133
- | Next.js (`next-intlayer`) | ✅ Available (via `react-intlayer`) |
134
- | React Native / Expo (`react-native-intlayer`) | ✅ Available (via `react-intlayer`) |
135
- | Vue, Svelte, Angular, Solid, Preact, Lit, Astro, Vanilla | 🚧 Planned — same client, provider-level bindings following the `@intlayer/editor` rollout pattern |
136
-
137
142
  ## Usage
138
143
 
139
144
  ### Automatic provider-level tracking
140
145
 
141
- No code changes are required. Once `@intlayer/analytics` is installed and `editor.clientId` is configured, `IntlayerProvider` automatically:
146
+ No code changes are required. Once `@intlayer/analytics` is installed and `editor.clientId` is configured, the Intlayer provider you already mount automatically:
142
147
 
143
148
  - initializes the analytics client on mount,
144
149
  - records a `page_view` on initial load,
145
150
  - records a `page_view` on every locale change,
146
151
  - starts the ~20s flush loop and flushes any remaining events on unmount / tab close (via `navigator.sendBeacon`, falling back to `fetch(..., { keepalive: true })`).
147
152
 
153
+ The entry point differs per framework — but in every case it is the same one you already use to set Intlayer up, so there is nothing extra to add:
154
+
155
+ <Tabs group="framework">
156
+ <Tab label="React" value="react">
157
+
158
+ `IntlayerProvider` mounts the analytics provider internally.
159
+
160
+ ```tsx fileName="App.tsx"
161
+ import { IntlayerProvider } from "react-intlayer";
162
+
163
+ const App = () => (
164
+ <IntlayerProvider>
165
+ <Router />
166
+ </IntlayerProvider>
167
+ );
168
+ ```
169
+
170
+ </Tab>
171
+ <Tab label="Next.js" value="nextjs">
172
+
173
+ `next-intlayer` re-exports React's `IntlayerProvider`, so analytics is wired the same way.
174
+
175
+ ```tsx fileName="app/[locale]/layout.tsx"
176
+ import { IntlayerProvider } from "next-intlayer";
177
+
178
+ const LocaleLayout = ({ children }) => (
179
+ <IntlayerProvider>{children}</IntlayerProvider>
180
+ );
181
+
182
+ export default LocaleLayout;
183
+ ```
184
+
185
+ </Tab>
186
+ <Tab label="Vue" value="vue">
187
+
188
+ The `intlayer` plugin registers the analytics hooks on the root component's lifecycle.
189
+
190
+ ```javascript fileName="main.js"
191
+ import { createApp } from "vue";
192
+ import { intlayer } from "vue-intlayer";
193
+ import App from "./App.vue";
194
+
195
+ const app = createApp(App);
196
+
197
+ app.use(intlayer);
198
+
199
+ app.mount("#app");
200
+ ```
201
+
202
+ > With Nuxt, `nuxt-intlayer` installs the plugin for you — nothing to do.
203
+
204
+ </Tab>
205
+ <Tab label="Svelte" value="svelte">
206
+
207
+ `setupIntlayer()` starts analytics from the component that sets Intlayer up.
208
+
209
+ ```svelte fileName="src/routes/[[locale=locale]]/+layout.svelte"
210
+ <script lang="ts">
211
+ import { setupIntlayer } from "svelte-intlayer";
212
+ import type { Snippet } from "svelte";
213
+
214
+ let { children, data }: { children: Snippet, data: LayoutData } = $props();
215
+
216
+ $effect(() => {
217
+ setupIntlayer(data.locale);
218
+ });
219
+ </script>
220
+
221
+ {@render children()}
222
+ ```
223
+
224
+ </Tab>
225
+ <Tab label="Preact" value="preact">
226
+
227
+ `IntlayerProvider` mounts the analytics provider internally.
228
+
229
+ ```tsx fileName="app.tsx"
230
+ import { IntlayerProvider } from "preact-intlayer";
231
+
232
+ const App = () => (
233
+ <IntlayerProvider>
234
+ <Router />
235
+ </IntlayerProvider>
236
+ );
237
+ ```
238
+
239
+ </Tab>
240
+ <Tab label="Solid" value="solid">
241
+
242
+ `IntlayerProvider` lazily mounts the analytics provider, so the chunk stays off the critical path.
243
+
244
+ ```tsx fileName="App.tsx"
245
+ import { IntlayerProvider } from "solid-intlayer";
246
+
247
+ const App = () => (
248
+ <IntlayerProvider>
249
+ <Router />
250
+ </IntlayerProvider>
251
+ );
252
+ ```
253
+
254
+ </Tab>
255
+ <Tab label="Angular" value="angular">
256
+
257
+ `provideIntlayer()` already includes `provideIntlayerAnalytics()`.
258
+
259
+ ```ts fileName="app.config.ts"
260
+ import { provideIntlayer } from "angular-intlayer";
261
+ import type { ApplicationConfig } from "@angular/core";
262
+
263
+ export const appConfig: ApplicationConfig = {
264
+ providers: [provideIntlayer()],
265
+ };
266
+ ```
267
+
268
+ > Use `provideIntlayerAnalytics()` on its own only if you manage providers individually.
269
+
270
+ </Tab>
271
+ </Tabs>
272
+
148
273
  ### Automatic node-level tracking
149
274
 
150
275
  Every time `useIntlayer` resolves a piece of content for display, the interpreter reports a `content_exposure` event for that exact `dictionaryKey` + key path + locale — again, no code changes required. Repeated exposures of the same node within a flush window are coalesced into a single event with a `count`, so a list re-rendering 50 times doesn't send 50 events.
151
276
 
152
277
  ### Tracking conversions for A/B tests
153
278
 
154
- Use `useConversion()` to attribute a goal to the variant a session saw:
155
-
156
- ```tsx fileName="CTAButton.tsx" codeFormat="tsx"
157
- import { useConversion } from "react-intlayer";
158
-
159
- const CTAButton = () => {
160
- const trackConversion = useConversion();
279
+ `useConversion()` returns a callback that attributes a goal to the variant a session saw. It is exported from every framework package, with the same signature:
280
+
281
+ <Tabs group="framework">
282
+ <Tab label="React" value="react">
283
+
284
+ ```tsx fileName="CTAButton.tsx"
285
+ import { useConversion } from "react-intlayer";
286
+
287
+ const CTAButton = () => {
288
+ const trackConversion = useConversion();
289
+
290
+ return (
291
+ <button
292
+ onClick={() =>
293
+ trackConversion({
294
+ experimentKey: "homepage-hero",
295
+ variant: "black_friday",
296
+ goal: "cta_click",
297
+ })
298
+ }
299
+ >
300
+ Get started
301
+ </button>
302
+ );
303
+ };
304
+ ```
305
+
306
+ </Tab>
307
+ <Tab label="Next.js" value="nextjs">
308
+
309
+ ```tsx fileName="CTAButton.tsx"
310
+ "use client";
311
+
312
+ import { useConversion } from "next-intlayer";
313
+
314
+ const CTAButton = () => {
315
+ const trackConversion = useConversion();
316
+
317
+ return (
318
+ <button
319
+ onClick={() =>
320
+ trackConversion({
321
+ experimentKey: "homepage-hero",
322
+ variant: "black_friday",
323
+ goal: "cta_click",
324
+ })
325
+ }
326
+ >
327
+ Get started
328
+ </button>
329
+ );
330
+ };
331
+ ```
332
+
333
+ > `useConversion` is a client hook — mark the component `"use client"`.
334
+
335
+ </Tab>
336
+ <Tab label="Vue" value="vue">
337
+
338
+ ```vue fileName="CTAButton.vue"
339
+ <script setup lang="ts">
340
+ import { useConversion } from "vue-intlayer";
341
+
342
+ const trackConversion = useConversion();
343
+ </script>
344
+
345
+ <template>
346
+ <button
347
+ @click="
348
+ trackConversion({
349
+ experimentKey: 'homepage-hero',
350
+ variant: 'black_friday',
351
+ goal: 'cta_click',
352
+ })
353
+ "
354
+ >
355
+ Get started
356
+ </button>
357
+ </template>
358
+ ```
359
+
360
+ </Tab>
361
+ <Tab label="Svelte" value="svelte">
362
+
363
+ ```svelte fileName="CTAButton.svelte"
364
+ <script lang="ts">
365
+ import { useConversion } from "svelte-intlayer";
366
+
367
+ const trackConversion = useConversion();
368
+ </script>
161
369
 
162
- return (
163
370
  <button
164
- onClick={() =>
371
+ onclick={() =>
165
372
  trackConversion({
166
373
  experimentKey: "homepage-hero",
167
374
  variant: "black_friday",
168
375
  goal: "cta_click",
169
- })
170
- }
376
+ })}
171
377
  >
172
378
  Get started
173
379
  </button>
380
+ ```
381
+
382
+ </Tab>
383
+ <Tab label="Preact" value="preact">
384
+
385
+ ```tsx fileName="CTAButton.tsx"
386
+ import { useConversion } from "preact-intlayer";
387
+
388
+ const CTAButton = () => {
389
+ const trackConversion = useConversion();
390
+
391
+ return (
392
+ <button
393
+ onClick={() =>
394
+ trackConversion({
395
+ experimentKey: "homepage-hero",
396
+ variant: "black_friday",
397
+ goal: "cta_click",
398
+ })
399
+ }
400
+ >
401
+ Get started
402
+ </button>
403
+ );
404
+ };
405
+ ```
406
+
407
+ </Tab>
408
+ <Tab label="Solid" value="solid">
409
+
410
+ ```tsx fileName="CTAButton.tsx"
411
+ import { useConversion } from "solid-intlayer";
412
+
413
+ const CTAButton = () => {
414
+ const trackConversion = useConversion();
415
+
416
+ return (
417
+ <button
418
+ onClick={() =>
419
+ trackConversion({
420
+ experimentKey: "homepage-hero",
421
+ variant: "black_friday",
422
+ goal: "cta_click",
423
+ })
424
+ }
425
+ >
426
+ Get started
427
+ </button>
428
+ );
429
+ };
430
+ ```
431
+
432
+ </Tab>
433
+ <Tab label="Angular" value="angular">
434
+
435
+ ```typescript fileName="cta-button.component.ts"
436
+ import { Component } from "@angular/core";
437
+ import { useConversion } from "angular-intlayer";
438
+
439
+ @Component({
440
+ selector: "app-cta-button",
441
+ template: `<button (click)="onClick()">Get started</button>`,
442
+ })
443
+ export class CtaButtonComponent {
444
+ private trackConversion = useConversion();
445
+
446
+ onClick() {
447
+ this.trackConversion({
448
+ experimentKey: "homepage-hero",
449
+ variant: "black_friday",
450
+ goal: "cta_click",
451
+ });
452
+ }
453
+ }
454
+ ```
455
+
456
+ </Tab>
457
+ </Tabs>
458
+
459
+ ### Resolving a variant client-side
460
+
461
+ `useExperiment()` assigns the session to a variant and records the exposure that becomes the denominator of the conversion rate. Gate the variant-aware subtree on `isAssigned` so no visitor sees the control flash before the assignment resolves:
462
+
463
+ <Tabs group="framework">
464
+ <Tab label="React" value="react">
465
+
466
+ `variant` is a plain string.
467
+
468
+ ```tsx fileName="Hero.tsx"
469
+ import { useExperiment } from "react-intlayer";
470
+ import { HeroBanner } from "./HeroBanner";
471
+
472
+ export const Hero = () => {
473
+ const { variant, isAssigned } = useExperiment("homepage-hero", [
474
+ "default",
475
+ "black_friday",
476
+ ]);
477
+
478
+ if (!isAssigned) return null;
479
+
480
+ return <HeroBanner variant={variant} />;
481
+ };
482
+ ```
483
+
484
+ </Tab>
485
+ <Tab label="Next.js" value="nextjs">
486
+
487
+ `variant` is a plain string. Assignment happens in the browser, so the component must be a client component.
488
+
489
+ ```tsx fileName="Hero.tsx"
490
+ "use client";
491
+
492
+ import { useExperiment } from "next-intlayer";
493
+ import { HeroBanner } from "./HeroBanner";
494
+
495
+ export const Hero = () => {
496
+ const { variant, isAssigned } = useExperiment("homepage-hero", [
497
+ "default",
498
+ "black_friday",
499
+ ]);
500
+
501
+ if (!isAssigned) return null;
502
+
503
+ return <HeroBanner variant={variant} />;
504
+ };
505
+ ```
506
+
507
+ </Tab>
508
+ <Tab label="Vue" value="vue">
509
+
510
+ `variant` and `isAssigned` are `Ref`s.
511
+
512
+ ```vue fileName="Hero.vue"
513
+ <script setup lang="ts">
514
+ import { useExperiment } from "vue-intlayer";
515
+ import HeroBanner from "./HeroBanner.vue";
516
+
517
+ const { variant, isAssigned } = useExperiment("homepage-hero", [
518
+ "default",
519
+ "black_friday",
520
+ ]);
521
+ </script>
522
+
523
+ <template>
524
+ <HeroBanner v-if="isAssigned" :variant="variant" />
525
+ </template>
526
+ ```
527
+
528
+ </Tab>
529
+ <Tab label="Svelte" value="svelte">
530
+
531
+ `variant` and `isAssigned` are stores — read them with the `$` prefix.
532
+
533
+ ```svelte fileName="Hero.svelte"
534
+ <script lang="ts">
535
+ import { useExperiment } from "svelte-intlayer";
536
+ import HeroBanner from "./HeroBanner.svelte";
537
+
538
+ const { variant, isAssigned } = useExperiment("homepage-hero", [
539
+ "default",
540
+ "black_friday",
541
+ ]);
542
+ </script>
543
+
544
+ {#if $isAssigned}
545
+ <HeroBanner variant={$variant} />
546
+ {/if}
547
+ ```
548
+
549
+ </Tab>
550
+ <Tab label="Preact" value="preact">
551
+
552
+ `variant` is a plain string.
553
+
554
+ ```tsx fileName="Hero.tsx"
555
+ import { useExperiment } from "preact-intlayer";
556
+ import { HeroBanner } from "./HeroBanner";
557
+
558
+ export const Hero = () => {
559
+ const { variant, isAssigned } = useExperiment("homepage-hero", [
560
+ "default",
561
+ "black_friday",
562
+ ]);
563
+
564
+ if (!isAssigned) return null;
565
+
566
+ return <HeroBanner variant={variant} />;
567
+ };
568
+ ```
569
+
570
+ </Tab>
571
+ <Tab label="Solid" value="solid">
572
+
573
+ `variant` and `isAssigned` are `Accessor`s — call them to read the value.
574
+
575
+ ```tsx fileName="Hero.tsx"
576
+ import { useExperiment } from "solid-intlayer";
577
+ import { Show } from "solid-js";
578
+ import { HeroBanner } from "./HeroBanner";
579
+
580
+ export const Hero = () => {
581
+ const { variant, isAssigned } = useExperiment("homepage-hero", [
582
+ "default",
583
+ "black_friday",
584
+ ]);
585
+
586
+ return (
587
+ <Show when={isAssigned()}>
588
+ <HeroBanner variant={variant()} />
589
+ </Show>
590
+ );
591
+ };
592
+ ```
593
+
594
+ </Tab>
595
+ <Tab label="Angular" value="angular">
596
+
597
+ `variant` and `isAssigned` are `Signal`s — call them to read the value.
598
+
599
+ ```typescript fileName="hero.component.ts"
600
+ import { Component } from "@angular/core";
601
+ import { useExperiment } from "angular-intlayer";
602
+ import { HeroBannerComponent } from "./hero-banner.component";
603
+
604
+ @Component({
605
+ selector: "app-hero",
606
+ imports: [HeroBannerComponent],
607
+ template: `@if (experiment.isAssigned()) {
608
+ <app-hero-banner [variant]="experiment.variant()" />
609
+ }`,
610
+ })
611
+ export class HeroComponent {
612
+ experiment = useExperiment("homepage-hero", ["default", "black_friday"]);
613
+ }
614
+ ```
615
+
616
+ </Tab>
617
+ </Tabs>
618
+
619
+ Weights are optional — pass one per variant to skew the split, e.g. `useExperiment("homepage-hero", ["default", "black_friday"], [9, 1])`.
620
+
621
+ The child then reads the [Variant](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/variants.md) of the dictionary that matches:
622
+
623
+ ```tsx fileName="HeroBanner.tsx"
624
+ import { useIntlayer } from "react-intlayer";
625
+
626
+ export const HeroBanner = ({ variant }: { variant: string }) => {
627
+ const { headline, cta } = useIntlayer("hero-banner", { variant });
628
+
629
+ return (
630
+ <section>
631
+ <h1>{headline}</h1>
632
+ <a>{cta}</a>
633
+ </section>
174
634
  );
175
635
  };
176
636
  ```
177
637
 
178
- ### Resolving a variant client-side
638
+ > Reading the variant in a **child** is what makes this work outside React: in Vue, Svelte, Solid, and Angular the selector passed to `useIntlayer` is captured when the component sets up, so the read has to happen in a component that only mounts once the variant is known.
639
+
640
+ If the experiment covers a whole page rather than a single dictionary, hoist the variant onto the provider instead — see [Ambient variant](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/variants.md#ambient-variant). Every `useIntlayer` below then resolves against it with no call-site change.
179
641
 
180
- ```tsx fileName="useHeroVariant.ts" codeFormat="tsx"
642
+ If you need the raw assignment outside of a component, reach for the client directly:
643
+
644
+ ```ts fileName="heroVariant.ts"
181
645
  import { getGlobalAnalyticsClient } from "@intlayer/analytics/client";
182
646
 
183
647
  const client = getGlobalAnalyticsClient();
184
648
  const variant = client?.getVariant("homepage-hero", [
185
- "control",
649
+ "default",
186
650
  "black_friday",
187
651
  ]);
188
652
  ```
189
653
 
654
+ > `getVariant` only assigns — it does not record the exposure. Prefer `useExperiment()`, otherwise the conversion rate has no denominator.
655
+
190
656
  ## Privacy & performance
191
657
 
192
658
  - **Anonymous by design**: sessions are identified by a rotating id; the backend only ever stores a **SHA-256 hash** of that id — never the raw id, never an IP address.
@@ -200,7 +666,7 @@ const variant = client?.getVariant("homepage-hero", [
200
666
  `@intlayer/analytics` follows the exact same optional-dependency pattern as `@intlayer/editor`:
201
667
 
202
668
  - every integration point loads the package via a **dynamic `import()` wrapped in `try/catch`** — an app that never installs `@intlayer/analytics` never pays a bundle-size or runtime cost, and never sees an error;
203
- - a compile-time env var (`INTLAYER_ANALYTICS_ENABLED`), automatically set to `'false'` by `@intlayer/config` whenever the package is not installed, `analytics.enabled` is `false`, or `editor.clientId` is not configured, lets bundlers **dead-code-eliminate** the whole integration;
669
+ - a compile-time env var (`INTLAYER_ANALYTICS_ENABLED`), automatically set to `'false'` whenever the package is not installed, `analytics.enabled` is `false`, or `editor.clientId` is not configured, lets bundlers **dead-code-eliminate** the whole integration;
204
670
  - analytics is disabled inside the Intlayer editor/CMS preview iframe, so editor sessions are never counted as real traffic.
205
671
 
206
672
  ## Dashboard: Analytics page
@@ -215,11 +681,12 @@ Once your project has collected events, the **Analytics** page in the [Intlayer
215
681
 
216
682
  ## Backend API reference
217
683
 
218
- All read endpoints require authentication; ingestion is public and attributed by `clientId`.
684
+ All read endpoints require authentication; the token exchange and ingestion are public.
219
685
 
220
686
  | Method | Endpoint | Description |
221
687
  | ------ | ------------------------------------------- | -------------------------------------------------------------------------------- |
222
- | `POST` | `/api/analytics/events` | Ingest a batch of events (public, attributed by `clientId` in the body). |
688
+ | `POST` | `/api/public/token` | Exchange the public `clientId` for a short-lived, scoped browser token. |
689
+ | `POST` | `/api/analytics/events` | Ingest a batch of events (public, `analytics:ingest` scope). |
223
690
  | `GET` | `/api/analytics/overview` | Page/locale totals for the authenticated project. |
224
691
  | `GET` | `/api/analytics/audience?days=30` | Distinct visitors, page views, daily series, locale + country breakdowns. |
225
692
  | `GET` | `/api/analytics/content-stats` | Per-content exposure totals, grouped by dictionary key / key path / locale. |
@@ -236,6 +703,8 @@ const cms = createIntlayerCMS();
236
703
  const { data: audience } = await analyticsEndpoint(cms).getAudience(30);
237
704
  ```
238
705
 
706
+ > **Server-side only.** `createIntlayerCMS()` authenticates with `clientId` + `clientSecret`, and the secret is never available in the browser — this snippet would issue unauthenticated requests if it ran there. Keep it in a route handler, server action, or script.
707
+
239
708
  ## Useful links
240
709
 
241
710
  - [Dynamic Dictionaries - Collections & Variants](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dynamic_dictionaries/index.md)
@@ -127,6 +127,8 @@ To see how to configure available locales, or other parameters, refer to the [co
127
127
 
128
128
  - **[Login](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/cli/login.md)** - Authenticate with the Intlayer CMS and get access credentials
129
129
 
130
+ > `intlayer login` issues an **access key** (`clientId` / `clientSecret`) that every credentialed command uses. The secret is a server-side credential and never reaches your client bundle — see [Keeping the access key safe](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/cli/login.md#keeping-the-access-key-safe).
131
+
130
132
  ### Core Commands
131
133
 
132
134
  - **[Build Dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/cli/build.md)** - Build your dictionaries from content declaration files
@@ -118,6 +118,34 @@ INTLAYER_CLIENT_SECRET=your_client_secret
118
118
  }
119
119
  ```
120
120
 
121
+ ## Keeping the access key safe
122
+
123
+ `intlayer login` issues an **access key**: a `clientId` / `clientSecret` pair that every credentialed command (`push`, `pull`, `fill`, `configuration push`, `live`, …) uses to authenticate.
124
+
125
+ ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
126
+ import type { IntlayerConfig } from "intlayer";
127
+
128
+ const config: IntlayerConfig = {
129
+ editor: {
130
+ clientId: process.env.INTLAYER_CLIENT_ID,
131
+ clientSecret: process.env.INTLAYER_CLIENT_SECRET,
132
+ },
133
+ };
134
+
135
+ export default config;
136
+ ```
137
+
138
+ > **`clientSecret` is a server-side credential.** It grants full project-scoped API access — reading and writing your dictionaries, your project and your organization. Keep it in `.env` (git-ignored) or your CI secret store, and never inline it in the configuration file.
139
+
140
+ Intlayer enforces this rather than only documenting it:
141
+
142
+ - `clientSecret` is **stripped from the configuration your bundler inlines**, so it cannot reach a browser bundle whatever framework integration you use. It is only ever read server-side, at runtime, from the environment.
143
+ - `clientId` is different: it is the **public** project key, safe to ship, and used by [`@intlayer/analytics`](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/analytics.md#how-events-are-authenticated) to obtain a short-lived, ingest-only token.
144
+
145
+ Commenting `clientId` out is enough to disable every credentialed behaviour — remote dictionary fetching, CMS access, analytics — even when the environment variables are still defined.
146
+
147
+ For CI pipelines, prefer the [`ci` command](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/cli/ci.md), which injects the credentials for the duration of a single run instead of persisting them.
148
+
121
149
  ## Manual Configuration
122
150
 
123
151
  If the browser doesn't open automatically, you can manually visit the URL displayed in the terminal.