@intlayer/docs 8.12.5-canary.0 → 9.0.0-canary.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (411) hide show
  1. package/dist/cjs/generated/docs.entry.cjs +320 -0
  2. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  3. package/dist/esm/generated/docs.entry.mjs +320 -0
  4. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  5. package/dist/types/generated/docs.entry.d.ts +16 -0
  6. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  7. package/docs/ar/cli/doc-review.md +110 -4
  8. package/docs/ar/cli/index.md +1 -1
  9. package/docs/ar/cli/scan.md +1 -1
  10. package/docs/ar/configuration.md +36 -3
  11. package/docs/ar/dictionary/condition.md +167 -5
  12. package/docs/ar/dictionary/enumeration.md +540 -6
  13. package/docs/ar/dictionary/file.md +151 -1
  14. package/docs/ar/dictionary/gender.md +168 -7
  15. package/docs/ar/dictionary/nesting.md +173 -65
  16. package/docs/ar/dictionary/plurial.md +174 -5
  17. package/docs/ar/dictionary/translation.md +156 -2
  18. package/docs/ar/dynamic_dictionaries/collections.md +1 -1
  19. package/docs/ar/dynamic_dictionaries/dynamic_content.md +1 -1
  20. package/docs/ar/dynamic_dictionaries/index.md +1 -1
  21. package/docs/ar/dynamic_dictionaries/variants.md +1 -1
  22. package/docs/ar/intlayer_with_vite+react.md +31 -31
  23. package/docs/ar/releases/v8.md +187 -1
  24. package/docs/ar/releases/v9.md +232 -0
  25. package/docs/bn/cli/index.md +1 -1
  26. package/docs/bn/cli/scan.md +1 -1
  27. package/docs/bn/configuration.md +36 -3
  28. package/docs/cs/cli/index.md +1 -1
  29. package/docs/cs/cli/scan.md +1 -1
  30. package/docs/cs/configuration.md +35 -2
  31. package/docs/de/cli/doc-review.md +110 -4
  32. package/docs/de/cli/index.md +1 -1
  33. package/docs/de/cli/scan.md +1 -1
  34. package/docs/de/configuration.md +35 -2
  35. package/docs/de/dictionary/condition.md +167 -5
  36. package/docs/de/dictionary/enumeration.md +777 -7
  37. package/docs/de/dictionary/file.md +151 -1
  38. package/docs/de/dictionary/gender.md +168 -7
  39. package/docs/de/dictionary/nesting.md +173 -65
  40. package/docs/de/dictionary/plurial.md +347 -7
  41. package/docs/de/dictionary/translation.md +156 -2
  42. package/docs/de/dynamic_dictionaries/collections.md +1 -1
  43. package/docs/de/dynamic_dictionaries/dynamic_content.md +1 -1
  44. package/docs/de/dynamic_dictionaries/index.md +1 -1
  45. package/docs/de/dynamic_dictionaries/variants.md +1 -1
  46. package/docs/de/intlayer_with_vite+react.md +48 -48
  47. package/docs/de/migration_from_i18next_to_intlayer.md +1 -1
  48. package/docs/de/migration_from_next-i18next_to_intlayer.md +1 -1
  49. package/docs/de/migration_from_next-intl_to_intlayer.md +1 -1
  50. package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  51. package/docs/de/migration_from_react-i18next_to_intlayer.md +1 -1
  52. package/docs/de/migration_from_vue-i18n_to_intlayer.md +1 -1
  53. package/docs/de/releases/v8.md +197 -1
  54. package/docs/de/releases/v9.md +232 -0
  55. package/docs/en/CI_CD.md +7 -7
  56. package/docs/en/cli/ci.md +62 -8
  57. package/docs/en/cli/doc-review.md +110 -4
  58. package/docs/en/cli/index.md +1 -1
  59. package/docs/en/cli/scan.md +1 -1
  60. package/docs/en/compat/i18n-js.md +44 -0
  61. package/docs/en/compat/i18next.md +59 -0
  62. package/docs/en/compat/index.md +51 -0
  63. package/docs/en/compat/lingui.md +44 -0
  64. package/docs/en/compat/next-i18next.md +57 -0
  65. package/docs/en/compat/next-intl.md +59 -0
  66. package/docs/en/compat/next-translate.md +45 -0
  67. package/docs/en/compat/ngx-translate.md +45 -0
  68. package/docs/en/compat/nuxtjs-i18n.md +46 -0
  69. package/docs/en/compat/polyglot.md +45 -0
  70. package/docs/en/compat/react-i18next.md +58 -0
  71. package/docs/en/compat/react-intl.md +55 -0
  72. package/docs/en/compat/svelte-i18n.md +47 -0
  73. package/docs/en/compat/transloco.md +45 -0
  74. package/docs/en/compat/vue-i18n.md +58 -0
  75. package/docs/en/configuration.md +35 -2
  76. package/docs/en/dictionary/condition.md +163 -1
  77. package/docs/en/dictionary/enumeration.md +309 -7
  78. package/docs/en/dictionary/file.md +151 -1
  79. package/docs/en/dictionary/gender.md +162 -1
  80. package/docs/en/dictionary/nesting.md +173 -9
  81. package/docs/en/dictionary/plurial.md +155 -10
  82. package/docs/en/dictionary/translation.md +145 -52
  83. package/docs/en/dynamic_dictionaries/collections.md +1 -1
  84. package/docs/en/dynamic_dictionaries/dynamic_content.md +1 -1
  85. package/docs/en/dynamic_dictionaries/index.md +1 -1
  86. package/docs/en/dynamic_dictionaries/variants.md +1 -1
  87. package/docs/en/migration_from_i18next_to_intlayer.md +1 -1
  88. package/docs/en/migration_from_next-i18next_to_intlayer.md +1 -1
  89. package/docs/en/migration_from_next-intl_to_intlayer.md +1 -1
  90. package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  91. package/docs/en/migration_from_react-i18next_to_intlayer.md +1 -1
  92. package/docs/en/migration_from_vue-i18n_to_intlayer.md +1 -1
  93. package/docs/en/releases/v8.md +187 -1
  94. package/docs/en/releases/v9.md +220 -0
  95. package/docs/en-GB/cli/doc-review.md +110 -4
  96. package/docs/en-GB/cli/index.md +1 -1
  97. package/docs/en-GB/cli/scan.md +1 -1
  98. package/docs/en-GB/configuration.md +35 -2
  99. package/docs/en-GB/dictionary/condition.md +364 -1
  100. package/docs/en-GB/dictionary/enumeration.md +577 -5
  101. package/docs/en-GB/dictionary/file.md +317 -1
  102. package/docs/en-GB/dictionary/gender.md +375 -2
  103. package/docs/en-GB/dictionary/nesting.md +368 -71
  104. package/docs/en-GB/dictionary/plurial.md +347 -7
  105. package/docs/en-GB/dictionary/translation.md +320 -32
  106. package/docs/en-GB/dynamic_dictionaries/collections.md +1 -1
  107. package/docs/en-GB/dynamic_dictionaries/dynamic_content.md +1 -1
  108. package/docs/en-GB/dynamic_dictionaries/index.md +1 -1
  109. package/docs/en-GB/dynamic_dictionaries/variants.md +1 -1
  110. package/docs/en-GB/releases/v8.md +1 -1
  111. package/docs/en-GB/releases/v9.md +220 -0
  112. package/docs/es/cli/doc-review.md +110 -4
  113. package/docs/es/cli/index.md +1 -1
  114. package/docs/es/cli/scan.md +1 -1
  115. package/docs/es/configuration.md +36 -3
  116. package/docs/es/dictionary/condition.md +167 -5
  117. package/docs/es/dictionary/enumeration.md +537 -12
  118. package/docs/es/dictionary/file.md +151 -1
  119. package/docs/es/dictionary/gender.md +168 -7
  120. package/docs/es/dictionary/nesting.md +173 -65
  121. package/docs/es/dictionary/plurial.md +347 -7
  122. package/docs/es/dictionary/translation.md +156 -2
  123. package/docs/es/dynamic_dictionaries/collections.md +1 -1
  124. package/docs/es/dynamic_dictionaries/dynamic_content.md +1 -1
  125. package/docs/es/dynamic_dictionaries/index.md +1 -1
  126. package/docs/es/dynamic_dictionaries/variants.md +1 -1
  127. package/docs/es/migration_from_i18next_to_intlayer.md +1 -1
  128. package/docs/es/migration_from_next-i18next_to_intlayer.md +1 -1
  129. package/docs/es/migration_from_next-intl_to_intlayer.md +1 -1
  130. package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  131. package/docs/es/migration_from_react-i18next_to_intlayer.md +1 -1
  132. package/docs/es/migration_from_vue-i18n_to_intlayer.md +1 -1
  133. package/docs/es/releases/v8.md +187 -1
  134. package/docs/es/releases/v9.md +228 -0
  135. package/docs/fr/cli/doc-review.md +110 -4
  136. package/docs/fr/cli/index.md +1 -1
  137. package/docs/fr/cli/scan.md +1 -1
  138. package/docs/fr/configuration.md +49 -16
  139. package/docs/fr/dictionary/condition.md +369 -6
  140. package/docs/fr/dictionary/enumeration.md +540 -6
  141. package/docs/fr/dictionary/file.md +151 -1
  142. package/docs/fr/dictionary/gender.md +168 -7
  143. package/docs/fr/dictionary/nesting.md +357 -86
  144. package/docs/fr/dictionary/plurial.md +174 -5
  145. package/docs/fr/dictionary/translation.md +156 -2
  146. package/docs/fr/dynamic_dictionaries/collections.md +1 -1
  147. package/docs/fr/dynamic_dictionaries/dynamic_content.md +1 -1
  148. package/docs/fr/dynamic_dictionaries/index.md +1 -1
  149. package/docs/fr/dynamic_dictionaries/variants.md +1 -1
  150. package/docs/fr/migration_from_i18next_to_intlayer.md +1 -1
  151. package/docs/fr/migration_from_next-i18next_to_intlayer.md +1 -1
  152. package/docs/fr/migration_from_next-intl_to_intlayer.md +1 -1
  153. package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  154. package/docs/fr/migration_from_react-i18next_to_intlayer.md +1 -1
  155. package/docs/fr/migration_from_vue-i18n_to_intlayer.md +1 -1
  156. package/docs/fr/releases/v8.md +187 -1
  157. package/docs/fr/releases/v9.md +220 -0
  158. package/docs/hi/cli/doc-review.md +110 -4
  159. package/docs/hi/cli/index.md +1 -1
  160. package/docs/hi/cli/scan.md +1 -1
  161. package/docs/hi/configuration.md +49 -16
  162. package/docs/hi/dictionary/condition.md +167 -5
  163. package/docs/hi/dictionary/enumeration.md +540 -6
  164. package/docs/hi/dictionary/file.md +151 -1
  165. package/docs/hi/dictionary/gender.md +168 -7
  166. package/docs/hi/dictionary/nesting.md +173 -65
  167. package/docs/hi/dictionary/plurial.md +174 -5
  168. package/docs/hi/dictionary/translation.md +155 -5
  169. package/docs/hi/dynamic_dictionaries/collections.md +1 -1
  170. package/docs/hi/dynamic_dictionaries/dynamic_content.md +1 -1
  171. package/docs/hi/dynamic_dictionaries/index.md +1 -1
  172. package/docs/hi/dynamic_dictionaries/variants.md +1 -1
  173. package/docs/hi/releases/v8.md +188 -2
  174. package/docs/hi/releases/v9.md +232 -0
  175. package/docs/id/cli/doc-review.md +110 -4
  176. package/docs/id/cli/index.md +1 -1
  177. package/docs/id/cli/scan.md +1 -1
  178. package/docs/id/configuration.md +35 -2
  179. package/docs/id/dictionary/condition.md +167 -5
  180. package/docs/id/dictionary/enumeration.md +540 -6
  181. package/docs/id/dictionary/file.md +318 -2
  182. package/docs/id/dictionary/gender.md +381 -8
  183. package/docs/id/dictionary/nesting.md +357 -86
  184. package/docs/id/dictionary/plurial.md +174 -5
  185. package/docs/id/dictionary/translation.md +156 -2
  186. package/docs/id/dynamic_dictionaries/collections.md +1 -1
  187. package/docs/id/dynamic_dictionaries/dynamic_content.md +1 -1
  188. package/docs/id/dynamic_dictionaries/index.md +1 -1
  189. package/docs/id/dynamic_dictionaries/variants.md +1 -1
  190. package/docs/id/releases/v8.md +191 -2
  191. package/docs/id/releases/v9.md +232 -0
  192. package/docs/it/cli/doc-review.md +110 -4
  193. package/docs/it/cli/index.md +1 -1
  194. package/docs/it/cli/scan.md +1 -1
  195. package/docs/it/configuration.md +49 -16
  196. package/docs/it/dictionary/condition.md +167 -5
  197. package/docs/it/dictionary/enumeration.md +540 -6
  198. package/docs/it/dictionary/file.md +318 -2
  199. package/docs/it/dictionary/gender.md +168 -7
  200. package/docs/it/dictionary/nesting.md +173 -65
  201. package/docs/it/dictionary/plurial.md +347 -7
  202. package/docs/it/dictionary/translation.md +156 -2
  203. package/docs/it/dynamic_dictionaries/collections.md +1 -1
  204. package/docs/it/dynamic_dictionaries/dynamic_content.md +1 -1
  205. package/docs/it/dynamic_dictionaries/index.md +1 -1
  206. package/docs/it/dynamic_dictionaries/variants.md +1 -1
  207. package/docs/it/intlayer_with_vite+react.md +0 -48
  208. package/docs/it/migration_from_i18next_to_intlayer.md +1 -1
  209. package/docs/it/migration_from_next-i18next_to_intlayer.md +1 -1
  210. package/docs/it/migration_from_next-intl_to_intlayer.md +1 -1
  211. package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  212. package/docs/it/migration_from_react-i18next_to_intlayer.md +1 -1
  213. package/docs/it/migration_from_vue-i18n_to_intlayer.md +1 -1
  214. package/docs/it/releases/v8.md +200 -2
  215. package/docs/it/releases/v9.md +232 -0
  216. package/docs/ja/cli/doc-review.md +110 -4
  217. package/docs/ja/cli/index.md +1 -1
  218. package/docs/ja/cli/scan.md +1 -1
  219. package/docs/ja/configuration.md +50 -17
  220. package/docs/ja/dictionary/condition.md +167 -5
  221. package/docs/ja/dictionary/enumeration.md +540 -6
  222. package/docs/ja/dictionary/file.md +151 -1
  223. package/docs/ja/dictionary/gender.md +168 -7
  224. package/docs/ja/dictionary/nesting.md +173 -65
  225. package/docs/ja/dictionary/plurial.md +174 -5
  226. package/docs/ja/dictionary/translation.md +169 -8
  227. package/docs/ja/dynamic_dictionaries/collections.md +1 -1
  228. package/docs/ja/dynamic_dictionaries/dynamic_content.md +1 -1
  229. package/docs/ja/dynamic_dictionaries/index.md +1 -1
  230. package/docs/ja/dynamic_dictionaries/variants.md +1 -1
  231. package/docs/ja/intlayer_with_vite+react.md +290 -0
  232. package/docs/ja/migration_from_i18next_to_intlayer.md +1 -1
  233. package/docs/ja/migration_from_next-i18next_to_intlayer.md +1 -1
  234. package/docs/ja/migration_from_next-intl_to_intlayer.md +1 -1
  235. package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  236. package/docs/ja/migration_from_react-i18next_to_intlayer.md +1 -1
  237. package/docs/ja/migration_from_vue-i18n_to_intlayer.md +1 -1
  238. package/docs/ja/releases/v8.md +193 -4
  239. package/docs/ja/releases/v9.md +232 -0
  240. package/docs/ko/cli/doc-review.md +110 -4
  241. package/docs/ko/cli/index.md +1 -1
  242. package/docs/ko/cli/scan.md +1 -1
  243. package/docs/ko/configuration.md +49 -16
  244. package/docs/ko/dictionary/condition.md +167 -5
  245. package/docs/ko/dictionary/enumeration.md +540 -6
  246. package/docs/ko/dictionary/file.md +151 -1
  247. package/docs/ko/dictionary/gender.md +168 -7
  248. package/docs/ko/dictionary/nesting.md +173 -65
  249. package/docs/ko/dictionary/plurial.md +174 -5
  250. package/docs/ko/dictionary/translation.md +169 -8
  251. package/docs/ko/dynamic_dictionaries/collections.md +1 -1
  252. package/docs/ko/dynamic_dictionaries/dynamic_content.md +1 -1
  253. package/docs/ko/dynamic_dictionaries/index.md +1 -1
  254. package/docs/ko/dynamic_dictionaries/variants.md +1 -1
  255. package/docs/ko/intlayer_with_vite+react.md +48 -490
  256. package/docs/ko/migration_from_i18next_to_intlayer.md +1 -1
  257. package/docs/ko/migration_from_next-i18next_to_intlayer.md +1 -1
  258. package/docs/ko/migration_from_next-intl_to_intlayer.md +1 -1
  259. package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  260. package/docs/ko/migration_from_react-i18next_to_intlayer.md +1 -1
  261. package/docs/ko/migration_from_vue-i18n_to_intlayer.md +1 -1
  262. package/docs/ko/releases/v8.md +192 -1
  263. package/docs/ko/releases/v9.md +232 -0
  264. package/docs/nl/cli/index.md +1 -1
  265. package/docs/nl/cli/scan.md +1 -1
  266. package/docs/nl/configuration.md +36 -3
  267. package/docs/pl/cli/doc-review.md +110 -4
  268. package/docs/pl/cli/index.md +1 -1
  269. package/docs/pl/cli/scan.md +1 -1
  270. package/docs/pl/configuration.md +35 -2
  271. package/docs/pl/dictionary/condition.md +167 -5
  272. package/docs/pl/dictionary/enumeration.md +540 -6
  273. package/docs/pl/dictionary/file.md +318 -2
  274. package/docs/pl/dictionary/gender.md +168 -7
  275. package/docs/pl/dictionary/nesting.md +173 -65
  276. package/docs/pl/dictionary/plurial.md +174 -5
  277. package/docs/pl/dictionary/translation.md +156 -2
  278. package/docs/pl/dynamic_dictionaries/collections.md +1 -1
  279. package/docs/pl/dynamic_dictionaries/dynamic_content.md +1 -1
  280. package/docs/pl/dynamic_dictionaries/index.md +1 -1
  281. package/docs/pl/dynamic_dictionaries/variants.md +1 -1
  282. package/docs/pl/releases/v8.md +188 -2
  283. package/docs/pl/releases/v9.md +232 -0
  284. package/docs/pt/cli/doc-review.md +110 -4
  285. package/docs/pt/cli/index.md +1 -1
  286. package/docs/pt/cli/scan.md +1 -1
  287. package/docs/pt/configuration.md +49 -16
  288. package/docs/pt/dictionary/condition.md +167 -5
  289. package/docs/pt/dictionary/enumeration.md +540 -6
  290. package/docs/pt/dictionary/file.md +151 -1
  291. package/docs/pt/dictionary/gender.md +168 -7
  292. package/docs/pt/dictionary/nesting.md +173 -65
  293. package/docs/pt/dictionary/plurial.md +347 -7
  294. package/docs/pt/dictionary/translation.md +156 -2
  295. package/docs/pt/dynamic_dictionaries/collections.md +1 -1
  296. package/docs/pt/dynamic_dictionaries/dynamic_content.md +1 -1
  297. package/docs/pt/dynamic_dictionaries/index.md +1 -1
  298. package/docs/pt/dynamic_dictionaries/variants.md +1 -1
  299. package/docs/pt/migration_from_i18next_to_intlayer.md +1 -1
  300. package/docs/pt/migration_from_next-i18next_to_intlayer.md +1 -1
  301. package/docs/pt/migration_from_next-intl_to_intlayer.md +1 -1
  302. package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  303. package/docs/pt/migration_from_react-i18next_to_intlayer.md +1 -1
  304. package/docs/pt/migration_from_vue-i18n_to_intlayer.md +1 -1
  305. package/docs/pt/releases/v8.md +187 -1
  306. package/docs/pt/releases/v9.md +232 -0
  307. package/docs/ru/cli/doc-review.md +110 -4
  308. package/docs/ru/cli/index.md +1 -1
  309. package/docs/ru/cli/scan.md +1 -1
  310. package/docs/ru/configuration.md +35 -2
  311. package/docs/ru/dictionary/condition.md +366 -39
  312. package/docs/ru/dictionary/enumeration.md +777 -7
  313. package/docs/ru/dictionary/file.md +318 -2
  314. package/docs/ru/dictionary/gender.md +168 -7
  315. package/docs/ru/dictionary/nesting.md +368 -71
  316. package/docs/ru/dictionary/plurial.md +347 -7
  317. package/docs/ru/dictionary/translation.md +321 -33
  318. package/docs/ru/dynamic_dictionaries/collections.md +1 -1
  319. package/docs/ru/dynamic_dictionaries/dynamic_content.md +1 -1
  320. package/docs/ru/dynamic_dictionaries/index.md +1 -1
  321. package/docs/ru/dynamic_dictionaries/variants.md +1 -1
  322. package/docs/ru/intlayer_with_vite+react.md +48 -47
  323. package/docs/ru/migration_from_i18next_to_intlayer.md +1 -1
  324. package/docs/ru/migration_from_next-i18next_to_intlayer.md +1 -1
  325. package/docs/ru/migration_from_next-intl_to_intlayer.md +1 -1
  326. package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  327. package/docs/ru/migration_from_react-i18next_to_intlayer.md +1 -1
  328. package/docs/ru/migration_from_vue-i18n_to_intlayer.md +1 -1
  329. package/docs/ru/releases/v8.md +194 -2
  330. package/docs/ru/releases/v9.md +232 -0
  331. package/docs/tr/cli/doc-review.md +110 -4
  332. package/docs/tr/cli/index.md +1 -1
  333. package/docs/tr/cli/scan.md +1 -1
  334. package/docs/tr/configuration.md +35 -2
  335. package/docs/tr/dictionary/condition.md +167 -5
  336. package/docs/tr/dictionary/enumeration.md +540 -6
  337. package/docs/tr/dictionary/file.md +151 -1
  338. package/docs/tr/dictionary/gender.md +168 -7
  339. package/docs/tr/dictionary/nesting.md +173 -65
  340. package/docs/tr/dictionary/plurial.md +174 -5
  341. package/docs/tr/dictionary/translation.md +156 -2
  342. package/docs/tr/dynamic_dictionaries/collections.md +1 -1
  343. package/docs/tr/dynamic_dictionaries/dynamic_content.md +1 -1
  344. package/docs/tr/dynamic_dictionaries/index.md +1 -1
  345. package/docs/tr/dynamic_dictionaries/variants.md +1 -1
  346. package/docs/tr/migration_from_i18next_to_intlayer.md +1 -1
  347. package/docs/tr/migration_from_next-i18next_to_intlayer.md +1 -1
  348. package/docs/tr/migration_from_next-intl_to_intlayer.md +1 -1
  349. package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +1 -1
  350. package/docs/tr/migration_from_react-i18next_to_intlayer.md +1 -1
  351. package/docs/tr/migration_from_vue-i18n_to_intlayer.md +1 -1
  352. package/docs/tr/releases/v8.md +187 -1
  353. package/docs/tr/releases/v9.md +232 -0
  354. package/docs/uk/cli/doc-review.md +110 -4
  355. package/docs/uk/cli/index.md +1 -1
  356. package/docs/uk/cli/scan.md +1 -1
  357. package/docs/uk/configuration.md +35 -2
  358. package/docs/uk/dictionary/condition.md +167 -5
  359. package/docs/uk/dictionary/enumeration.md +540 -6
  360. package/docs/uk/dictionary/file.md +318 -2
  361. package/docs/uk/dictionary/gender.md +381 -8
  362. package/docs/uk/dictionary/nesting.md +173 -65
  363. package/docs/uk/dictionary/plurial.md +174 -5
  364. package/docs/uk/dictionary/translation.md +156 -2
  365. package/docs/uk/dynamic_dictionaries/collections.md +1 -1
  366. package/docs/uk/dynamic_dictionaries/dynamic_content.md +1 -1
  367. package/docs/uk/dynamic_dictionaries/index.md +1 -1
  368. package/docs/uk/dynamic_dictionaries/variants.md +1 -1
  369. package/docs/uk/releases/v8.md +191 -3
  370. package/docs/uk/releases/v9.md +232 -0
  371. package/docs/ur/cli/index.md +1 -1
  372. package/docs/ur/cli/scan.md +1 -1
  373. package/docs/ur/configuration.md +36 -3
  374. package/docs/vi/cli/doc-review.md +110 -4
  375. package/docs/vi/cli/index.md +1 -1
  376. package/docs/vi/cli/scan.md +1 -1
  377. package/docs/vi/configuration.md +50 -17
  378. package/docs/vi/dictionary/condition.md +167 -5
  379. package/docs/vi/dictionary/enumeration.md +591 -14
  380. package/docs/vi/dictionary/file.md +318 -2
  381. package/docs/vi/dictionary/gender.md +168 -7
  382. package/docs/vi/dictionary/nesting.md +357 -86
  383. package/docs/vi/dictionary/plurial.md +174 -5
  384. package/docs/vi/dictionary/translation.md +156 -2
  385. package/docs/vi/dynamic_dictionaries/collections.md +1 -1
  386. package/docs/vi/dynamic_dictionaries/dynamic_content.md +1 -1
  387. package/docs/vi/dynamic_dictionaries/index.md +1 -1
  388. package/docs/vi/dynamic_dictionaries/variants.md +1 -1
  389. package/docs/vi/releases/v8.md +190 -1
  390. package/docs/vi/releases/v9.md +232 -0
  391. package/docs/zh/cli/doc-review.md +110 -4
  392. package/docs/zh/cli/index.md +1 -1
  393. package/docs/zh/cli/scan.md +1 -1
  394. package/docs/zh/configuration.md +49 -16
  395. package/docs/zh/dictionary/condition.md +167 -5
  396. package/docs/zh/dictionary/enumeration.md +540 -6
  397. package/docs/zh/dictionary/file.md +151 -1
  398. package/docs/zh/dictionary/gender.md +168 -7
  399. package/docs/zh/dictionary/nesting.md +173 -65
  400. package/docs/zh/dictionary/plurial.md +174 -5
  401. package/docs/zh/dictionary/translation.md +169 -8
  402. package/docs/zh/dynamic_dictionaries/collections.md +1 -1
  403. package/docs/zh/dynamic_dictionaries/dynamic_content.md +1 -1
  404. package/docs/zh/dynamic_dictionaries/index.md +1 -1
  405. package/docs/zh/dynamic_dictionaries/variants.md +1 -1
  406. package/docs/zh/intlayer_with_vite+react.md +48 -288
  407. package/docs/zh/releases/v8.md +1 -1
  408. package/docs/zh/releases/v9.md +220 -0
  409. package/package.json +7 -7
  410. package/src/generated/docs.entry.ts +320 -0
  411. package/dist/esm/_virtual/_rolldown/runtime.mjs +0 -8
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2024-08-11
3
- updatedAt: 2025-11-22
3
+ updatedAt: 2026-06-17
4
4
  title: Review Document
5
5
  description: Learn how to review documentation files for quality, consistency, and completeness across different locales.
6
6
  keywords:
@@ -15,6 +15,10 @@ slugs:
15
15
  - concept
16
16
  - cli
17
17
  - doc-review
18
+ history:
19
+ - version: 9.0.0
20
+ date: 2026-06-17
21
+ changes: "Add --log option"
18
22
  author: aymericzip
19
23
  ---
20
24
 
@@ -55,8 +59,110 @@ For most use cases,
55
59
 
56
60
  ## Arguments:
57
61
 
58
- The `doc review` command accepts the same arguments as `doc translate`, allowing you to review specific documentation files and apply quality checks.
62
+ **File list options:**
59
63
 
60
- If you activated one of the git options, the command will only review the part of the files that getting changed. The script will process by chunking the file and review each chunk. If there is no changes in the chunk, the script will skip it to speed up the review process and limit the AI Provider API cost.
64
+ - **`--doc-pattern [docPattern...]`**: Glob patterns to match documentation files to review.
61
65
 
62
- For a complete list of arguments, see the [Translate Document](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/cli/doc-translate.md) command documentation.
66
+ > Example: `npx intlayer doc review --doc-pattern "docs/**/*.md" "src/**/*.mdx"`
67
+
68
+ - **`--excluded-glob-pattern [excludedGlobPattern...]`**: Glob patterns to exclude from review.
69
+
70
+ > Example: `npx intlayer doc review --excluded-glob-pattern "docs/internal/**"`
71
+
72
+ - **`--skip-if-modified-before [skipIfModifiedBefore]`**: Skip the file if it has been modified before the given time.
73
+ - Can be an absolute time as "2025-12-05" (string or Date)
74
+ - Can be a relative time in ms `1 * 60 * 60 * 1000` (1 hour)
75
+ - This option checks the update time of the file using the `fs.stat` method. So it could be impacted by Git or other tools that modify the file.
76
+
77
+ > Example: `npx intlayer doc review --skip-if-modified-before "2025-12-05"`
78
+
79
+ - **`--skip-if-modified-after [skipIfModifiedAfter]`**: Skip the file if it has been modified within the given time.
80
+ - Can be an absolute time as "2025-12-05" (string or Date)
81
+ - Can be a relative time in ms `1 * 60 * 60 * 1000` (1 hour)
82
+ - This option checks the update time of the file using the `fs.stat` method. So it could be impacted by Git or other tools that modify the file.
83
+
84
+ > Example: `npx intlayer doc review --skip-if-modified-after "2025-12-05"`
85
+
86
+ - **`--skip-if-exists`**: Skip the file if it already exists.
87
+
88
+ > Example: `npx intlayer doc review --skip-if-exists`
89
+
90
+ **Review mode options:**
91
+
92
+ - **`--log`**: Log-only mode. Do not translate with AI; instead log the blocks that need attention (with line numbers and content) for the base and target locales, to help another agent generate the translations.
93
+
94
+ > Example: `npx intlayer doc review --log`
95
+
96
+ **Entry output options:**
97
+
98
+ - **`--locales [locales...]`**: Target locales to review documentation for.
99
+
100
+ > Example: `npx intlayer doc review --locales fr es de`
101
+
102
+ - **`--base-locale [baseLocale]`**: Source locale (base document) to compare with.
103
+
104
+ > Example: `npx intlayer doc review --base-locale en`
105
+
106
+ **File processing options:**
107
+
108
+ - **`--nb-simultaneous-file-processed [nbSimultaneousFileProcessed]`**: Number of files to process simultaneously for review.
109
+
110
+ > Example: `npx intlayer doc review --nb-simultaneous-file-processed 5`
111
+
112
+ **AI options:**
113
+
114
+ - **`--model [model]`**: The AI model to use for review (e.g., `gpt-3.5-turbo`).
115
+ - **`--provider [provider]`**: The AI provider to use for review.
116
+ - **`--temperature [temperature]`**: Temperature setting for the AI model.
117
+ - **`--api-key [apiKey]`**: Provide your own API key for the AI service.
118
+ - **`--application-context [applicationContext]`**: Provide additional context for the AI review.
119
+ - **`--data-serialization [dataSerialization]`**: The data serialization format to use for the AI features of Intlayer. Options: `json` (standard, reliable), `toon` (fewer tokens, less consistent).
120
+ - **`--custom-prompt [prompt]`**: Customize the base prompt used for review. (Note: For most use cases, the `--custom-instructions` option is recommended instead.)
121
+
122
+ > Example: `npx intlayer doc review --model deepseek-chat --provider deepseek --temperature 0.5 --api-key sk-1234567890 --application-context "My application is a cat store"`
123
+
124
+ **Environment variables options:**
125
+
126
+ - **`--env`**: Specify the environment (e.g., `development`, `production`).
127
+ - **`--env-file [envFile]`**: Provide a custom environment file to load variables from.
128
+ - **`--base-dir`**: Specify the base directory for the project.
129
+ - **`--no-cache`**: Disable the cache.
130
+
131
+ > Example: `npx intlayer doc review --base-dir ./docs --env-file .env.production.local`
132
+
133
+ **Log options:**
134
+
135
+ - **`--verbose`**: Enable verbose logging for debugging. (default to true using CLI)
136
+
137
+ > Example: `npx intlayer doc review --verbose`
138
+
139
+ **Custom instructions options:**
140
+
141
+ - **`--custom-instructions [customInstructions]`**: Custom instructions added to the prompt. Useful to apply specific rules regarding formatting, urls translation, etc.
142
+
143
+ > Example: `npx intlayer doc review --custom-instructions "Avoid translating urls, and keep the markdown format"`
144
+
145
+ > Example: `npx intlayer doc review --custom-instructions "$(cat ./instructions.md)"`
146
+
147
+ **Git options:**
148
+
149
+ - **`--git-diff`**: Only run on files that include changes from base (default `origin/main`) to current branch (default: `HEAD`).
150
+ - **`--git-diff-base`**: Specify the base reference for git diff (default `origin/main`).
151
+ - **`--git-diff-current`**: Specify the current reference for git diff (default: `HEAD`).
152
+ - **`--uncommitted`**: Include uncommitted changes.
153
+ - **`--unpushed`**: Include unpushed changes.
154
+ - **`--untracked`**: Include untracked files.
155
+
156
+ > Example: `npx intlayer doc review --git-diff --git-diff-base origin/main --git-diff-current HEAD`
157
+
158
+ > Example: `npx intlayer doc review --uncommitted --unpushed --untracked`
159
+
160
+ > Note that the output file path will be determined by replacing the following patterns:
161
+ >
162
+ > - `/{{baseLocale}}/` by `/{{locale}}/` (Unix)
163
+ > - `\{{baseLocale}}\` by `\{{locale}}\` (Windows)
164
+ > - `_{{baseLocale}}.` by `_{{locale}}.`
165
+ > - `{{baseLocale}}_` by `{{locale}}_`
166
+ > - `.{{baseLocaleName}}.` by `.{{localeName}}.`
167
+ >
168
+ > If the pattern is not found, the output file will add the `.{{locale}}` at the extensions of the file. `./my/file.md` will be reviewed and updated to `./my/file.fr.md` for the French locale.
@@ -17,7 +17,7 @@ slugs:
17
17
  - concept
18
18
  - cli
19
19
  history:
20
- - version: 8.13.0
20
+ - version: 9.0.0
21
21
  date: 2026-06-11
22
22
  changes: "Add scan command"
23
23
  - version: 8.6.4
@@ -18,7 +18,7 @@ slugs:
18
18
  - cli
19
19
  - scan
20
20
  history:
21
- - version: 8.13.0
21
+ - version: 9.0.0
22
22
  date: 2026-06-11
23
23
  changes: "Add scan command"
24
24
  author: aymericzip
@@ -0,0 +1,44 @@
1
+ ---
2
+ createdAt: 2026-06-13
3
+ updatedAt: 2026-06-13
4
+ title: "Migrate from i18n-js to Intlayer"
5
+ description: "Learn how to migrate your application from i18n-js to Intlayer using the compat adapter."
6
+ keywords:
7
+ - i18n-js
8
+ - intlayer
9
+ - migration
10
+ - compat
11
+ slugs:
12
+ - doc
13
+ - compatibility
14
+ - i18n-js
15
+ history:
16
+ - version: 9.0.0
17
+ date: 2026-06-13
18
+ changes: "Init history"
19
+ author: aymericzip
20
+ ---
21
+
22
+ # Migrate from i18n-js to Intlayer
23
+
24
+ Transitioning from the `i18n-js` library to Intlayer is a highly optimized migration designed to offload large translations configurations into Intlayer's structured file resolution system.
25
+
26
+ ## What to do
27
+
28
+ Execute the following setup command in your repository:
29
+
30
+ ```bash
31
+ npx intlayer init
32
+ ```
33
+
34
+ With `intlayer.config.ts` prepared, you can add Intlayer's alias to your bundler configuration so that any imports of `i18n-js` target the compat package `@intlayer/i18n-js`.
35
+
36
+ ## What it does under the hood
37
+
38
+ `i18n-js` accesses namespaces through expressions like `i18n.t('scope.key', {name})` along with locale fallbacks and specific plural mappings.
39
+
40
+ Under the hood:
41
+
42
+ - **Interpolation:** The compat adapter easily parses `%{name}` mappings into your targeted runtime dictionary value.
43
+ - **Pluralization:** Replaces `one/other` subkeys and maps them against Intlayer's powerful underlying plural mechanisms (`Intl.PluralRules`), abstracting away manual mappings.
44
+ - **Locales:** Instead of loading monolithic language payloads at bootstrap, dictionaries are served up optimally based on the current context setup via the native Intlayer configuration.
@@ -0,0 +1,59 @@
1
+ ---
2
+ createdAt: 2026-06-13
3
+ updatedAt: 2026-06-13
4
+ title: "Migrate from i18next to Intlayer"
5
+ description: "Learn how to migrate your Vanilla JS/TS application from i18next to Intlayer using the compat adapter."
6
+ keywords:
7
+ - i18next
8
+ - vanilla
9
+ - javascript
10
+ - typescript
11
+ - intlayer
12
+ - migration
13
+ - compat
14
+ slugs:
15
+ - doc
16
+ - compatibility
17
+ - i18next
18
+ history:
19
+ - version: 9.0.0
20
+ date: 2026-06-13
21
+ changes: "Init history"
22
+ author: aymericzip
23
+ ---
24
+
25
+ # Migrate from i18next to Intlayer
26
+
27
+ For a detailed step-by-step tutorial, please see our full [i18next Migration Guide](../migration_from_i18next_to_intlayer.md).
28
+
29
+ Intlayer perfectly replicates the core runtime characteristics of `i18next`. By utilizing the compat package, your Vanilla applications or internal modules can continue to leverage familiar syntax.
30
+
31
+ ## What to do
32
+
33
+ To begin, initialize Intlayer in your project:
34
+
35
+ ```bash
36
+ npx intlayer init
37
+ ```
38
+
39
+ If you are using Vite, include the Intlayer plugin to route imports to `@intlayer/i18next`:
40
+
41
+ ```typescript fileName="vite.config.ts"
42
+ import { defineConfig } from "vite";
43
+ import { i18nextVitePlugin } from "@intlayer/i18next/plugin";
44
+
45
+ export default defineConfig({
46
+ plugins: [i18nextVitePlugin()],
47
+ });
48
+ ```
49
+
50
+ ## What it does under the hood
51
+
52
+ The `i18nextVitePlugin` aliases `i18next` imports to `@intlayer/i18next`, avoiding bundle bloat from JSON file inclusions.
53
+
54
+ Under the hood:
55
+
56
+ - **Instance configuration:** `createInstance` correctly parses and applies namespace fallbacks while leveraging Intlayer's compilation pipeline for dictionary retrieval.
57
+ - **Interpolation:** Native support for `{{name}}` replacements and `$t(key)` nesting recursively.
58
+ - **Context & Plurals:** Identifies and resolves suffix formats like `key_male` and `key_one`/`key_other` evaluating against standard `Intl.PluralRules`.
59
+ - **Return objects:** The `returnObjects: true` mode safely extracts trees from Intlayer dictionaries.
@@ -0,0 +1,51 @@
1
+ ---
2
+ createdAt: 2026-06-13
3
+ updatedAt: 2026-06-13
4
+ title: "Intlayer Compat Adapters"
5
+ description: "Migrate your existing i18n solution to Intlayer with zero friction using compat adapters."
6
+ keywords:
7
+ - compat
8
+ - migration
9
+ - internationalization
10
+ - i18n
11
+ - Intlayer
12
+ slugs:
13
+ - doc
14
+ - compatibility
15
+ history:
16
+ - version: 9.0.0
17
+ date: 2026-06-13
18
+ changes: "Init history"
19
+ author: aymericzip
20
+ ---
21
+
22
+ # Intlayer Compat Adapters
23
+
24
+ Migrating a large application to a new internationalization library can be daunting. To ease this transition, Intlayer provides **compat adapters** for the most popular i18n libraries in the ecosystem.
25
+
26
+ These adapter packages expose the **exact same public API** as your existing i18n libraries, but delegate all translation work to Intlayer at runtime.
27
+
28
+ ## How it works
29
+
30
+ When you use a compat adapter, you do not need to rewrite your application's imports or change how you use your translation hooks and components. Instead, Intlayer's bundler plugins automatically alias your existing imports to the Intlayer compat packages.
31
+
32
+ For example, a developer replaces `import { useTranslation } from 'react-i18next'` with `import { useTranslation } from '@intlayer/react-i18next'` (done automatically via the bundler plugin), and the app keeps working with translations now served from Intlayer dictionaries. Keys are also typed against your Intlayer dictionaries!
33
+
34
+ ## Available Compat Adapters
35
+
36
+ Choose your existing library below to see how to migrate seamlessly:
37
+
38
+ - [Vue I18n](./vue-i18n.md)
39
+ - [Transloco](./transloco.md)
40
+ - [React Intl](./react-intl.md)
41
+ - [Svelte I18n](./svelte-i18n.md)
42
+ - [React i18next](./react-i18next.md)
43
+ - [Polyglot.js](./polyglot.md)
44
+ - [NuxtJS I18n](./nuxtjs-i18n.md)
45
+ - [NGX Translate](./ngx-translate.md)
46
+ - [Next Translate](./next-translate.md)
47
+ - [Next Intl](./next-intl.md)
48
+ - [Next i18next](./next-i18next.md)
49
+ - [i18next](./i18next.md)
50
+ - [Lingui](./lingui.md)
51
+ - [I18n-js](./i18n-js.md)
@@ -0,0 +1,44 @@
1
+ ---
2
+ createdAt: 2026-06-13
3
+ updatedAt: 2026-06-13
4
+ title: "Migrate from Lingui to Intlayer"
5
+ description: "Learn how to migrate your application from Lingui to Intlayer using the compat adapter."
6
+ keywords:
7
+ - lingui
8
+ - intlayer
9
+ - migration
10
+ - compat
11
+ slugs:
12
+ - doc
13
+ - compatibility
14
+ - lingui
15
+ history:
16
+ - version: 9.0.0
17
+ date: 2026-06-13
18
+ changes: "Init history"
19
+ author: aymericzip
20
+ ---
21
+
22
+ # Migrate from Lingui to Intlayer
23
+
24
+ If your project currently relies on Lingui's macro-based compilation, transitioning to Intlayer allows you to maintain your powerful macro workflows while backing them natively with Intlayer's JSON compilation strategy.
25
+
26
+ ## What to do
27
+
28
+ To begin, initialize Intlayer in your project:
29
+
30
+ ```bash
31
+ npx intlayer init
32
+ ```
33
+
34
+ This creates your `intlayer.config.ts`. Ensure you retain `@lingui/babel-plugin-lingui-macro` / `@lingui/swc-plugin` in your build step to run _before_ the Intlayer compiler. Then, use the bundler plugin alias to route `@lingui/core` and `@lingui/react` to `@intlayer/lingui`.
35
+
36
+ ## What it does under the hood
37
+
38
+ Lingui utilizes macros (like `` t`Hello ${name}` `` and `<Trans>`) which are compiled into runtime calls like `i18n._(id, values)`.
39
+
40
+ Under the hood:
41
+
42
+ - **Macros:** They compile precisely as they did before, ensuring no disruption in your source syntax.
43
+ - **Runtime translation:** The aliased `i18n._()` uses Intlayer dictionaries. Both explicitly named IDs and hashed IDs are fully mapped using Intlayer's `.po` sync plugins to aggregate and prune keys securely.
44
+ - **ICU capabilities:** Support for pluralization, selection, and ICU variants remains robust due to Intlayer's unified ICU parser, ensuring identical rendering outputs.
@@ -0,0 +1,57 @@
1
+ ---
2
+ createdAt: 2026-06-13
3
+ updatedAt: 2026-06-13
4
+ title: "Migrate from next-i18next to Intlayer"
5
+ description: "Learn how to migrate your Next.js application from next-i18next to Intlayer using the compat adapter."
6
+ keywords:
7
+ - next-i18next
8
+ - nextjs
9
+ - intlayer
10
+ - migration
11
+ - compat
12
+ slugs:
13
+ - doc
14
+ - compatibility
15
+ - next-i18next
16
+ history:
17
+ - version: 9.0.0
18
+ date: 2026-06-13
19
+ changes: "Init history"
20
+ author: aymericzip
21
+ ---
22
+
23
+ # Migrate from next-i18next to Intlayer
24
+
25
+ For a complete and detailed step-by-step tutorial, please see our full [next-i18next Migration Guide](../migration_from_next-i18next_to_intlayer.md).
26
+
27
+ Intlayer handles all Next.js Pages Router and App Router implementations transparently. Using the adapter lets you migrate your `next-i18next` implementation with zero code rewrite.
28
+
29
+ ## What to do
30
+
31
+ To begin, run:
32
+
33
+ ```bash
34
+ npx intlayer init
35
+ ```
36
+
37
+ This creates the required Intlayer setup file. To swap to Intlayer behind the scenes, update your `next.config.ts`:
38
+
39
+ ```typescript fileName="next.config.ts"
40
+ import type { NextConfig } from "next";
41
+ import { createNextI18nPlugin } from "@intlayer/next-i18next/plugin";
42
+
43
+ const withIntlayer = createNextI18nPlugin();
44
+
45
+ const nextConfig: NextConfig = {};
46
+
47
+ export default withIntlayer(nextConfig);
48
+ ```
49
+
50
+ ## What it does under the hood
51
+
52
+ The `createNextI18nPlugin` composes Next.js's native behavior alongside the core `next-intlayer` plugin, injecting all required Webpack/Turbopack aliases for `next-i18next`, `react-i18next`, and `i18next`.
53
+
54
+ Under the hood:
55
+
56
+ - **`serverSideTranslations` & `appWithTranslation`:** They now function as wrappers for Intlayer's internal loaders, circumventing large static JSON injection.
57
+ - **Client hooks:** Delegates immediately to `@intlayer/react-i18next` retaining all formatting, plurals, and nested namespace features.
@@ -0,0 +1,59 @@
1
+ ---
2
+ createdAt: 2026-06-13
3
+ updatedAt: 2026-06-13
4
+ title: "Migrate from next-intl to Intlayer"
5
+ description: "Learn how to migrate your Next.js application from next-intl to Intlayer using the compat adapter."
6
+ keywords:
7
+ - next-intl
8
+ - nextjs
9
+ - intlayer
10
+ - migration
11
+ - compat
12
+ slugs:
13
+ - doc
14
+ - compatibility
15
+ - next-intl
16
+ history:
17
+ - version: 9.0.0
18
+ date: 2026-06-13
19
+ changes: "Init history"
20
+ author: aymericzip
21
+ ---
22
+
23
+ # Migrate from next-intl to Intlayer
24
+
25
+ For a complete and detailed step-by-step tutorial, please see our full [next-intl Migration Guide](../migration_from_next-intl_to_intlayer.md).
26
+
27
+ Migrating from `next-intl` to Intlayer allows you to maintain your application routing and syntax completely undisturbed.
28
+
29
+ ## What to do
30
+
31
+ Execute the following command in your repository:
32
+
33
+ ```bash
34
+ npx intlayer init
35
+ ```
36
+
37
+ This will create an `intlayer.config.ts`. In your `next.config.ts`, use the plugin wrapper to seamlessly inject the `next-intl` aliases towards `@intlayer/next-intl`.
38
+
39
+ ```typescript fileName="next.config.ts"
40
+ import type { NextConfig } from "next";
41
+ import { createNextIntlPlugin } from "@intlayer/next-intl/plugin";
42
+
43
+ const withIntlayer = createNextIntlPlugin();
44
+
45
+ const nextConfig: NextConfig = {};
46
+
47
+ export default withIntlayer(nextConfig);
48
+ ```
49
+
50
+ ## What it does under the hood
51
+
52
+ The bundler wrapper replaces translations, but **leaves the `next-intl/navigation` features intact** (e.g. `Link`, `redirect`, `usePathname`).
53
+
54
+ Under the hood:
55
+
56
+ - **ICU runtime:** Plurals (`=0`, `one`, `other`), select/selectordinal, `#` arguments, and formatted args (`{ts, date, long}`) run correctly using the shared `resolveMessage(..., 'icu')` resolver.
57
+ - **`useTranslations()` & `getTranslations()`:** The bare scope calls extract the first key segment as the correct dictionary identifier. Nested namespaces gracefully split into dictionary paths and prefixes.
58
+ - **Rich formatting:** Both `t.rich()` and `t.markup()` are fully natively implemented, converting HTML-like nodes into rendered React chunks.
59
+ - **`useFormatter`:** `relativeTime`, `list`, `dateTimeRange`, and named formats from the configuration bridge to the core native `Intl` formatters.
@@ -0,0 +1,45 @@
1
+ ---
2
+ createdAt: 2026-06-13
3
+ updatedAt: 2026-06-13
4
+ title: "Migrate from Next Translate to Intlayer"
5
+ description: "Learn how to migrate your Next.js application from next-translate to Intlayer using the compat adapter."
6
+ keywords:
7
+ - next-translate
8
+ - nextjs
9
+ - intlayer
10
+ - migration
11
+ - compat
12
+ slugs:
13
+ - doc
14
+ - compatibility
15
+ - next-translate
16
+ history:
17
+ - version: 9.0.0
18
+ date: 2026-06-13
19
+ changes: "Init history"
20
+ author: aymericzip
21
+ ---
22
+
23
+ # Migrate from Next Translate to Intlayer
24
+
25
+ Migrating from `next-translate` to Intlayer is a near drop-in replacement that retains your existing syntax and tags.
26
+
27
+ ## What to do
28
+
29
+ Initialize Intlayer in your project:
30
+
31
+ ```bash
32
+ npx intlayer init
33
+ ```
34
+
35
+ The CLI will scaffold your configuration. You can then apply the Intlayer plugin in your `next.config.ts`, which injects build-time subpath aliases mapping `next-translate/useTranslation` to `@intlayer/next-translate`.
36
+
37
+ ## What it does under the hood
38
+
39
+ `next-translate` provides hooks like `useTranslation('ns')`, `t('ns:key.path')`, and the `<Trans>` component.
40
+
41
+ Under the hood:
42
+
43
+ - **Interpolation & Plurals:** It relies closely on the `react-i18next` adapter behavior. Handled dynamically are `{{var}}` placeholders and pluralization mapped from suffixes like `key_0`, `key_one`, and `key_other`.
44
+ - **`<Trans>` component:** Directly supported for HTML-ish tag parsing alongside an array-based `components` prop.
45
+ - **Namespaces:** Subpath aliasing ensures that your `useTranslation` references the correct internal dictionary namespaces without manual modification.
@@ -0,0 +1,45 @@
1
+ ---
2
+ createdAt: 2026-06-13
3
+ updatedAt: 2026-06-13
4
+ title: "Migrate from NGX-Translate to Intlayer"
5
+ description: "Learn how to migrate your Angular application from ngx-translate to Intlayer using the compat adapter."
6
+ keywords:
7
+ - ngx-translate
8
+ - angular
9
+ - intlayer
10
+ - migration
11
+ - compat
12
+ slugs:
13
+ - doc
14
+ - compatibility
15
+ - ngx-translate
16
+ history:
17
+ - version: 9.0.0
18
+ date: 2026-06-13
19
+ changes: "Init history"
20
+ author: aymericzip
21
+ ---
22
+
23
+ # Migrate from NGX-Translate to Intlayer
24
+
25
+ Migrating your Angular application from `ngx-translate` to Intlayer is easy with the compat adapter, allowing you to bypass the need to rewrite all your templates.
26
+
27
+ ## What to do
28
+
29
+ Begin by running:
30
+
31
+ ```bash
32
+ npx intlayer init
33
+ ```
34
+
35
+ This sets up the `intlayer.config.ts`. Replace your `TranslateModule.forRoot()` setups and import aliases appropriately to point to `@intlayer/ngx-translate`.
36
+
37
+ ## What it does under the hood
38
+
39
+ `ngx-translate` uses `TranslateService` (`instant`, `get`, `stream`) alongside the `{{ 'KEY' | translate:params }}` pipe and the `[translate]` directive.
40
+
41
+ Under the hood:
42
+
43
+ - **Services:** `TranslateService` wraps `getIntlayer` and a locale observable, providing exactly the same methods.
44
+ - **Pipes & Directives:** Re-implemented to resolve against Intlayer dictionaries directly.
45
+ - **Loaders:** `TranslateHttpLoader` setups are converted to warning stubs because Intlayer inherently resolves and bundles your dictionaries at build time (or through standard dynamic imports), completely eliminating the need for HTTP loaders.
@@ -0,0 +1,46 @@
1
+ ---
2
+ createdAt: 2026-06-13
3
+ updatedAt: 2026-06-13
4
+ title: "Migrate from NuxtJS I18n to Intlayer"
5
+ description: "Learn how to migrate your Nuxt.js application from @nuxtjs/i18n to Intlayer using the compat adapter."
6
+ keywords:
7
+ - nuxtjs-i18n
8
+ - nuxt
9
+ - vue
10
+ - intlayer
11
+ - migration
12
+ - compat
13
+ slugs:
14
+ - doc
15
+ - compatibility
16
+ - nuxtjs-i18n
17
+ history:
18
+ - version: 9.0.0
19
+ date: 2026-06-13
20
+ changes: "Init history"
21
+ author: aymericzip
22
+ ---
23
+
24
+ # Migrate from NuxtJS I18n to Intlayer
25
+
26
+ Migrating your Nuxt application from `@nuxtjs/i18n` to Intlayer is a seamless process using the Nuxt adapter module.
27
+
28
+ ## What to do
29
+
30
+ To initialize the project, run:
31
+
32
+ ```bash
33
+ npx intlayer init
34
+ ```
35
+
36
+ This will set up `intlayer.config.ts`. Then, add the Intlayer Nuxt module (e.g. `@intlayer/nuxt-i18n`) in your `nuxt.config.ts` modules array. This automatically applies the compat configuration for your application.
37
+
38
+ ## What it does under the hood
39
+
40
+ `@nuxtjs/i18n` wraps `vue-i18n` while providing Nuxt-specific routing composables (`useLocalePath`, `useSwitchLocalePath`, `<NuxtLinkLocale>`).
41
+
42
+ Under the hood:
43
+
44
+ - **Translations:** Relies natively on the `@intlayer/vue-i18n` compat layer for all string translation tasks (fully supporting `vue-i18n` formats, pipe plurals, and reactivity).
45
+ - **Routing:** Mirrors the routing composables using Intlayer's localized URL helpers.
46
+ - **Configuration:** Reads the `availableLocales` and default settings straight from your `intlayer.config.ts` to coordinate Nuxt pages automatically.
@@ -0,0 +1,45 @@
1
+ ---
2
+ createdAt: 2026-06-13
3
+ updatedAt: 2026-06-13
4
+ title: "Migrate from Polyglot.js to Intlayer"
5
+ description: "Learn how to migrate from Polyglot.js to Intlayer using the compat adapter."
6
+ keywords:
7
+ - polyglot
8
+ - airbnb
9
+ - intlayer
10
+ - migration
11
+ - compat
12
+ slugs:
13
+ - doc
14
+ - compatibility
15
+ - polyglot
16
+ history:
17
+ - version: 9.0.0
18
+ date: 2026-06-13
19
+ changes: "Init history"
20
+ author: aymericzip
21
+ ---
22
+
23
+ # Migrate from Polyglot.js to Intlayer
24
+
25
+ If you are using Airbnb's Polyglot.js, migrating to Intlayer is extremely straightforward using the compat layer.
26
+
27
+ ## What to do
28
+
29
+ Simply run the initialization command in your project:
30
+
31
+ ```bash
32
+ npx intlayer init
33
+ ```
34
+
35
+ This generates `intlayer.config.ts`. You can then utilize the bundler plugin alias to transparently redirect Polyglot imports to `@intlayer/polyglot`.
36
+
37
+ ## What it does under the hood
38
+
39
+ Polyglot.js syntax typically relies on `polyglot.t('key', {name})` with `%{name}` interpolations and `smart_count` plurals separated by `"singular |||| plural"`.
40
+
41
+ Under the hood:
42
+
43
+ - **Interpolation:** The compat layer handles `%{var}` placeholders natively.
44
+ - **Plurals:** The string is split at `||||` and evaluated against native `Intl.PluralRules` according to the active locale, mirroring Polyglot's own bucket order per locale.
45
+ - **Dictionaries:** You bypass the need to provide huge JSON configurations to `new Polyglot()` – Intlayer handles the dictionaries dynamically and prunes them automatically.