@intlayer/docs 5.5.11 → 5.6.0

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 (494) hide show
  1. package/blog/ar/intlayer_with_next-intl.md +0 -1
  2. package/blog/ar/list_i18n_technologies/CMS/wordpress.md +1 -1
  3. package/blog/ar/list_i18n_technologies/frameworks/angular.md +1 -1
  4. package/blog/ar/list_i18n_technologies/frameworks/flutter.md +1 -1
  5. package/blog/ar/list_i18n_technologies/frameworks/react-native.md +1 -1
  6. package/blog/ar/list_i18n_technologies/frameworks/react.md +1 -1
  7. package/blog/ar/list_i18n_technologies/frameworks/svelte.md +1 -1
  8. package/blog/ar/list_i18n_technologies/frameworks/vue.md +1 -1
  9. package/blog/ar/what_is_internationalization.md +2 -2
  10. package/blog/de/intlayer_with_next-intl.md +0 -1
  11. package/blog/de/list_i18n_technologies/CMS/wordpress.md +1 -1
  12. package/blog/de/list_i18n_technologies/frameworks/angular.md +1 -1
  13. package/blog/de/list_i18n_technologies/frameworks/flutter.md +1 -1
  14. package/blog/de/list_i18n_technologies/frameworks/react-native.md +1 -1
  15. package/blog/de/list_i18n_technologies/frameworks/react.md +1 -1
  16. package/blog/de/list_i18n_technologies/frameworks/svelte.md +1 -1
  17. package/blog/de/list_i18n_technologies/frameworks/vue.md +1 -1
  18. package/blog/de/what_is_internationalization.md +2 -2
  19. package/blog/en/intlayer_with_next-intl.md +0 -1
  20. package/blog/en/list_i18n_technologies/CMS/wordpress.md +1 -1
  21. package/blog/en/list_i18n_technologies/frameworks/angular.md +1 -1
  22. package/blog/en/list_i18n_technologies/frameworks/flutter.md +1 -1
  23. package/blog/en/list_i18n_technologies/frameworks/react-native.md +1 -1
  24. package/blog/en/list_i18n_technologies/frameworks/react.md +1 -1
  25. package/blog/en/list_i18n_technologies/frameworks/svelte.md +1 -1
  26. package/blog/en/list_i18n_technologies/frameworks/vue.md +1 -1
  27. package/blog/en/what_is_internationalization.md +2 -2
  28. package/blog/en-GB/intlayer_with_next-intl.md +0 -1
  29. package/blog/en-GB/list_i18n_technologies/CMS/wordpress.md +1 -1
  30. package/blog/en-GB/list_i18n_technologies/frameworks/angular.md +1 -1
  31. package/blog/en-GB/list_i18n_technologies/frameworks/flutter.md +1 -1
  32. package/blog/en-GB/list_i18n_technologies/frameworks/react-native.md +1 -1
  33. package/blog/en-GB/list_i18n_technologies/frameworks/svelte.md +1 -1
  34. package/blog/en-GB/list_i18n_technologies/frameworks/vue.md +1 -1
  35. package/blog/en-GB/what_is_internationalization.md +2 -2
  36. package/blog/es/intlayer_with_next-intl.md +0 -1
  37. package/blog/es/list_i18n_technologies/CMS/wordpress.md +1 -1
  38. package/blog/es/list_i18n_technologies/frameworks/angular.md +1 -1
  39. package/blog/es/list_i18n_technologies/frameworks/flutter.md +1 -1
  40. package/blog/es/list_i18n_technologies/frameworks/react-native.md +1 -1
  41. package/blog/es/list_i18n_technologies/frameworks/react.md +1 -1
  42. package/blog/es/list_i18n_technologies/frameworks/svelte.md +1 -1
  43. package/blog/es/list_i18n_technologies/frameworks/vue.md +1 -1
  44. package/blog/es/what_is_internationalization.md +2 -2
  45. package/blog/fr/intlayer_with_next-intl.md +0 -1
  46. package/blog/fr/list_i18n_technologies/CMS/wordpress.md +1 -1
  47. package/blog/fr/list_i18n_technologies/frameworks/angular.md +1 -1
  48. package/blog/fr/list_i18n_technologies/frameworks/flutter.md +1 -1
  49. package/blog/fr/list_i18n_technologies/frameworks/react-native.md +1 -1
  50. package/blog/fr/list_i18n_technologies/frameworks/react.md +1 -1
  51. package/blog/fr/list_i18n_technologies/frameworks/svelte.md +1 -1
  52. package/blog/fr/list_i18n_technologies/frameworks/vue.md +1 -1
  53. package/blog/fr/what_is_internationalization.md +2 -2
  54. package/blog/hi/list_i18n_technologies/CMS/wordpress.md +1 -1
  55. package/blog/hi/list_i18n_technologies/frameworks/angular.md +1 -1
  56. package/blog/hi/list_i18n_technologies/frameworks/flutter.md +1 -1
  57. package/blog/hi/list_i18n_technologies/frameworks/react-native.md +1 -1
  58. package/blog/hi/list_i18n_technologies/frameworks/react.md +1 -1
  59. package/blog/hi/list_i18n_technologies/frameworks/svelte.md +1 -1
  60. package/blog/hi/list_i18n_technologies/frameworks/vue.md +1 -1
  61. package/blog/hi/what_is_internationalization.md +2 -2
  62. package/blog/it/intlayer_with_next-intl.md +0 -1
  63. package/blog/it/list_i18n_technologies/CMS/wordpress.md +1 -1
  64. package/blog/it/list_i18n_technologies/frameworks/angular.md +1 -1
  65. package/blog/it/list_i18n_technologies/frameworks/react-native.md +1 -1
  66. package/blog/it/list_i18n_technologies/frameworks/react.md +1 -1
  67. package/blog/it/list_i18n_technologies/frameworks/svelte.md +1 -1
  68. package/blog/it/list_i18n_technologies/frameworks/vue.md +1 -1
  69. package/blog/it/what_is_internationalization.md +2 -2
  70. package/blog/ja/intlayer_with_next-intl.md +0 -1
  71. package/blog/ja/list_i18n_technologies/CMS/wordpress.md +1 -1
  72. package/blog/ja/list_i18n_technologies/frameworks/angular.md +1 -1
  73. package/blog/ja/list_i18n_technologies/frameworks/flutter.md +1 -1
  74. package/blog/ja/list_i18n_technologies/frameworks/react-native.md +1 -1
  75. package/blog/ja/list_i18n_technologies/frameworks/react.md +1 -1
  76. package/blog/ja/list_i18n_technologies/frameworks/svelte.md +1 -1
  77. package/blog/ja/list_i18n_technologies/frameworks/vue.md +1 -1
  78. package/blog/ja/what_is_internationalization.md +2 -2
  79. package/blog/ko/intlayer_with_next-intl.md +0 -1
  80. package/blog/ko/list_i18n_technologies/CMS/wordpress.md +1 -1
  81. package/blog/ko/list_i18n_technologies/frameworks/angular.md +1 -1
  82. package/blog/ko/list_i18n_technologies/frameworks/react-native.md +1 -1
  83. package/blog/ko/list_i18n_technologies/frameworks/react.md +1 -1
  84. package/blog/ko/list_i18n_technologies/frameworks/vue.md +1 -1
  85. package/blog/pt/intlayer_with_next-intl.md +0 -1
  86. package/blog/pt/list_i18n_technologies/CMS/wordpress.md +1 -1
  87. package/blog/pt/list_i18n_technologies/frameworks/angular.md +1 -1
  88. package/blog/pt/list_i18n_technologies/frameworks/flutter.md +1 -1
  89. package/blog/pt/list_i18n_technologies/frameworks/react-native.md +1 -1
  90. package/blog/pt/list_i18n_technologies/frameworks/react.md +1 -1
  91. package/blog/pt/list_i18n_technologies/frameworks/svelte.md +1 -1
  92. package/blog/pt/list_i18n_technologies/frameworks/vue.md +1 -1
  93. package/blog/pt/what_is_internationalization.md +2 -2
  94. package/blog/ru/intlayer_with_next-intl.md +0 -1
  95. package/blog/ru/list_i18n_technologies/CMS/wordpress.md +1 -1
  96. package/blog/ru/list_i18n_technologies/frameworks/angular.md +1 -1
  97. package/blog/ru/list_i18n_technologies/frameworks/flutter.md +1 -1
  98. package/blog/ru/list_i18n_technologies/frameworks/react-native.md +1 -1
  99. package/blog/ru/list_i18n_technologies/frameworks/react.md +1 -1
  100. package/blog/ru/list_i18n_technologies/frameworks/svelte.md +1 -1
  101. package/blog/ru/list_i18n_technologies/frameworks/vue.md +1 -1
  102. package/blog/ru/what_is_internationalization.md +2 -2
  103. package/blog/zh/intlayer_with_next-intl.md +0 -1
  104. package/blog/zh/list_i18n_technologies/CMS/wordpress.md +1 -1
  105. package/blog/zh/list_i18n_technologies/frameworks/angular.md +1 -1
  106. package/blog/zh/list_i18n_technologies/frameworks/flutter.md +1 -1
  107. package/blog/zh/list_i18n_technologies/frameworks/react-native.md +1 -1
  108. package/blog/zh/list_i18n_technologies/frameworks/react.md +1 -1
  109. package/blog/zh/list_i18n_technologies/frameworks/svelte.md +1 -1
  110. package/blog/zh/list_i18n_technologies/frameworks/vue.md +1 -1
  111. package/blog/zh/what_is_internationalization.md +2 -2
  112. package/dist/cjs/blog.cjs +2 -2
  113. package/dist/cjs/blog.cjs.map +1 -1
  114. package/dist/cjs/common.cjs +17 -6
  115. package/dist/cjs/common.cjs.map +1 -1
  116. package/dist/cjs/doc.cjs +2 -2
  117. package/dist/cjs/doc.cjs.map +1 -1
  118. package/dist/cjs/frequentQuestions.cjs +2 -2
  119. package/dist/cjs/frequentQuestions.cjs.map +1 -1
  120. package/dist/cjs/generated/blog.entry.cjs +1152 -252
  121. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  122. package/dist/cjs/generated/docs.entry.cjs +3778 -1124
  123. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  124. package/dist/cjs/generated/frequentQuestions.entry.cjs +794 -161
  125. package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
  126. package/dist/cjs/generated/legal.entry.cjs +32 -31
  127. package/dist/cjs/generated/legal.entry.cjs.map +1 -1
  128. package/dist/cjs/legal.cjs +2 -2
  129. package/dist/cjs/legal.cjs.map +1 -1
  130. package/dist/esm/blog.mjs +2 -2
  131. package/dist/esm/blog.mjs.map +1 -1
  132. package/dist/esm/common.mjs +17 -6
  133. package/dist/esm/common.mjs.map +1 -1
  134. package/dist/esm/doc.mjs +2 -2
  135. package/dist/esm/doc.mjs.map +1 -1
  136. package/dist/esm/frequentQuestions.mjs +2 -2
  137. package/dist/esm/frequentQuestions.mjs.map +1 -1
  138. package/dist/esm/generated/blog.entry.mjs +1151 -252
  139. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  140. package/dist/esm/generated/docs.entry.mjs +3777 -1124
  141. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  142. package/dist/esm/generated/frequentQuestions.entry.mjs +793 -161
  143. package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
  144. package/dist/esm/generated/legal.entry.mjs +31 -31
  145. package/dist/esm/generated/legal.entry.mjs.map +1 -1
  146. package/dist/esm/legal.mjs +2 -2
  147. package/dist/esm/legal.mjs.map +1 -1
  148. package/dist/types/blog.d.ts +2 -2
  149. package/dist/types/blog.d.ts.map +1 -1
  150. package/dist/types/common.d.ts +5 -2
  151. package/dist/types/common.d.ts.map +1 -1
  152. package/dist/types/doc.d.ts +2 -2
  153. package/dist/types/doc.d.ts.map +1 -1
  154. package/dist/types/frequentQuestions.d.ts +2 -2
  155. package/dist/types/frequentQuestions.d.ts.map +1 -1
  156. package/dist/types/generated/blog.entry.d.ts.map +1 -1
  157. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  158. package/dist/types/generated/frequentQuestions.entry.d.ts +1 -0
  159. package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
  160. package/dist/types/generated/legal.entry.d.ts.map +1 -1
  161. package/dist/types/legal.d.ts +2 -2
  162. package/dist/types/legal.d.ts.map +1 -1
  163. package/docs/ar/intlayer_CMS.md +1 -0
  164. package/docs/ar/intlayer_cli.md +292 -177
  165. package/docs/ar/intlayer_visual_editor.md +1 -0
  166. package/docs/ar/intlayer_with_angular.md +1 -0
  167. package/docs/ar/intlayer_with_create_react_app.md +1 -0
  168. package/docs/ar/intlayer_with_lynx+react.md +1 -0
  169. package/docs/ar/intlayer_with_nextjs_14.md +1 -0
  170. package/docs/ar/intlayer_with_nextjs_15.md +3 -1
  171. package/docs/ar/intlayer_with_nuxt.md +1 -0
  172. package/docs/ar/intlayer_with_react_native+expo.md +1 -0
  173. package/docs/ar/intlayer_with_vite+preact.md +4 -3
  174. package/docs/ar/intlayer_with_vite+react.md +108 -112
  175. package/docs/ar/intlayer_with_vite+solid.md +4 -3
  176. package/docs/ar/intlayer_with_vite+svelte.md +4 -3
  177. package/docs/ar/intlayer_with_vite+vue.md +5 -4
  178. package/docs/ar/mcp_server.md +126 -92
  179. package/docs/de/intlayer_CMS.md +1 -0
  180. package/docs/de/intlayer_cli.md +291 -171
  181. package/docs/de/intlayer_visual_editor.md +1 -0
  182. package/docs/de/intlayer_with_angular.md +1 -0
  183. package/docs/de/intlayer_with_create_react_app.md +1 -0
  184. package/docs/de/intlayer_with_lynx+react.md +1 -0
  185. package/docs/de/intlayer_with_nextjs_14.md +1 -0
  186. package/docs/de/intlayer_with_nextjs_15.md +3 -1
  187. package/docs/de/intlayer_with_nuxt.md +1 -0
  188. package/docs/de/intlayer_with_react_native+expo.md +1 -0
  189. package/docs/de/intlayer_with_vite+preact.md +4 -3
  190. package/docs/de/intlayer_with_vite+react.md +128 -146
  191. package/docs/de/intlayer_with_vite+solid.md +4 -3
  192. package/docs/de/intlayer_with_vite+svelte.md +4 -3
  193. package/docs/de/intlayer_with_vite+vue.md +5 -4
  194. package/docs/de/mcp_server.md +116 -112
  195. package/docs/en/CI_CD.md +3 -1
  196. package/docs/en/autoFill.md +3 -1
  197. package/docs/en/configuration.md +7 -3
  198. package/docs/en/dictionary/condition.md +3 -1
  199. package/docs/en/dictionary/content_extention_customization.md +3 -1
  200. package/docs/en/dictionary/enumeration.md +3 -1
  201. package/docs/en/dictionary/file.md +3 -1
  202. package/docs/en/dictionary/function_fetching.md +3 -1
  203. package/docs/en/dictionary/get_started.md +3 -1
  204. package/docs/en/dictionary/insertion.md +3 -1
  205. package/docs/en/dictionary/markdown.md +3 -1
  206. package/docs/en/dictionary/nesting.md +3 -1
  207. package/docs/en/dictionary/translation.md +3 -1
  208. package/docs/en/how_works_intlayer.md +3 -1
  209. package/docs/en/index.md +3 -1
  210. package/docs/en/interest_of_intlayer.md +3 -1
  211. package/docs/en/intlayer_CMS.md +4 -1
  212. package/docs/en/intlayer_cli.md +246 -136
  213. package/docs/en/intlayer_visual_editor.md +4 -1
  214. package/docs/en/intlayer_with_angular.md +4 -1
  215. package/docs/en/intlayer_with_create_react_app.md +4 -1
  216. package/docs/en/intlayer_with_express.md +3 -1
  217. package/docs/en/intlayer_with_lynx+react.md +4 -1
  218. package/docs/en/intlayer_with_nextjs_14.md +7 -1
  219. package/docs/en/intlayer_with_nextjs_15.md +8 -2
  220. package/docs/en/intlayer_with_nextjs_page_router.md +5 -1
  221. package/docs/en/intlayer_with_nuxt.md +4 -1
  222. package/docs/en/intlayer_with_react_native+expo.md +4 -1
  223. package/docs/en/intlayer_with_vite+preact.md +9 -4
  224. package/docs/en/intlayer_with_vite+react.md +18 -10
  225. package/docs/en/intlayer_with_vite+solid.md +7 -4
  226. package/docs/en/intlayer_with_vite+svelte.md +7 -4
  227. package/docs/en/intlayer_with_vite+vue.md +10 -5
  228. package/docs/en/introduction.md +3 -1
  229. package/docs/en/mcp_server.md +114 -80
  230. package/docs/en/packages/@intlayer/api/index.md +3 -1
  231. package/docs/en/packages/@intlayer/chokidar/index.md +3 -1
  232. package/docs/en/packages/@intlayer/cli/index.md +3 -1
  233. package/docs/en/packages/@intlayer/config/index.md +3 -1
  234. package/docs/en/packages/@intlayer/core/index.md +3 -1
  235. package/docs/en/packages/@intlayer/design-system/index.md +3 -1
  236. package/docs/en/packages/@intlayer/dictionary-entry/index.md +3 -1
  237. package/docs/en/packages/@intlayer/editor/index.md +3 -1
  238. package/docs/en/packages/@intlayer/editor-react/index.md +3 -1
  239. package/docs/en/packages/@intlayer/webpack/index.md +3 -1
  240. package/docs/en/packages/angular-intlayer/index.md +3 -1
  241. package/docs/en/packages/express-intlayer/index.md +3 -1
  242. package/docs/en/packages/express-intlayer/t.md +3 -1
  243. package/docs/en/packages/intlayer/getConfiguration.md +3 -1
  244. package/docs/en/packages/intlayer/getEnumeration.md +3 -1
  245. package/docs/en/packages/intlayer/getHTMLTextDir.md +3 -1
  246. package/docs/en/packages/intlayer/getLocaleLang.md +3 -1
  247. package/docs/en/packages/intlayer/getLocaleName.md +3 -1
  248. package/docs/en/packages/intlayer/getLocalizedUrl.md +3 -1
  249. package/docs/en/packages/intlayer/getMultilingualUrls.md +3 -1
  250. package/docs/en/packages/intlayer/getPathWithoutLocale.md +3 -1
  251. package/docs/en/packages/intlayer/getTranslation.md +3 -1
  252. package/docs/en/packages/intlayer/getTranslationContent.md +3 -1
  253. package/docs/en/packages/intlayer/index.md +3 -1
  254. package/docs/en/packages/intlayer-cli/index.md +3 -1
  255. package/docs/en/packages/intlayer-editor/index.md +3 -1
  256. package/docs/en/packages/lynx-intlayer/index.md +3 -1
  257. package/docs/en/packages/next-intlayer/index.md +3 -1
  258. package/docs/en/packages/next-intlayer/t.md +3 -1
  259. package/docs/en/packages/next-intlayer/useDictionary.md +3 -1
  260. package/docs/en/packages/next-intlayer/useIntlayer.md +3 -1
  261. package/docs/en/packages/next-intlayer/useIntlayerAsync.md +3 -1
  262. package/docs/en/packages/next-intlayer/useLocale.md +3 -1
  263. package/docs/en/packages/nuxt-intlayer/index.md +3 -1
  264. package/docs/en/packages/preact-intlayer/index.md +3 -1
  265. package/docs/en/packages/react-intlayer/index.md +3 -1
  266. package/docs/en/packages/react-intlayer/t.md +3 -1
  267. package/docs/en/packages/react-intlayer/useDictionary.md +3 -1
  268. package/docs/en/packages/react-intlayer/useIntlayer.md +3 -1
  269. package/docs/en/packages/react-intlayer/useIntlayerAsync.md +3 -1
  270. package/docs/en/packages/react-intlayer/useLocale.md +3 -1
  271. package/docs/en/packages/react-native-intlayer/index.md +3 -1
  272. package/docs/en/packages/react-scripts-intlayer/index.md +3 -1
  273. package/docs/en/packages/solid-intlayer/index.md +3 -1
  274. package/docs/en/packages/svelte-intlayer/index.md +3 -1
  275. package/docs/en/packages/vite-intlayer/index.md +3 -1
  276. package/docs/en/packages/vue-intlayer/index.md +3 -1
  277. package/docs/en/per_locale_file.md +3 -1
  278. package/docs/en/roadmap.md +5 -2
  279. package/docs/en/vs_code_extension.md +3 -1
  280. package/docs/en-GB/intlayer_CMS.md +1 -0
  281. package/docs/en-GB/intlayer_cli.md +257 -138
  282. package/docs/en-GB/intlayer_visual_editor.md +1 -0
  283. package/docs/en-GB/intlayer_with_angular.md +1 -0
  284. package/docs/en-GB/intlayer_with_create_react_app.md +1 -0
  285. package/docs/en-GB/intlayer_with_lynx+react.md +1 -0
  286. package/docs/en-GB/intlayer_with_nextjs_14.md +1 -0
  287. package/docs/en-GB/intlayer_with_nextjs_15.md +3 -1
  288. package/docs/en-GB/intlayer_with_nuxt.md +1 -0
  289. package/docs/en-GB/intlayer_with_react_native+expo.md +1 -0
  290. package/docs/en-GB/intlayer_with_vite+preact.md +4 -3
  291. package/docs/en-GB/intlayer_with_vite+react.md +71 -87
  292. package/docs/en-GB/intlayer_with_vite+solid.md +4 -3
  293. package/docs/en-GB/intlayer_with_vite+svelte.md +4 -3
  294. package/docs/en-GB/intlayer_with_vite+vue.md +5 -4
  295. package/docs/en-GB/mcp_server.md +116 -82
  296. package/docs/es/intlayer_CMS.md +1 -0
  297. package/docs/es/intlayer_cli.md +283 -164
  298. package/docs/es/intlayer_visual_editor.md +1 -0
  299. package/docs/es/intlayer_with_angular.md +1 -0
  300. package/docs/es/intlayer_with_create_react_app.md +1 -0
  301. package/docs/es/intlayer_with_lynx+react.md +1 -0
  302. package/docs/es/intlayer_with_nextjs_14.md +1 -0
  303. package/docs/es/intlayer_with_nextjs_15.md +3 -1
  304. package/docs/es/intlayer_with_nuxt.md +1 -0
  305. package/docs/es/intlayer_with_react_native+expo.md +1 -0
  306. package/docs/es/intlayer_with_vite+preact.md +4 -3
  307. package/docs/es/intlayer_with_vite+react.md +98 -98
  308. package/docs/es/intlayer_with_vite+solid.md +4 -3
  309. package/docs/es/intlayer_with_vite+svelte.md +4 -3
  310. package/docs/es/intlayer_with_vite+vue.md +5 -4
  311. package/docs/es/mcp_server.md +120 -86
  312. package/docs/es/vs_code_extension.md +1 -0
  313. package/docs/fr/intlayer_CMS.md +1 -0
  314. package/docs/fr/intlayer_cli.md +280 -184
  315. package/docs/fr/intlayer_visual_editor.md +1 -0
  316. package/docs/fr/intlayer_with_angular.md +1 -0
  317. package/docs/fr/intlayer_with_create_react_app.md +1 -0
  318. package/docs/fr/intlayer_with_lynx+react.md +1 -0
  319. package/docs/fr/intlayer_with_nextjs_14.md +1 -0
  320. package/docs/fr/intlayer_with_nextjs_15.md +3 -1
  321. package/docs/fr/intlayer_with_nuxt.md +1 -0
  322. package/docs/fr/intlayer_with_react_native+expo.md +1 -0
  323. package/docs/fr/intlayer_with_vite+preact.md +5 -4
  324. package/docs/fr/intlayer_with_vite+react.md +80 -69
  325. package/docs/fr/intlayer_with_vite+solid.md +4 -3
  326. package/docs/fr/intlayer_with_vite+svelte.md +4 -3
  327. package/docs/fr/intlayer_with_vite+vue.md +5 -4
  328. package/docs/fr/mcp_server.md +121 -87
  329. package/docs/hi/intlayer_CMS.md +1 -0
  330. package/docs/hi/intlayer_cli.md +295 -174
  331. package/docs/hi/intlayer_visual_editor.md +1 -0
  332. package/docs/hi/intlayer_with_angular.md +1 -0
  333. package/docs/hi/intlayer_with_create_react_app.md +1 -0
  334. package/docs/hi/intlayer_with_lynx+react.md +1 -0
  335. package/docs/hi/intlayer_with_nextjs_14.md +1 -0
  336. package/docs/hi/intlayer_with_nextjs_15.md +3 -1
  337. package/docs/hi/intlayer_with_nuxt.md +1 -0
  338. package/docs/hi/intlayer_with_react_native+expo.md +1 -0
  339. package/docs/hi/intlayer_with_vite+preact.md +4 -3
  340. package/docs/hi/intlayer_with_vite+react.md +114 -111
  341. package/docs/hi/intlayer_with_vite+solid.md +4 -3
  342. package/docs/hi/intlayer_with_vite+svelte.md +4 -3
  343. package/docs/hi/intlayer_with_vite+vue.md +5 -4
  344. package/docs/hi/mcp_server.md +118 -84
  345. package/docs/it/intlayer_CMS.md +1 -0
  346. package/docs/it/intlayer_cli.md +282 -167
  347. package/docs/it/intlayer_visual_editor.md +1 -0
  348. package/docs/it/intlayer_with_angular.md +1 -0
  349. package/docs/it/intlayer_with_create_react_app.md +1 -0
  350. package/docs/it/intlayer_with_lynx+react.md +1 -0
  351. package/docs/it/intlayer_with_nextjs_14.md +1 -0
  352. package/docs/it/intlayer_with_nextjs_15.md +3 -1
  353. package/docs/it/intlayer_with_nuxt.md +1 -0
  354. package/docs/it/intlayer_with_react_native+expo.md +1 -0
  355. package/docs/it/intlayer_with_vite+preact.md +4 -3
  356. package/docs/it/intlayer_with_vite+react.md +163 -116
  357. package/docs/it/intlayer_with_vite+solid.md +4 -3
  358. package/docs/it/intlayer_with_vite+svelte.md +4 -3
  359. package/docs/it/intlayer_with_vite+vue.md +4 -4
  360. package/docs/it/mcp_server.md +120 -86
  361. package/docs/ja/intlayer_CMS.md +1 -0
  362. package/docs/ja/intlayer_cli.md +285 -168
  363. package/docs/ja/intlayer_visual_editor.md +1 -0
  364. package/docs/ja/intlayer_with_angular.md +1 -0
  365. package/docs/ja/intlayer_with_create_react_app.md +1 -0
  366. package/docs/ja/intlayer_with_lynx+react.md +1 -0
  367. package/docs/ja/intlayer_with_nextjs_14.md +1 -0
  368. package/docs/ja/intlayer_with_nextjs_15.md +3 -1
  369. package/docs/ja/intlayer_with_nuxt.md +1 -0
  370. package/docs/ja/intlayer_with_react_native+expo.md +1 -0
  371. package/docs/ja/intlayer_with_vite+preact.md +4 -3
  372. package/docs/ja/intlayer_with_vite+react.md +160 -222
  373. package/docs/ja/intlayer_with_vite+solid.md +4 -3
  374. package/docs/ja/intlayer_with_vite+svelte.md +4 -3
  375. package/docs/ja/intlayer_with_vite+vue.md +5 -4
  376. package/docs/ja/mcp_server.md +121 -85
  377. package/docs/ko/intlayer_CMS.md +1 -0
  378. package/docs/ko/intlayer_cli.md +291 -175
  379. package/docs/ko/intlayer_visual_editor.md +1 -0
  380. package/docs/ko/intlayer_with_angular.md +1 -0
  381. package/docs/ko/intlayer_with_create_react_app.md +1 -0
  382. package/docs/ko/intlayer_with_lynx+react.md +1 -0
  383. package/docs/ko/intlayer_with_nextjs_14.md +1 -0
  384. package/docs/ko/intlayer_with_nextjs_15.md +3 -1
  385. package/docs/ko/intlayer_with_nuxt.md +1 -0
  386. package/docs/ko/intlayer_with_react_native+expo.md +1 -0
  387. package/docs/ko/intlayer_with_vite+preact.md +4 -3
  388. package/docs/ko/intlayer_with_vite+react.md +123 -152
  389. package/docs/ko/intlayer_with_vite+solid.md +4 -3
  390. package/docs/ko/intlayer_with_vite+svelte.md +4 -3
  391. package/docs/ko/intlayer_with_vite+vue.md +5 -4
  392. package/docs/ko/mcp_server.md +117 -83
  393. package/docs/ko/packages/intlayer/getLocalizedUrl.md +1 -23
  394. package/docs/pt/intlayer_CMS.md +1 -0
  395. package/docs/pt/intlayer_cli.md +274 -154
  396. package/docs/pt/intlayer_visual_editor.md +1 -0
  397. package/docs/pt/intlayer_with_angular.md +1 -0
  398. package/docs/pt/intlayer_with_create_react_app.md +1 -0
  399. package/docs/pt/intlayer_with_lynx+react.md +1 -0
  400. package/docs/pt/intlayer_with_nextjs_14.md +1 -0
  401. package/docs/pt/intlayer_with_nextjs_15.md +3 -1
  402. package/docs/pt/intlayer_with_nuxt.md +1 -0
  403. package/docs/pt/intlayer_with_react_native+expo.md +1 -0
  404. package/docs/pt/intlayer_with_vite+preact.md +4 -3
  405. package/docs/pt/intlayer_with_vite+react.md +117 -136
  406. package/docs/pt/intlayer_with_vite+solid.md +4 -3
  407. package/docs/pt/intlayer_with_vite+svelte.md +4 -3
  408. package/docs/pt/intlayer_with_vite+vue.md +4 -4
  409. package/docs/pt/mcp_server.md +121 -87
  410. package/docs/ru/intlayer_CMS.md +1 -0
  411. package/docs/ru/intlayer_cli.md +287 -170
  412. package/docs/ru/intlayer_visual_editor.md +1 -0
  413. package/docs/ru/intlayer_with_angular.md +1 -0
  414. package/docs/ru/intlayer_with_create_react_app.md +1 -0
  415. package/docs/ru/intlayer_with_lynx+react.md +1 -0
  416. package/docs/ru/intlayer_with_nextjs_14.md +1 -0
  417. package/docs/ru/intlayer_with_nextjs_15.md +3 -1
  418. package/docs/ru/intlayer_with_nuxt.md +1 -0
  419. package/docs/ru/intlayer_with_react_native+expo.md +1 -0
  420. package/docs/ru/intlayer_with_vite+preact.md +4 -3
  421. package/docs/ru/intlayer_with_vite+react.md +105 -87
  422. package/docs/ru/intlayer_with_vite+solid.md +4 -3
  423. package/docs/ru/intlayer_with_vite+svelte.md +4 -3
  424. package/docs/ru/intlayer_with_vite+vue.md +5 -4
  425. package/docs/ru/mcp_server.md +119 -85
  426. package/docs/zh/intlayer_CMS.md +1 -0
  427. package/docs/zh/intlayer_cli.md +275 -155
  428. package/docs/zh/intlayer_visual_editor.md +1 -0
  429. package/docs/zh/intlayer_with_angular.md +1 -0
  430. package/docs/zh/intlayer_with_create_react_app.md +1 -0
  431. package/docs/zh/intlayer_with_lynx+react.md +1 -0
  432. package/docs/zh/intlayer_with_nextjs_14.md +1 -0
  433. package/docs/zh/intlayer_with_nextjs_15.md +3 -1
  434. package/docs/zh/intlayer_with_nuxt.md +1 -0
  435. package/docs/zh/intlayer_with_react_native+expo.md +1 -0
  436. package/docs/zh/intlayer_with_vite+preact.md +4 -3
  437. package/docs/zh/intlayer_with_vite+react.md +154 -188
  438. package/docs/zh/intlayer_with_vite+solid.md +4 -3
  439. package/docs/zh/intlayer_with_vite+svelte.md +4 -3
  440. package/docs/zh/intlayer_with_vite+vue.md +5 -4
  441. package/docs/zh/mcp_server.md +119 -86
  442. package/docs/zh/packages/intlayer/getLocalizedUrl.md +1 -23
  443. package/frequent_questions/ar/build_error_CI_CD.md +75 -0
  444. package/frequent_questions/de/build_error_CI_CD.md +75 -0
  445. package/frequent_questions/en/build_error_CI_CD.md +75 -0
  446. package/frequent_questions/en-GB/build_error_CI_CD.md +75 -0
  447. package/frequent_questions/es/build_error_CI_CD.md +75 -0
  448. package/frequent_questions/fr/build_error_CI_CD.md +75 -0
  449. package/frequent_questions/hi/build_error_CI_CD.md +75 -0
  450. package/frequent_questions/it/build_error_CI_CD.md +75 -0
  451. package/frequent_questions/ja/build_error_CI_CD.md +75 -0
  452. package/frequent_questions/ja/intlayer_command_undefined.md +3 -3
  453. package/frequent_questions/ko/build_error_CI_CD.md +75 -0
  454. package/frequent_questions/ko/intlayer_command_undefined.md +3 -3
  455. package/frequent_questions/pt/build_error_CI_CD.md +75 -0
  456. package/frequent_questions/ru/build_error_CI_CD.md +75 -0
  457. package/frequent_questions/zh/build_error_CI_CD.md +75 -0
  458. package/frequent_questions/zh/intlayer_command_undefined.md +3 -3
  459. package/legal/ar/privacy_notice.md +83 -0
  460. package/legal/ar/terms_of_service.md +55 -0
  461. package/legal/de/privacy_notice.md +83 -0
  462. package/legal/de/terms_of_service.md +55 -0
  463. package/legal/en/privacy_notice.md +83 -0
  464. package/legal/en/terms_of_service.md +55 -0
  465. package/legal/en-GB/privacy_notice.md +83 -0
  466. package/legal/en-GB/terms_of_service.md +55 -0
  467. package/legal/es/privacy_notice.md +83 -0
  468. package/legal/es/terms_of_service.md +55 -0
  469. package/legal/fr/privacy_notice.md +83 -0
  470. package/legal/fr/terms_of_service.md +55 -0
  471. package/legal/hi/privacy_notice.md +83 -0
  472. package/legal/hi/terms_of_service.md +55 -0
  473. package/legal/it/privacy_notice.md +83 -0
  474. package/legal/it/terms_of_service.md +55 -0
  475. package/legal/ja/privacy_notice.md +83 -0
  476. package/legal/ja/terms_of_service.md +55 -0
  477. package/legal/ko/privacy_notice.md +83 -0
  478. package/legal/ko/terms_of_service.md +55 -0
  479. package/legal/pt/privacy_notice.md +83 -0
  480. package/legal/pt/terms_of_service.md +55 -0
  481. package/legal/ru/privacy_notice.md +83 -0
  482. package/legal/ru/terms_of_service.md +55 -0
  483. package/legal/zh/privacy_notice.md +83 -0
  484. package/legal/zh/terms_of_service.md +55 -0
  485. package/package.json +12 -11
  486. package/src/blog.ts +6 -4
  487. package/src/common.ts +25 -7
  488. package/src/doc.ts +6 -4
  489. package/src/frequentQuestions.ts +6 -4
  490. package/src/generated/blog.entry.ts +1177 -280
  491. package/src/generated/docs.entry.ts +3868 -1217
  492. package/src/generated/frequentQuestions.entry.ts +808 -178
  493. package/src/generated/legal.entry.ts +34 -36
  494. package/src/legal.ts +6 -4
@@ -1,24 +1,27 @@
1
1
  ---
2
- createdAt: 2025-03-07
3
- updatedAt: 2025-06-29
4
- title: Translate your React Native and Expo mobile app (i18n)
5
- description: Discover how to make your React Native and Expo mobile app multilingual. Follow the documentation to internationalise (i18n) and translate it.
2
+ createdAt: 2024-03-07
3
+ updatedAt: 2024-03-07
4
+ title: Getting Started with Intlayer in Vite + React
5
+ description: Learn how to add internationalisation (i18n) to your Vite and React application using Intlayer. Follow this guide to make your app multilingual.
6
6
  keywords:
7
7
  - Internationalisation
8
8
  - Documentation
9
9
  - Intlayer
10
10
  - Vite
11
11
  - React
12
- - React Native
12
+ - i18n
13
13
  - JavaScript
14
14
  slugs:
15
15
  - doc
16
16
  - environment
17
- - react-native-and-expo
18
- ---
17
+ - vite-and-react
18
+ applicationTemplate: https://github.com/aymericzip/intlayer-vite-react-template
19
+ youtubeVideo: https://www.youtube.com/watch?v=dS9L7uJeak4---
19
20
 
20
21
  # Getting Started Internationalising (i18n) with Intlayer and Vite and React
21
22
 
23
+ <iframe title="The best i18n solution for Vite and React? Discover Intlayer" class="m-auto aspect-[16/9] w-full overflow-hidden rounded-lg border-0" allow="autoplay; gyroscope;" loading="lazy" width="1080" height="auto" src="https://www.youtube.com/embed/dS9L7uJeak4?si=VaKmrYMmXjo3xpk2"/>
24
+
22
25
  See [Application Template](https://github.com/aymericzip/intlayer-vite-react-template) on GitHub.
23
26
 
24
27
  ## What is Intlayer?
@@ -42,17 +45,17 @@ Install the necessary packages using npm:
42
45
 
43
46
  ```bash packageManager="npm"
44
47
  npm install intlayer react-intlayer
45
- npm install --save-dev vite-intlayer
48
+ npm install vite-intlayer --save-dev
46
49
  ```
47
50
 
48
51
  ```bash packageManager="pnpm"
49
52
  pnpm add intlayer react-intlayer
50
- pnpm add --save-dev vite-intlayer
53
+ pnpm add vite-intlayer --save-dev
51
54
  ```
52
55
 
53
56
  ```bash packageManager="yarn"
54
57
  yarn add intlayer react-intlayer
55
- yarn add --save-dev vite-intlayer
58
+ yarn add vite-intlayer --save-dev
56
59
  ```
57
60
 
58
61
  - **intlayer**
@@ -242,13 +245,13 @@ const appContent = {
242
245
  key: "app",
243
246
  content: {
244
247
  viteLogo: t({
245
- "en-GB": "Vite logo",
248
+ 'en-GB': "Vite logo",
246
249
  en: "Vite logo",
247
250
  fr: "Logo Vite",
248
251
  es: "Logo Vite",
249
252
  }),
250
253
  reactLogo: t({
251
- "en-GB": "React logo",
254
+ 'en-GB': "React logo",
252
255
  en: "React logo",
253
256
  fr: "Logo React",
254
257
  es: "Logo React",
@@ -257,19 +260,24 @@ const appContent = {
257
260
  title: "Vite + React",
258
261
 
259
262
  count: t({
260
- "en-GB": "count is ",
263
+ 'en-GB': "count is ",
261
264
  en: "count is ",
262
265
  fr: "le compte est ",
263
266
  es: "el recuento es ",
264
267
  }),
265
268
 
266
- edit:
267
- t <
268
- ReactNode >
269
- {
270
- // Remember to import React if you use a React node in your content
271
- "en-GB": (
272
- <>
269
+ edit: t<ReactNode>({
270
+ // Remember to import React if you use a React node in your content
271
+ 'en-GB': (
272
+ <>
273
+ Edit <code>src/App.tsx</code> and save to test HMR
274
+ </>
275
+ ),
276
+ en: (
277
+ <>
278
+ Edit <code>src/App.tsx</code> and save to test HMR
279
+ </>
280
+ ),
273
281
  Edit <code>src/App.tsx</code> and save to test HMR
274
282
  </>
275
283
  ),
@@ -286,7 +294,7 @@ const appContent = {
286
294
  },
287
295
 
288
296
  readTheDocs: t({
289
- "en-GB": "Click on the Vite and React logos to learn more",
297
+ 'en-GB': "Click on the Vite and React logos to learn more",
290
298
  en: "Click on the Vite and React logos to learn more",
291
299
  fr: "Cliquez sur les logos Vite et React pour en savoir plus",
292
300
  es: "Haga clic en los logotipos de Vite y React para obtener más información",
@@ -306,11 +314,13 @@ const appContent = {
306
314
  content: {
307
315
  viteLogo: t({
308
316
  "en-GB": "Vite logo",
317
+ en: "Vite logo",
309
318
  fr: "Logo Vite",
310
319
  es: "Logo Vite",
311
320
  }),
312
321
  reactLogo: t({
313
322
  "en-GB": "React logo",
323
+ en: "React logo",
314
324
  fr: "Logo React",
315
325
  es: "Logo React",
316
326
  }),
@@ -319,6 +329,7 @@ const appContent = {
319
329
 
320
330
  count: t({
321
331
  "en-GB": "count is ",
332
+ en: "count is ",
322
333
  fr: "le compte est ",
323
334
  es: "el recuento es ",
324
335
  }),
@@ -333,6 +344,11 @@ const appContent = {
333
344
  Edit <code>src/App.tsx</code> and save to test HMR
334
345
  </>
335
346
  ),
347
+ en: (
348
+ <>
349
+ Edit <code>src/App.tsx</code> and save to test HMR
350
+ </>
351
+ ),
336
352
  fr: (
337
353
  <>
338
354
  Éditez <code>src/App.tsx</code> et enregistrez pour tester HMR
@@ -347,6 +363,7 @@ const appContent = {
347
363
 
348
364
  readTheDocs: t({
349
365
  "en-GB": "Click on the Vite and React logos to learn more",
366
+ en: "Click on the Vite and React logos to learn more",
350
367
  fr: "Cliquez sur les logos Vite et React pour en savoir plus",
351
368
  es: "Haga clic en los logotipos de Vite y React para obtener más información",
352
369
  }),
@@ -365,6 +382,7 @@ module.exports = appContent;
365
382
  "nodeType": "translation",
366
383
  "translation": {
367
384
  "en-GB": "Vite logo",
385
+ "en": "Vite logo",
368
386
  "fr": "Logo Vite",
369
387
  "es": "Logo Vite"
370
388
  }
@@ -373,6 +391,7 @@ module.exports = appContent;
373
391
  "nodeType": "translation",
374
392
  "translation": {
375
393
  "en-GB": "React logo",
394
+ "en": "React logo",
376
395
  "fr": "Logo React",
377
396
  "es": "Logo React"
378
397
  }
@@ -381,6 +400,7 @@ module.exports = appContent;
381
400
  "nodeType": "translation",
382
401
  "translation": {
383
402
  "en-GB": "Vite + React",
403
+ "en": "Vite + React",
384
404
  "fr": "Vite + React",
385
405
  "es": "Vite + React"
386
406
  }
@@ -389,6 +409,7 @@ module.exports = appContent;
389
409
  "nodeType": "translation",
390
410
  "translation": {
391
411
  "en-GB": "count is ",
412
+ "en": "count is ",
392
413
  "fr": "le compte est ",
393
414
  "es": "el recuento es "
394
415
  }
@@ -397,6 +418,7 @@ module.exports = appContent;
397
418
  "nodeType": "translation",
398
419
  "translation": {
399
420
  "en-GB": "Edit src/App.tsx and save to test HMR",
421
+ "en": "Edit src/App.tsx and save to test HMR",
400
422
  "fr": "Éditez src/App.tsx et enregistrez pour tester HMR",
401
423
  "es": "Edita src/App.tsx y guarda para probar HMR"
402
424
  }
@@ -405,6 +427,7 @@ module.exports = appContent;
405
427
  "nodeType": "translation",
406
428
  "translation": {
407
429
  "en-GB": "Click on the Vite and React logos to learn more",
430
+ "en": "Click on the Vite and React logos to learn more",
408
431
  "fr": "Cliquez sur les logos Vite et React pour en savoir plus",
409
432
  "es": "Haga clic en los logotipos de Vite y React para obtener más información"
410
433
  }
@@ -413,7 +436,7 @@ module.exports = appContent;
413
436
  }
414
437
  ```
415
438
 
416
- > Your content declarations can be defined anywhere in your application as soon as they are included into the `contentDir` directory (by default, `./src`). And match the content declaration file extension (by default, `.content.{json,ts,tsx,js,jsx,mjs,mjx,cjs,cjx}`).
439
+ > Your content declarations can be defined anywhere in your application as soon as they are included in the `contentDir` directory (by default, `./src`). And match the content declaration file extension (by default, `.content.{json,ts,tsx,js,jsx,mjs,mjx,cjs,cjx}`).
417
440
 
418
441
  > For more details, refer to the [content declaration documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/dictionary/get_started.md).
419
442
 
@@ -635,9 +658,9 @@ Example:
635
658
  - https://example.com/fr/about
636
659
  ```
637
660
 
638
- > By default, the routes are not prefixed for the default locale. If you wish to prefix the default locale, you can set the `middleware.prefixDefault` option to `true` in your configuration. See the [configuration documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md) for more information.
661
+ > By default, the routes are not prefixed for the default locale. If you want to prefix the default locale, you can set the `middleware.prefixDefault` option to `true` in your configuration. See the [configuration documentation](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/configuration.md) for more information.
639
662
 
640
- To add localised routing to your application, you can create a `LocaleRouter` component that wraps your application's routes and manages locale-based routing. Here is an example using [React Router](https://reactrouter.com/home):
663
+ To add localised routing to your application, you can create a `LocaleRouter` component that wraps your application's routes and handles locale-based routing. Here is an example using [React Router](https://reactrouter.com/home):
641
664
 
642
665
  ```tsx fileName="src/components/LocaleRouter.tsx" codeFormat="typescript"
643
666
  // Importing necessary dependencies and functions
@@ -772,6 +795,7 @@ const { locales, defaultLocale } = internationalization;
772
795
 
773
796
  /**
774
797
  * A component that handles localisation and wraps children with the appropriate locale context.
798
+ /**
775
799
  * It manages URL-based locale detection and validation.
776
800
  */
777
801
  const AppLocalized = ({ children, locale }) => {
@@ -807,7 +831,7 @@ const AppLocalized = ({ children, locale }) => {
807
831
  } else {
808
832
  /**
809
833
  * When middleware.prefixDefault is false, the default locale is not prefixed.
810
- * Ensure that the current locale is valid and is not the default locale.
834
+ * Ensure that the current locale is valid and not the default locale.
811
835
  */
812
836
  if (
813
837
  currentLocale.toString() !== defaultLocale.toString() &&
@@ -876,25 +900,6 @@ const {
876
900
  useLocation,
877
901
  } = require("react-router-dom"); // Router components for managing navigation
878
902
 
879
- // Destructuring configuration from Intlayer
880
- const { internationalisation, middleware } = configuration;
881
- const { locales, defaultLocale } = internationalisation;
882
-
883
- /**
884
- * A component that handles localisation and wraps children with the appropriate locale context.
885
- * It manages URL-based locale detection and validation.
886
- */
887
- // Importing necessary dependencies and functions
888
- const { configuration, getPathWithoutLocale } = require("intlayer"); // Utility functions and types from 'intlayer'
889
- const { IntlayerProvider, useLocale } = require("react-intlayer"); // Provider for internationalisation context
890
- const {
891
- BrowserRouter,
892
- Routes,
893
- Route,
894
- Navigate,
895
- useLocation,
896
- } = require("react-router-dom"); // Router components for managing navigation
897
-
898
903
  // Destructuring configuration from Intlayer
899
904
  const { internationalization, middleware } = configuration;
900
905
  const { locales, defaultLocale } = internationalization;
@@ -936,7 +941,7 @@ const AppLocalized = ({ children, locale }) => {
936
941
  } else {
937
942
  /**
938
943
  * When middleware.prefixDefault is false, the default locale is not prefixed.
939
- * Ensure that the current locale is valid and is not the default locale.
944
+ * Ensure that the current locale is valid and not the default locale.
940
945
  */
941
946
  if (
942
947
  currentLocale.toString() !== defaultLocale.toString() &&
@@ -1271,9 +1276,9 @@ const LocaleSwitcher = () => {
1271
1276
  > - [`getLocalizedUrl` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/{{locale}}/packages/intlayer/getLocalizedUrl.md)
1272
1277
  > - [`getHTMLTextDir` hook](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/packages/intlayer/getHTMLTextDir.md)
1273
1278
  > - [`hrefLang` attribute](https://developers.google.com/search/docs/specialty/international/localized-versions?hl=fr)
1274
- > - [`lang` attribute`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang)
1275
- > - [`dir` attribute`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dir)
1276
- > - [`aria-current` attribute`](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)
1279
+ > - [`lang` attribute`](https://developer.mozilla.org/en-GB/docs/Web/HTML/Global_attributes/lang)
1280
+ > - [`dir` attribute`](https://developer.mozilla.org/en-GB/docs/Web/HTML/Global_attributes/dir)
1281
+ > - [`aria-current` attribute`](https://developer.mozilla.org/en-GB/docs/Web/Accessibility/ARIA/Attributes/aria-current)
1277
1282
 
1278
1283
  Below is the updated **Step 9** with added explanations and refined code examples:
1279
1284
 
@@ -1285,7 +1290,7 @@ When your application supports multiple languages, it is crucial to update the `
1285
1290
 
1286
1291
  - **Accessibility**: Screen readers and assistive technologies depend on the correct `lang` attribute to pronounce and interpret content accurately.
1287
1292
  - **Text Rendering**: The `dir` (direction) attribute guarantees that text is rendered in the correct order (e.g., left-to-right for English, right-to-left for Arabic or Hebrew), which is essential for readability.
1288
- - **SEO**: Search engines use the `lang` attribute to identify the language of your page, aiding in delivering the appropriate localised content in search results.
1293
+ - **SEO**: Search engines use the `lang` attribute to identify the language of your page, helping to deliver the appropriate localised content in search results.
1289
1294
 
1290
1295
  By updating these attributes dynamically when the locale changes, you guarantee a consistent and accessible experience for users across all supported languages.
1291
1296
 
@@ -1396,33 +1401,6 @@ const App: FC = () => (
1396
1401
  export default App;
1397
1402
  ```
1398
1403
 
1399
- ````jsx fileName="src/App.msx" codeFormat="esm"
1400
- #### Using the Hook in Your Application
1401
-
1402
- Integrate the hook into your main component so that the HTML attributes update whenever the locale changes:
1403
-
1404
- ```tsx fileName="src/App.tsx" codeFormat="typescript"
1405
- import type { FC } from "react";
1406
- import { IntlayerProvider, useIntlayer } from "react-intlayer";
1407
- import { useI18nHTMLAttributes } from "./hooks/useI18nHTMLAttributes";
1408
- import "./App.css";
1409
-
1410
- const AppContent: FC = () => {
1411
- // Apply the hook to update the <html> tag's lang and dir attributes based on the locale.
1412
- useI18nHTMLAttributes();
1413
-
1414
- // ... Rest of your component
1415
- };
1416
-
1417
- const App: FC = () => (
1418
- <IntlayerProvider>
1419
- <AppContent />
1420
- </IntlayerProvider>
1421
- );
1422
-
1423
- export default App;
1424
- ````
1425
-
1426
1404
  ```jsx fileName="src/App.msx" codeFormat="esm"
1427
1405
  import { IntlayerProvider, useIntlayer } from "react-intlayer";
1428
1406
  import { useI18nHTMLAttributes } from "./hooks/useI18nHTMLAttributes";
@@ -1474,21 +1452,27 @@ By applying these changes, your application will:
1474
1452
 
1475
1453
  ### (Optional) Step 10: Creating a Localised Link Component
1476
1454
 
1477
- // Apply the hook to update the <html> tag's lang and dir attributes based on the locale.
1478
- useI18nHTMLAttributes();
1455
+ ```tsx fileName="src/App.tsx" codeFormat="typescript"
1456
+ import type { FC } from "react";
1457
+ import { IntlayerProvider, useIntlayer } from "react-intlayer";
1458
+ import { useI18nHTMLAttributes } from "./hooks/useI18nHTMLAttributes";
1459
+ import "./App.css";
1479
1460
 
1480
- // ... Rest of your component
1461
+ const AppContent: FC = () => {
1462
+ // Apply the hook to update the <html> tag's lang and dir attributes based on the locale.
1463
+ useI18nHTMLAttributes();
1464
+
1465
+ // ... Rest of your component
1481
1466
  };
1482
1467
 
1483
1468
  const App = () => (
1484
- <IntlayerProvider>
1485
- <AppContent />
1486
- </IntlayerProvider>
1469
+ <IntlayerProvider>
1470
+ <AppContent />
1471
+ </IntlayerProvider>
1487
1472
  );
1488
1473
 
1489
1474
  module.exports = App;
1490
-
1491
- ````
1475
+ ```
1492
1476
 
1493
1477
  By applying these changes, your application will:
1494
1478
 
@@ -1553,7 +1537,7 @@ export const Link = forwardRef<HTMLAnchorElement, LinkProps>(
1553
1537
  );
1554
1538
 
1555
1539
  Link.displayName = "Link";
1556
- ````
1540
+ ```
1557
1541
 
1558
1542
  ```jsx fileName="src/components/Link.mjx" codeFormat="esm"
1559
1543
  import { getLocalizedUrl } from "intlayer";
@@ -1604,7 +1588,7 @@ const checkIsExternalLink = (href) => /^https?:\/\//.test(href ?? "");
1604
1588
  /**
1605
1589
  * A custom Link component that adapts the href attribute based on the current locale.
1606
1590
  * For internal links, it uses `getLocalizedUrl` to prefix the URL with the locale (e.g., /fr/about).
1607
- * This ensures that navigation remains within the same locale context.
1591
+ * This ensures that navigation stays within the same locale context.
1608
1592
  */
1609
1593
  const Link = forwardRef(({ href, children, ...props }, ref) => {
1610
1594
  const { locale } = useLocale();
@@ -1642,7 +1626,7 @@ Link.displayName = "Link";
1642
1626
  - **Returning the Link**:
1643
1627
  The component returns an `<a>` element with the localised URL, ensuring that navigation is consistent with the locale.
1644
1628
 
1645
- By integrating this `Link` component across your application, you maintain a coherent and language-aware user experience whilst also benefitting from improved SEO and usability.
1629
+ By integrating this `Link` component across your application, you maintain a coherent and language-aware user experience while also benefiting from improved SEO and usability.
1646
1630
 
1647
1631
  ### Configure TypeScript
1648
1632
 
@@ -14,6 +14,7 @@ slugs:
14
14
  - doc
15
15
  - environment
16
16
  - vite-and-solid
17
+ # applicationTemplate: https://github.com/aymericzip/intlayer-vite-solid-template
17
18
  ---
18
19
 
19
20
  # Getting Started Internationalising (i18n) with Intlayer and Vite and Solid
@@ -43,17 +44,17 @@ Install the necessary packages using npm:
43
44
 
44
45
  ```bash packageManager="npm"
45
46
  npm install intlayer solid-intlayer
46
- npm install --save-dev vite-intlayer
47
+ npm install vite-intlayer --save-dev
47
48
  ```
48
49
 
49
50
  ```bash packageManager="pnpm"
50
51
  pnpm add intlayer solid-intlayer
51
- pnpm add --save-dev vite-intlayer
52
+ pnpm add vite-intlayer --save-dev
52
53
  ```
53
54
 
54
55
  ```bash packageManager="yarn"
55
56
  yarn add intlayer solid-intlayer
56
- yarn add --save-dev vite-intlayer
57
+ yarn add vite-intlayer --save-dev
57
58
  ```
58
59
 
59
60
  - **intlayer**
@@ -14,6 +14,7 @@ slugs:
14
14
  - doc
15
15
  - environment
16
16
  - vite-and-svelte
17
+ # applicationTemplate: https://github.com/aymericzip/intlayer-vite-svelte-template
17
18
  ---
18
19
 
19
20
  # Getting Started Internationalising (i18n) with Intlayer and Vite and Svelte
@@ -43,17 +44,17 @@ Install the necessary packages using npm:
43
44
 
44
45
  ```bash packageManager="npm"
45
46
  npm install intlayer svelte-intlayer
46
- npm install --save-dev vite-intlayer
47
+ npm install vite-intlayer --save-dev
47
48
  ```
48
49
 
49
50
  ```bash packageManager="pnpm"
50
51
  pnpm add intlayer svelte-intlayer
51
- pnpm add --save-dev vite-intlayer
52
+ pnpm add vite-intlayer --save-dev
52
53
  ```
53
54
 
54
55
  ```bash packageManager="yarn"
55
56
  yarn add intlayer svelte-intlayer
56
- yarn add --save-dev vite-intlayer
57
+ yarn add vite-intlayer --save-dev
57
58
  ```
58
59
 
59
60
  - **intlayer**
@@ -14,6 +14,7 @@ slugs:
14
14
  - doc
15
15
  - environment
16
16
  - vite-and-vue
17
+ applicationTemplate: https://github.com/aymericzip/intlayer-vite-vue-template
17
18
  ---
18
19
 
19
20
  # Getting Started Internationalising (i18n) with Intlayer and Vite and Vue
@@ -41,17 +42,17 @@ Install the necessary packages using npm:
41
42
 
42
43
  ```bash packageManager="npm"
43
44
  npm install intlayer vue-intlayer
44
- npm install --save-dev vite-intlayer
45
+ npm install vite-intlayer --save-dev
45
46
  ```
46
47
 
47
48
  ```bash packageManager="pnpm"
48
49
  pnpm add intlayer vue-intlayer
49
- pnpm add --save-dev vite-intlayer
50
+ pnpm add vite-intlayer --save-dev
50
51
  ```
51
52
 
52
53
  ```bash packageManager="yarn"
53
54
  yarn add intlayer vue-intlayer
54
- yarn add --save-dev vite-intlayer
55
+ yarn add vite-intlayer --save-dev
55
56
  ```
56
57
 
57
58
  - **intlayer**
@@ -1020,7 +1021,7 @@ By default, Intlayer renders Markdown as a string. However, Intlayer also provid
1020
1021
 
1021
1022
  > To see how to declare Markdown content using the `intlayer` package, see the [markdown doc](https://github.com/aymericzip/intlayer/tree/main/docs/docs/en-GB/dictionary/markdown.md).
1022
1023
 
1023
- ```ts filename="main.ts"
1024
+ ```ts fileName="main.ts"
1024
1025
  import MarkdownIt from "markdown-it";
1025
1026
  import { createApp, h } from "vue";
1026
1027
  import { installIntlayer, installIntlayerMarkdown } from "vue-intlayer";