@intlayer/docs 8.3.0-canary.4 → 8.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/docs/ar/compiler.md +84 -49
  2. package/docs/ar/configuration.md +80 -37
  3. package/docs/ar/intlayer_with_nextjs_16.md +174 -1
  4. package/docs/ar/intlayer_with_nextjs_compiler.md +174 -1
  5. package/docs/ar/intlayer_with_react_router_v7.md +224 -1
  6. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +225 -1
  7. package/docs/ar/intlayer_with_svelte_kit.md +175 -2
  8. package/docs/ar/intlayer_with_tanstack.md +176 -1
  9. package/docs/ar/intlayer_with_vite+preact.md +174 -1
  10. package/docs/ar/intlayer_with_vite+react.md +174 -1
  11. package/docs/ar/intlayer_with_vite+solid.md +174 -1
  12. package/docs/ar/intlayer_with_vite+svelte.md +174 -1
  13. package/docs/ar/intlayer_with_vite+vue.md +174 -1
  14. package/docs/de/compiler.md +83 -48
  15. package/docs/de/configuration.md +434 -212
  16. package/docs/de/intlayer_with_nextjs_16.md +176 -1
  17. package/docs/de/intlayer_with_nextjs_compiler.md +106 -349
  18. package/docs/de/intlayer_with_react_router_v7.md +225 -2
  19. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +221 -79
  20. package/docs/de/intlayer_with_svelte_kit.md +158 -2
  21. package/docs/de/intlayer_with_tanstack.md +159 -1
  22. package/docs/de/intlayer_with_vite+preact.md +157 -1
  23. package/docs/de/intlayer_with_vite+react.md +157 -1
  24. package/docs/de/intlayer_with_vite+solid.md +159 -3
  25. package/docs/de/intlayer_with_vite+svelte.md +157 -1
  26. package/docs/de/intlayer_with_vite+vue.md +157 -1
  27. package/docs/en/compiler.md +60 -33
  28. package/docs/en/configuration.md +80 -57
  29. package/docs/en/intlayer_with_nextjs_16.md +176 -0
  30. package/docs/en/intlayer_with_nextjs_compiler.md +179 -1
  31. package/docs/en/intlayer_with_react_router_v7.md +159 -0
  32. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +159 -0
  33. package/docs/en/intlayer_with_svelte_kit.md +159 -0
  34. package/docs/en/intlayer_with_tanstack.md +160 -1
  35. package/docs/en/intlayer_with_vite+preact.md +159 -0
  36. package/docs/en/intlayer_with_vite+react.md +159 -0
  37. package/docs/en/intlayer_with_vite+solid.md +148 -27
  38. package/docs/en/intlayer_with_vite+svelte.md +159 -0
  39. package/docs/en/intlayer_with_vite+vue.md +142 -41
  40. package/docs/en-GB/compiler.md +66 -34
  41. package/docs/en-GB/configuration.md +78 -36
  42. package/docs/es/compiler.md +83 -48
  43. package/docs/es/configuration.md +429 -206
  44. package/docs/es/intlayer_with_adonisjs.md +1 -1
  45. package/docs/es/intlayer_with_express.md +1 -1
  46. package/docs/es/intlayer_with_fastify.md +1 -1
  47. package/docs/es/intlayer_with_hono.md +1 -1
  48. package/docs/es/intlayer_with_nestjs.md +1 -1
  49. package/docs/es/intlayer_with_nextjs_16.md +176 -3
  50. package/docs/es/intlayer_with_nextjs_compiler.md +175 -2
  51. package/docs/es/intlayer_with_nuxt.md +1 -1
  52. package/docs/es/intlayer_with_react_router_v7.md +227 -4
  53. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +162 -4
  54. package/docs/es/intlayer_with_svelte_kit.md +158 -2
  55. package/docs/es/intlayer_with_tanstack.md +160 -2
  56. package/docs/es/intlayer_with_vite+preact.md +162 -6
  57. package/docs/es/intlayer_with_vite+react.md +160 -4
  58. package/docs/es/intlayer_with_vite+solid.md +163 -7
  59. package/docs/es/intlayer_with_vite+svelte.md +157 -1
  60. package/docs/es/intlayer_with_vite+vue.md +165 -9
  61. package/docs/fr/compiler.md +81 -46
  62. package/docs/fr/configuration.md +355 -134
  63. package/docs/fr/intlayer_with_adonisjs.md +1 -1
  64. package/docs/fr/intlayer_with_express.md +1 -1
  65. package/docs/fr/intlayer_with_fastify.md +1 -1
  66. package/docs/fr/intlayer_with_hono.md +1 -1
  67. package/docs/fr/intlayer_with_nestjs.md +1 -1
  68. package/docs/fr/intlayer_with_nextjs_16.md +183 -7
  69. package/docs/fr/intlayer_with_nextjs_compiler.md +179 -3
  70. package/docs/fr/intlayer_with_react_router_v7.md +229 -3
  71. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +237 -6
  72. package/docs/fr/intlayer_with_svelte_kit.md +158 -2
  73. package/docs/fr/intlayer_with_tanstack.md +159 -1
  74. package/docs/fr/intlayer_with_vite+preact.md +164 -8
  75. package/docs/fr/intlayer_with_vite+react.md +162 -6
  76. package/docs/fr/intlayer_with_vite+solid.md +163 -7
  77. package/docs/fr/intlayer_with_vite+svelte.md +157 -1
  78. package/docs/fr/intlayer_with_vite+vue.md +164 -8
  79. package/docs/hi/compiler.md +81 -46
  80. package/docs/hi/configuration.md +87 -44
  81. package/docs/hi/intlayer_with_nextjs_16.md +174 -1
  82. package/docs/hi/intlayer_with_nextjs_compiler.md +174 -1
  83. package/docs/hi/intlayer_with_react_router_v7.md +224 -1
  84. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +225 -1
  85. package/docs/hi/intlayer_with_svelte_kit.md +158 -2
  86. package/docs/hi/intlayer_with_tanstack.md +159 -1
  87. package/docs/hi/intlayer_with_vite+preact.md +157 -1
  88. package/docs/hi/intlayer_with_vite+react.md +157 -1
  89. package/docs/hi/intlayer_with_vite+solid.md +157 -1
  90. package/docs/hi/intlayer_with_vite+svelte.md +157 -1
  91. package/docs/hi/intlayer_with_vite+vue.md +157 -1
  92. package/docs/id/compiler.md +84 -51
  93. package/docs/id/configuration.md +83 -45
  94. package/docs/id/intlayer_with_nextjs_16.md +174 -1
  95. package/docs/id/intlayer_with_nextjs_compiler.md +174 -1
  96. package/docs/id/intlayer_with_react_router_v7.md +224 -1
  97. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +225 -1
  98. package/docs/id/intlayer_with_svelte_kit.md +158 -2
  99. package/docs/id/intlayer_with_tanstack.md +159 -1
  100. package/docs/id/intlayer_with_vite+preact.md +157 -1
  101. package/docs/id/intlayer_with_vite+react.md +157 -1
  102. package/docs/id/intlayer_with_vite+solid.md +157 -1
  103. package/docs/id/intlayer_with_vite+svelte.md +157 -1
  104. package/docs/id/intlayer_with_vite+vue.md +157 -1
  105. package/docs/it/compiler.md +81 -46
  106. package/docs/it/configuration.md +426 -204
  107. package/docs/it/intlayer_with_nextjs_16.md +174 -1
  108. package/docs/it/intlayer_with_nextjs_compiler.md +174 -1
  109. package/docs/it/intlayer_with_react_router_v7.md +225 -2
  110. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +226 -2
  111. package/docs/it/intlayer_with_svelte_kit.md +158 -2
  112. package/docs/it/intlayer_with_tanstack.md +159 -1
  113. package/docs/it/intlayer_with_vite+preact.md +157 -1
  114. package/docs/it/intlayer_with_vite+react.md +157 -1
  115. package/docs/it/intlayer_with_vite+solid.md +159 -3
  116. package/docs/it/intlayer_with_vite+svelte.md +157 -1
  117. package/docs/it/intlayer_with_vite+vue.md +157 -1
  118. package/docs/ja/compiler.md +94 -58
  119. package/docs/ja/configuration.md +88 -45
  120. package/docs/ja/intlayer_with_nextjs_16.md +174 -1
  121. package/docs/ja/intlayer_with_nextjs_compiler.md +174 -1
  122. package/docs/ja/intlayer_with_react_router_v7.md +184 -394
  123. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +226 -2
  124. package/docs/ja/intlayer_with_svelte_kit.md +119 -595
  125. package/docs/ja/intlayer_with_tanstack.md +131 -642
  126. package/docs/ja/intlayer_with_vite+preact.md +111 -1231
  127. package/docs/ja/intlayer_with_vite+react.md +129 -1304
  128. package/docs/ja/intlayer_with_vite+solid.md +159 -3
  129. package/docs/ja/intlayer_with_vite+svelte.md +157 -1
  130. package/docs/ja/intlayer_with_vite+vue.md +157 -1
  131. package/docs/ko/compiler.md +88 -52
  132. package/docs/ko/configuration.md +87 -44
  133. package/docs/ko/intlayer_with_nextjs_16.md +174 -1
  134. package/docs/ko/intlayer_with_nextjs_compiler.md +174 -1
  135. package/docs/ko/intlayer_with_react_router_v7.md +225 -2
  136. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +226 -2
  137. package/docs/ko/intlayer_with_svelte_kit.md +158 -2
  138. package/docs/ko/intlayer_with_tanstack.md +159 -1
  139. package/docs/ko/intlayer_with_vite+preact.md +157 -1
  140. package/docs/ko/intlayer_with_vite+react.md +157 -1
  141. package/docs/ko/intlayer_with_vite+solid.md +159 -3
  142. package/docs/ko/intlayer_with_vite+svelte.md +157 -1
  143. package/docs/ko/intlayer_with_vite+vue.md +157 -1
  144. package/docs/pl/compiler.md +84 -51
  145. package/docs/pl/configuration.md +83 -37
  146. package/docs/pl/intlayer_with_nextjs_16.md +174 -1
  147. package/docs/pl/intlayer_with_nextjs_compiler.md +174 -1
  148. package/docs/pl/intlayer_with_react_router_v7.md +224 -1
  149. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +225 -1
  150. package/docs/pl/intlayer_with_svelte_kit.md +158 -2
  151. package/docs/pl/intlayer_with_tanstack.md +159 -1
  152. package/docs/pl/intlayer_with_vite+preact.md +157 -1
  153. package/docs/pl/intlayer_with_vite+react.md +157 -1
  154. package/docs/pl/intlayer_with_vite+solid.md +157 -1
  155. package/docs/pl/intlayer_with_vite+svelte.md +157 -1
  156. package/docs/pl/intlayer_with_vite+vue.md +157 -1
  157. package/docs/pt/compiler.md +81 -46
  158. package/docs/pt/configuration.md +404 -194
  159. package/docs/pt/intlayer_with_nextjs_16.md +174 -1
  160. package/docs/pt/intlayer_with_nextjs_compiler.md +174 -1
  161. package/docs/pt/intlayer_with_react_router_v7.md +224 -1
  162. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +225 -1
  163. package/docs/pt/intlayer_with_svelte_kit.md +158 -2
  164. package/docs/pt/intlayer_with_tanstack.md +159 -1
  165. package/docs/pt/intlayer_with_vite+preact.md +157 -1
  166. package/docs/pt/intlayer_with_vite+react.md +157 -1
  167. package/docs/pt/intlayer_with_vite+solid.md +157 -1
  168. package/docs/pt/intlayer_with_vite+svelte.md +157 -1
  169. package/docs/pt/intlayer_with_vite+vue.md +157 -1
  170. package/docs/ru/compiler.md +90 -57
  171. package/docs/ru/configuration.md +76 -46
  172. package/docs/ru/intlayer_with_nextjs_16.md +174 -1
  173. package/docs/ru/intlayer_with_nextjs_compiler.md +174 -1
  174. package/docs/ru/intlayer_with_react_router_v7.md +224 -1
  175. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +225 -1
  176. package/docs/ru/intlayer_with_svelte_kit.md +158 -2
  177. package/docs/ru/intlayer_with_tanstack.md +159 -1
  178. package/docs/ru/intlayer_with_vite+preact.md +157 -1
  179. package/docs/ru/intlayer_with_vite+react.md +157 -1
  180. package/docs/ru/intlayer_with_vite+solid.md +157 -1
  181. package/docs/ru/intlayer_with_vite+svelte.md +157 -1
  182. package/docs/ru/intlayer_with_vite+vue.md +157 -1
  183. package/docs/tr/compiler.md +85 -52
  184. package/docs/tr/configuration.md +83 -40
  185. package/docs/tr/intlayer_with_nextjs_16.md +174 -1
  186. package/docs/tr/intlayer_with_nextjs_compiler.md +174 -1
  187. package/docs/tr/intlayer_with_react_router_v7.md +224 -1
  188. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +225 -1
  189. package/docs/tr/intlayer_with_svelte_kit.md +158 -2
  190. package/docs/tr/intlayer_with_tanstack.md +159 -1
  191. package/docs/tr/intlayer_with_vite+preact.md +157 -1
  192. package/docs/tr/intlayer_with_vite+react.md +157 -1
  193. package/docs/tr/intlayer_with_vite+solid.md +157 -1
  194. package/docs/tr/intlayer_with_vite+svelte.md +157 -1
  195. package/docs/tr/intlayer_with_vite+vue.md +157 -1
  196. package/docs/uk/compiler.md +96 -61
  197. package/docs/uk/configuration.md +83 -37
  198. package/docs/uk/intlayer_with_nextjs_16.md +174 -1
  199. package/docs/uk/intlayer_with_nextjs_compiler.md +174 -1
  200. package/docs/uk/intlayer_with_react_router_v7.md +224 -1
  201. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +225 -1
  202. package/docs/uk/intlayer_with_svelte_kit.md +157 -1
  203. package/docs/uk/intlayer_with_tanstack.md +159 -1
  204. package/docs/uk/intlayer_with_vite+preact.md +157 -1
  205. package/docs/uk/intlayer_with_vite+react.md +157 -1
  206. package/docs/uk/intlayer_with_vite+solid.md +157 -1
  207. package/docs/uk/intlayer_with_vite+svelte.md +157 -1
  208. package/docs/uk/intlayer_with_vite+vue.md +157 -1
  209. package/docs/vi/compiler.md +85 -50
  210. package/docs/vi/configuration.md +85 -39
  211. package/docs/vi/intlayer_with_nextjs_16.md +174 -1
  212. package/docs/vi/intlayer_with_nextjs_compiler.md +174 -1
  213. package/docs/vi/intlayer_with_react_router_v7.md +224 -1
  214. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +225 -1
  215. package/docs/vi/intlayer_with_svelte_kit.md +158 -2
  216. package/docs/vi/intlayer_with_tanstack.md +159 -1
  217. package/docs/vi/intlayer_with_vite+preact.md +157 -1
  218. package/docs/vi/intlayer_with_vite+react.md +157 -1
  219. package/docs/vi/intlayer_with_vite+solid.md +157 -1
  220. package/docs/vi/intlayer_with_vite+svelte.md +157 -1
  221. package/docs/vi/intlayer_with_vite+vue.md +157 -1
  222. package/docs/zh/compiler.md +84 -49
  223. package/docs/zh/configuration.md +80 -37
  224. package/docs/zh/intlayer_with_adonisjs.md +1 -1
  225. package/docs/zh/intlayer_with_express.md +1 -1
  226. package/docs/zh/intlayer_with_fastify.md +1 -1
  227. package/docs/zh/intlayer_with_hono.md +1 -1
  228. package/docs/zh/intlayer_with_nestjs.md +1 -1
  229. package/docs/zh/intlayer_with_nextjs_16.md +174 -1
  230. package/docs/zh/intlayer_with_nextjs_compiler.md +174 -1
  231. package/docs/zh/intlayer_with_react_router_v7.md +227 -4
  232. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +228 -4
  233. package/docs/zh/intlayer_with_svelte_kit.md +158 -2
  234. package/docs/zh/intlayer_with_tanstack.md +159 -1
  235. package/docs/zh/intlayer_with_vite+preact.md +159 -3
  236. package/docs/zh/intlayer_with_vite+react.md +157 -1
  237. package/docs/zh/intlayer_with_vite+solid.md +161 -5
  238. package/docs/zh/intlayer_with_vite+svelte.md +157 -1
  239. package/docs/zh/intlayer_with_vite+vue.md +158 -2
  240. package/package.json +6 -6
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2024-03-07
3
- updatedAt: 2025-12-30
3
+ updatedAt: 2026-03-12
4
4
  title: Vite + React i18n - Comment traduire une application React en 2026
5
5
  description: Apprenez à ajouter l'internationalisation (i18n) à votre application Vite et React en utilisant Intlayer. Suivez ce guide pour rendre votre application multilingue.
6
6
  keywords:
@@ -48,9 +48,9 @@ Avec Intlayer, vous pouvez :
48
48
  ## Guide étape par étape pour configurer Intlayer dans une application Vite et React
49
49
 
50
50
  <Tabs defaultTab="video">
51
- <Tab label="Video" value="video">
51
+ <Tab label="Vidéo" value="video">
52
52
 
53
- <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"/>
53
+ <iframe title="La meilleure solution i18n pour Vite et React ? Découvrez 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"/>
54
54
 
55
55
  </Tab>
56
56
  <Tab label="Code" value="code">
@@ -58,7 +58,7 @@ Avec Intlayer, vous pouvez :
58
58
  <iframe
59
59
  src="https://stackblitz.com/github/aymericzip/intlayer-vite-react-template?embed=1&ctl=1&file=intlayer.config.ts"
60
60
  className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
61
- title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
61
+ title="Démo CodeSandbox - Comment internationaliser votre application avec Intlayer"
62
62
  sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
63
63
  loading="lazy"
64
64
  />
@@ -97,7 +97,7 @@ bunx intlayer init
97
97
  ```
98
98
 
99
99
  - **intlayer**
100
- Le paquet principal qui fournit des outils d'internationalisation pour la gestion de la configuration, la traduction, la [déclaration de contenu](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/dictionary/content_file.md), la transpilation, et les [commandes CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/cli/index.md).
100
+ Le paquet principal qui fournit des outils d'internationalisation pour la gestion de la configuration, la traduction, la [déclaration de contenu](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/dictionary/content_file.md), la transpilation, et les [commandes CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/index.md).
101
101
 
102
102
  - **react-intlayer**
103
103
  Le paquet qui intègre Intlayer avec une application React. Il fournit des fournisseurs de contexte et des hooks pour l'internationalisation dans React.
@@ -1357,6 +1357,162 @@ Link.displayName = "Link";
1357
1357
 
1358
1358
  En intégrant ce composant `Link` dans toute votre application, vous maintenez une expérience utilisateur cohérente et adaptée à la langue tout en bénéficiant d’une meilleure SEO et d’une meilleure utilisabilité.
1359
1359
 
1360
+ ### (Optionnel) Étape 11 : Extraire le contenu de vos composants
1361
+
1362
+ Si vous avez une base de code existante, transformer des milliers de fichiers peut prendre beaucoup de temps.
1363
+
1364
+ Pour faciliter ce processus, Intlayer propose un [compilateur](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/compiler.md) / [extracteur](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/extract.md) pour transformer vos composants et extraire le contenu.
1365
+
1366
+ Pour le configurer, vous pouvez ajouter une section `compiler` dans votre fichier `intlayer.config.ts` :
1367
+
1368
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
1369
+ import { type IntlayerConfig } from "intlayer";
1370
+
1371
+ const config: IntlayerConfig = {
1372
+ // ... Reste de votre configuration
1373
+ compiler: {
1374
+ /**
1375
+ * Indique si le compilateur doit être activé.
1376
+ */
1377
+ enabled: true,
1378
+
1379
+ /**
1380
+ * Définit le chemin des fichiers de sortie
1381
+ */
1382
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1383
+
1384
+ /**
1385
+ * Indique si les composants doivent être sauvegardés après avoir été transformés. De cette façon, le compilateur peut être exécuté une seule fois pour transformer l'application, puis il peut être supprimé.
1386
+ */
1387
+ saveComponents: false,
1388
+
1389
+ /**
1390
+ * Préfixe de clé de dictionnaire
1391
+ */
1392
+ dictionaryKeyPrefix: "",
1393
+ },
1394
+ };
1395
+
1396
+ export default config;
1397
+ ```
1398
+
1399
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
1400
+ /** @type {import('intlayer').IntlayerConfig} */
1401
+ const config = {
1402
+ // ... Reste de votre configuration
1403
+ compiler: {
1404
+ /**
1405
+ * Indique si le compilateur doit être activé.
1406
+ */
1407
+ enabled: true,
1408
+
1409
+ /**
1410
+ * Définit le chemin des fichiers de sortie
1411
+ */
1412
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1413
+
1414
+ /**
1415
+ * Indique si les composants doivent être sauvegardés après avoir été transformés. De cette façon, le compilateur peut être exécuté une seule fois pour transformer l'application, puis il peut être supprimé.
1416
+ */
1417
+ saveComponents: false,
1418
+
1419
+ /**
1420
+ * Préfixe de clé de dictionnaire
1421
+ */
1422
+ dictionaryKeyPrefix: "",
1423
+ },
1424
+ };
1425
+
1426
+ export default config;
1427
+ ```
1428
+
1429
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
1430
+ /** @type {import('intlayer').IntlayerConfig} */
1431
+ const config = {
1432
+ // ... Reste de votre configuration
1433
+ compiler: {
1434
+ /**
1435
+ * Indique si le compilateur doit être activé.
1436
+ */
1437
+ enabled: true,
1438
+
1439
+ /**
1440
+ * Définit le chemin des fichiers de sortie
1441
+ */
1442
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1443
+
1444
+ /**
1445
+ * Indique si les composants doivent être sauvegardés après avoir été transformés. De cette façon, le compilateur peut être exécuté une seule fois pour transformer l'application, puis il peut être supprimé.
1446
+ */
1447
+ saveComponents: false,
1448
+
1449
+ /**
1450
+ * Préfixe de clé de dictionnaire
1451
+ */
1452
+ dictionaryKeyPrefix: "",
1453
+ },
1454
+ };
1455
+
1456
+ module.exports = config;
1457
+ ```
1458
+
1459
+ <Tabs>
1460
+ <Tab value='Commande d'extraction'>
1461
+
1462
+ Exécutez l'extracteur pour transformer vos composants et extraire le contenu
1463
+
1464
+ ```bash packageManager="npm"
1465
+ npx intlayer extract
1466
+ ```
1467
+
1468
+ ```bash packageManager="pnpm"
1469
+ pnpm intlayer extract
1470
+ ```
1471
+
1472
+ ```bash packageManager="yarn"
1473
+ yarn intlayer extract
1474
+ ```
1475
+
1476
+ ```bash packageManager="bun"
1477
+ bunx intlayer extract
1478
+ ```
1479
+
1480
+ </Tab>
1481
+ <Tab value='Compilateur Babel'>
1482
+
1483
+ Mettez à jour votre fichier `vite.config.ts` pour inclure le plugin `intlayerCompiler` :
1484
+
1485
+ ```ts fileName="vite.config.ts"
1486
+ import { defineConfig } from "vite";
1487
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
1488
+
1489
+ export default defineConfig({
1490
+ plugins: [
1491
+ intlayer(),
1492
+ intlayerCompiler(), // Ajoute le plugin du compilateur
1493
+ ],
1494
+ });
1495
+ ```
1496
+
1497
+ ```bash packageManager="npm"
1498
+ npm run build # Ou npm run dev
1499
+ ```
1500
+
1501
+ ```bash packageManager="pnpm"
1502
+ pnpm run build # Ou pnpm run dev
1503
+ ```
1504
+
1505
+ ```bash packageManager="yarn"
1506
+ yarn build # Ou yarn dev
1507
+ ```
1508
+
1509
+ ```bash packageManager="bun"
1510
+ bun run build # Ou bun run dev
1511
+ ```
1512
+
1513
+ </Tab>
1514
+ </Tabs>
1515
+
1360
1516
  ### Configurer TypeScript
1361
1517
 
1362
1518
  Intlayer utilise l’augmentation de module pour tirer parti de TypeScript et renforcer votre base de code.
@@ -1384,7 +1540,7 @@ Il est recommandé d'ignorer les fichiers générés par Intlayer. Cela vous per
1384
1540
  Pour ce faire, vous pouvez ajouter les instructions suivantes dans votre fichier `.gitignore` :
1385
1541
 
1386
1542
  ```plaintext
1387
- # Ignore the files generated by Intlayer
1543
+ # Ignorer les fichiers générés par Intlayer
1388
1544
  .intlayer
1389
1545
  ```
1390
1546
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-04-18
3
- updatedAt: 2025-12-30
3
+ updatedAt: 2026-03-12
4
4
  title: Vite + Solid i18n - Comment traduire une application Solid en 2026
5
5
  description: Découvrez comment rendre votre site Vite et Solid multilingue. Suivez la documentation pour internationaliser (i18n) et traduire votre site.
6
6
  keywords:
@@ -24,12 +24,12 @@ history:
24
24
  changes: Historique initial
25
25
  ---
26
26
 
27
- # Traduire votre Vite and Solid avec Intlayer | Internationalisation (i18n)
27
+ # Traduire votre Vite et Solid avec Intlayer | Internationalisation (i18n)
28
28
 
29
29
  <Tabs defaultTab="video">
30
- <Tab label="Video" value="video">
30
+ <Tab label="Vidéo" value="video">
31
31
 
32
- <iframe title="The best i18n solution for Vite and Solid? 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"/>
32
+ <iframe title="The best i18n solution for Vite et Solid? 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"/>
33
33
 
34
34
  </Tab>
35
35
  <Tab label="Code" value="code">
@@ -37,7 +37,7 @@ history:
37
37
  <iframe
38
38
  src="https://stackblitz.com/github/aymericzip/intlayer-vite-solid-template?embed=1&ctl=1&file=intlayer.config.ts"
39
39
  className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
40
- title="Demo CodeSandbox - How to Internationalize your application using Intlayer"
40
+ title="Démo CodeSandbox - Comment internationaliser votre application avec Intlayer"
41
41
  sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
42
42
  loading="lazy"
43
43
  />
@@ -45,7 +45,7 @@ history:
45
45
  </Tab>
46
46
  </Tabs>
47
47
 
48
- ## Table of Contents
48
+ ## Table des matières
49
49
 
50
50
  <TOC/>
51
51
 
@@ -68,7 +68,7 @@ Avec Intlayer, vous pouvez :
68
68
 
69
69
  ## Guide étape par étape pour configurer Intlayer dans une application Vite et Solid
70
70
 
71
- ## Table of Contents
71
+ ## Table des matières
72
72
 
73
73
  <TOC/>
74
74
 
@@ -537,6 +537,162 @@ const MyComponent = () => {
537
537
  };
538
538
  ```
539
539
 
540
+ ### (Optionnel) Étape 12 : Extraire le contenu de vos composants
541
+
542
+ Si vous avez une base de code existante, transformer des milliers de fichiers peut prendre beaucoup de temps.
543
+
544
+ Pour faciliter ce processus, Intlayer propose un [compilateur](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/compiler.md) / [extracteur](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/extract.md) pour transformer vos composants et extraire le contenu.
545
+
546
+ Pour le configurer, vous pouvez ajouter une section `compiler` dans votre fichier `intlayer.config.ts` :
547
+
548
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
549
+ import { type IntlayerConfig } from "intlayer";
550
+
551
+ const config: IntlayerConfig = {
552
+ // ... Reste de votre configuration
553
+ compiler: {
554
+ /**
555
+ * Indique si le compilateur doit être activé.
556
+ */
557
+ enabled: true,
558
+
559
+ /**
560
+ * Définit le chemin des fichiers de sortie
561
+ */
562
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
563
+
564
+ /**
565
+ * Indique si les composants doivent être sauvegardés après avoir été transformés. De cette façon, le compilateur peut être exécuté une seule fois pour transformer l'application, puis il peut être supprimé.
566
+ */
567
+ saveComponents: false,
568
+
569
+ /**
570
+ * Préfixe de clé de dictionnaire
571
+ */
572
+ dictionaryKeyPrefix: "",
573
+ },
574
+ };
575
+
576
+ export default config;
577
+ ```
578
+
579
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
580
+ /** @type {import('intlayer').IntlayerConfig} */
581
+ const config = {
582
+ // ... Reste de votre configuration
583
+ compiler: {
584
+ /**
585
+ * Indique si le compilateur doit être activé.
586
+ */
587
+ enabled: true,
588
+
589
+ /**
590
+ * Définit le chemin des fichiers de sortie
591
+ */
592
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
593
+
594
+ /**
595
+ * Indique si les composants doivent être sauvegardés après avoir été transformés. De cette façon, le compilateur peut être exécuté une seule fois pour transformer l'application, puis il peut être supprimé.
596
+ */
597
+ saveComponents: false,
598
+
599
+ /**
600
+ * Préfixe de clé de dictionnaire
601
+ */
602
+ dictionaryKeyPrefix: "",
603
+ },
604
+ };
605
+
606
+ export default config;
607
+ ```
608
+
609
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
610
+ /** @type {import('intlayer').IntlayerConfig} */
611
+ const config = {
612
+ // ... Reste de votre configuration
613
+ compiler: {
614
+ /**
615
+ * Indique si le compilateur doit être activé.
616
+ */
617
+ enabled: true,
618
+
619
+ /**
620
+ * Définit le chemin des fichiers de sortie
621
+ */
622
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
623
+
624
+ /**
625
+ * Indique si les composants doivent être sauvegardés après avoir été transformés. De cette façon, le compilateur peut être exécuté une seule fois pour transformer l'application, puis il peut être supprimé.
626
+ */
627
+ saveComponents: false,
628
+
629
+ /**
630
+ * Préfixe de clé de dictionnaire
631
+ */
632
+ dictionaryKeyPrefix: "",
633
+ },
634
+ };
635
+
636
+ module.exports = config;
637
+ ```
638
+
639
+ <Tabs>
640
+ <Tab value='Commande d'extraction'>
641
+
642
+ Exécutez l'extracteur pour transformer vos composants et extraire le contenu
643
+
644
+ ```bash packageManager="npm"
645
+ npx intlayer extract
646
+ ```
647
+
648
+ ```bash packageManager="pnpm"
649
+ pnpm intlayer extract
650
+ ```
651
+
652
+ ```bash packageManager="yarn"
653
+ yarn intlayer extract
654
+ ```
655
+
656
+ ```bash packageManager="bun"
657
+ bunx intlayer extract
658
+ ```
659
+
660
+ </Tab>
661
+ <Tab value='Compilateur Babel'>
662
+
663
+ Mettez à jour votre fichier `vite.config.ts` pour inclure le plugin `intlayerCompiler` :
664
+
665
+ ```ts fileName="vite.config.ts"
666
+ import { defineConfig } from "vite";
667
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
668
+
669
+ export default defineConfig({
670
+ plugins: [
671
+ intlayer(),
672
+ intlayerCompiler(), // Ajoute le plugin du compilateur
673
+ ],
674
+ });
675
+ ```
676
+
677
+ ```bash packageManager="npm"
678
+ npm run build # Ou npm run dev
679
+ ```
680
+
681
+ ```bash packageManager="pnpm"
682
+ pnpm run build # Ou pnpm run dev
683
+ ```
684
+
685
+ ```bash packageManager="yarn"
686
+ yarn build # Ou yarn dev
687
+ ```
688
+
689
+ ```bash packageManager="bun"
690
+ bun run build # Or bun run dev
691
+ ```
692
+
693
+ </Tab>
694
+ </Tabs>
695
+
540
696
  ### Configure TypeScript
541
697
 
542
698
  Assurez-vous que votre configuration TypeScript inclut les types autogénérés.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-04-18
3
- updatedAt: 2025-12-30
3
+ updatedAt: 2026-03-12
4
4
  title: Vite + Svelte i18n - Comment traduire une application Svelte en 2026
5
5
  description: Découvrez comment rendre votre site web Vite et Svelte multilingue. Suivez la documentation pour internationaliser (i18n) et traduire votre site.
6
6
  keywords:
@@ -487,6 +487,162 @@ const changeLocale = (event: Event) => {
487
487
  </div>
488
488
  ```
489
489
 
490
+ ### (Optionnel) Étape 9 : Extraire le contenu de vos composants
491
+
492
+ Si vous avez une base de code existante, transformer des milliers de fichiers peut prendre beaucoup de temps.
493
+
494
+ Pour faciliter ce processus, Intlayer propose un [compilateur](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/compiler.md) / [extracteur](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/cli/extract.md) pour transformer vos composants et extraire le contenu.
495
+
496
+ Pour le configurer, vous pouvez ajouter une section `compiler` dans votre fichier `intlayer.config.ts` :
497
+
498
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
499
+ import { type IntlayerConfig } from "intlayer";
500
+
501
+ const config: IntlayerConfig = {
502
+ // ... Reste de votre configuration
503
+ compiler: {
504
+ /**
505
+ * Indique si le compilateur doit être activé.
506
+ */
507
+ enabled: true,
508
+
509
+ /**
510
+ * Définit le chemin des fichiers de sortie
511
+ */
512
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
513
+
514
+ /**
515
+ * Indique si les composants doivent être sauvegardés après avoir été transformés. De cette façon, le compilateur peut être exécuté une seule fois pour transformer l'application, puis il peut être supprimé.
516
+ */
517
+ saveComponents: false,
518
+
519
+ /**
520
+ * Préfixe de clé de dictionnaire
521
+ */
522
+ dictionaryKeyPrefix: "",
523
+ },
524
+ };
525
+
526
+ export default config;
527
+ ```
528
+
529
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
530
+ /** @type {import('intlayer').IntlayerConfig} */
531
+ const config = {
532
+ // ... Reste de votre configuration
533
+ compiler: {
534
+ /**
535
+ * Indique si le compilateur doit être activé.
536
+ */
537
+ enabled: true,
538
+
539
+ /**
540
+ * Définit le chemin des fichiers de sortie
541
+ */
542
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
543
+
544
+ /**
545
+ * Indique si les composants doivent être sauvegardés après avoir été transformés. De cette façon, le compilateur peut être exécuté une seule fois pour transformer l'application, puis il peut être supprimé.
546
+ */
547
+ saveComponents: false,
548
+
549
+ /**
550
+ * Préfixe de clé de dictionnaire
551
+ */
552
+ dictionaryKeyPrefix: "",
553
+ },
554
+ };
555
+
556
+ export default config;
557
+ ```
558
+
559
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
560
+ /** @type {import('intlayer').IntlayerConfig} */
561
+ const config = {
562
+ // ... Reste de votre configuration
563
+ compiler: {
564
+ /**
565
+ * Indique si le compilateur doit être activé.
566
+ */
567
+ enabled: true,
568
+
569
+ /**
570
+ * Définit le chemin des fichiers de sortie
571
+ */
572
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
573
+
574
+ /**
575
+ * Indique si les composants doivent être sauvegardés après avoir été transformés. De cette façon, le compilateur peut être exécuté une seule fois pour transformer l'application, puis il peut être supprimé.
576
+ */
577
+ saveComponents: false,
578
+
579
+ /**
580
+ * Préfixe de clé de dictionnaire
581
+ */
582
+ dictionaryKeyPrefix: "",
583
+ },
584
+ };
585
+
586
+ module.exports = config;
587
+ ```
588
+
589
+ <Tabs>
590
+ <Tab value='Commande d'extraction'>
591
+
592
+ Exécutez l'extracteur pour transformer vos composants et extraire le contenu
593
+
594
+ ```bash packageManager="npm"
595
+ npx intlayer extract
596
+ ```
597
+
598
+ ```bash packageManager="pnpm"
599
+ pnpm intlayer extract
600
+ ```
601
+
602
+ ```bash packageManager="yarn"
603
+ yarn intlayer extract
604
+ ```
605
+
606
+ ```bash packageManager="bun"
607
+ bunx intlayer extract
608
+ ```
609
+
610
+ </Tab>
611
+ <Tab value='Compilateur Babel'>
612
+
613
+ Mettez à jour votre fichier `vite.config.ts` pour inclure le plugin `intlayerCompiler` :
614
+
615
+ ```ts fileName="vite.config.ts"
616
+ import { defineConfig } from "vite";
617
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
618
+
619
+ export default defineConfig({
620
+ plugins: [
621
+ intlayer(),
622
+ intlayerCompiler(), // Ajoute le plugin du compilateur
623
+ ],
624
+ });
625
+ ```
626
+
627
+ ```bash packageManager="npm"
628
+ npm run build # Ou npm run dev
629
+ ```
630
+
631
+ ```bash packageManager="pnpm"
632
+ pnpm run build # Ou pnpm run dev
633
+ ```
634
+
635
+ ```bash packageManager="yarn"
636
+ yarn build # Ou yarn dev
637
+ ```
638
+
639
+ ```bash packageManager="bun"
640
+ bun run build # Or bun run dev
641
+ ```
642
+
643
+ </Tab>
644
+ </Tabs>
645
+
490
646
  ### Configuration Git
491
647
 
492
648
  Il est recommandé d’ignorer les fichiers générés par Intlayer. Cela vous permet d’éviter de les commettre dans votre dépôt Git.