@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: 2025-11-20
3
- updatedAt: 2025-12-30
3
+ updatedAt: 2026-03-12
4
4
  title: SvelteKit i18n - SvelteKit 앱 번역 방법 2026
5
5
  description: SvelteKit 웹사이트를 다국어로 만드는 방법을 알아보세요. 서버 사이드 렌더링(SSR)을 사용하여 국제화(i18n) 및 번역하는 문서를 따라가세요.
6
6
  keywords:
@@ -185,7 +185,7 @@ export default heroContent;
185
185
 
186
186
  > **참고:** `useIntlayer`는 Svelte 스토어를 반환하므로, 반응형 값을 접근하려면 `---
187
187
  > createdAt: 2025-11-20
188
- > updatedAt: 2025-11-20
188
+ > updatedAt: 2026-03-12
189
189
  > title: SvelteKit 앱 번역 방법 – i18n 가이드 2026
190
190
  > description: SvelteKit 웹사이트를 다국어로 만드는 방법을 알아보세요. 서버 사이드 렌더링(SSR)을 사용하여 국제화(i18n) 및 번역하는 문서를 따라가세요.
191
191
  > keywords:
@@ -744,6 +744,162 @@ Intlayer가 생성한 파일은 무시하는 것이 권장됩니다.
744
744
 
745
745
  ---
746
746
 
747
+ ### (선택 사항) 단계 1 : 컴포넌트 콘텐츠 추출
748
+
749
+ 기존 코드베이스가 있는 경우 수천 개의 파일을 변환하는 데 시간이 많이 걸릴 수 있습니다.
750
+
751
+ 이 프로세스를 용이하게 하기 위해 Intlayer는 컴포넌트를 변환하고 콘텐츠를 추출하기 위한 [컴파일러](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/compiler.md) / [추출기](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/cli/extract.md)를 제안합니다.
752
+
753
+ 설정하려면 `intlayer.config.ts` 파일에 `compiler` 섹션을 추가할 수 있습니다.
754
+
755
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
756
+ import { type IntlayerConfig } from "intlayer";
757
+
758
+ const config: IntlayerConfig = {
759
+ // ... 나머지 구성
760
+ compiler: {
761
+ /**
762
+ * 컴파일러 활성화 여부를 나타냅니다.
763
+ */
764
+ enabled: true,
765
+
766
+ /**
767
+ * 출력 파일 경로를 정의합니다.
768
+ */
769
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
770
+
771
+ /**
772
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
773
+ */
774
+ saveComponents: false,
775
+
776
+ /**
777
+ * 사전 키 접두사
778
+ */
779
+ dictionaryKeyPrefix: "",
780
+ },
781
+ };
782
+
783
+ export default config;
784
+ ```
785
+
786
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
787
+ /** @type {import('intlayer').IntlayerConfig} */
788
+ const config = {
789
+ // ... 나머지 구성
790
+ compiler: {
791
+ /**
792
+ * 컴파일러 활성화 여부를 나타냅니다.
793
+ */
794
+ enabled: true,
795
+
796
+ /**
797
+ * 출력 파일 경로를 정의합니다.
798
+ */
799
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
800
+
801
+ /**
802
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
803
+ */
804
+ saveComponents: false,
805
+
806
+ /**
807
+ * 사전 키 접두사
808
+ */
809
+ dictionaryKeyPrefix: "",
810
+ },
811
+ };
812
+
813
+ export default config;
814
+ ```
815
+
816
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
817
+ /** @type {import('intlayer').IntlayerConfig} */
818
+ const config = {
819
+ // ... 나머지 구성
820
+ compiler: {
821
+ /**
822
+ * 컴파일러 활성화 여부를 나타냅니다.
823
+ */
824
+ enabled: true,
825
+
826
+ /**
827
+ * 출력 파일 경로를 정의합니다.
828
+ */
829
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
830
+
831
+ /**
832
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
833
+ */
834
+ saveComponents: false,
835
+
836
+ /**
837
+ * 사전 키 접두사
838
+ */
839
+ dictionaryKeyPrefix: "",
840
+ },
841
+ };
842
+
843
+ module.exports = config;
844
+ ```
845
+
846
+ <Tabs>
847
+ <Tab value='추출 명령'>
848
+
849
+ 컴포넌트를 변환하고 콘텐츠를 추출하기 위해 추출기를 실행합니다
850
+
851
+ ```bash packageManager="npm"
852
+ npx intlayer extract
853
+ ```
854
+
855
+ ```bash packageManager="pnpm"
856
+ pnpm intlayer extract
857
+ ```
858
+
859
+ ```bash packageManager="yarn"
860
+ yarn intlayer extract
861
+ ```
862
+
863
+ ```bash packageManager="bun"
864
+ bunx intlayer extract
865
+ ```
866
+
867
+ </Tab>
868
+ <Tab value='Babel 컴파일러'>
869
+
870
+ `vite.config.ts`를 업데이트하여 `intlayerCompiler` 플러그인을 포함합니다.
871
+
872
+ ```ts fileName="vite.config.ts"
873
+ import { defineConfig } from "vite";
874
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
875
+
876
+ export default defineConfig({
877
+ plugins: [
878
+ intlayer(),
879
+ intlayerCompiler(), // 컴파일러 플러그인을 추가합니다
880
+ ],
881
+ });
882
+ ```
883
+
884
+ ```bash packageManager="npm"
885
+ npm run build # 또는 npm run dev
886
+ ```
887
+
888
+ ```bash packageManager="pnpm"
889
+ pnpm run build # 또는 pnpm run dev
890
+ ```
891
+
892
+ ```bash packageManager="yarn"
893
+ yarn build # 또는 yarn dev
894
+ ```
895
+
896
+ ```bash packageManager="bun"
897
+ bun run build # Or bun run dev
898
+ ```
899
+
900
+ </Tab>
901
+ </Tabs>
902
+
747
903
  ### 더 나아가기
748
904
 
749
905
  - **비주얼 에디터**: UI에서 직접 번역을 편집할 수 있도록 [Intlayer 비주얼 에디터](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_visual_editor.md)를 통합하세요.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-09
3
- updatedAt: 2025-12-30
3
+ updatedAt: 2026-03-12
4
4
  title: Tanstack Start i18n - Tanstack Start 앱 번역 방법 2026
5
5
  description: Intlayer를 사용하여 TanStack Start 애플리케이션에 국제화(i18n)를 추가하는 방법을 알아보세요. 로케일 인식 라우팅으로 앱을 다국어화하기 위한 이 포괄적인 가이드를 따르세요.
6
6
  keywords:
@@ -773,6 +773,164 @@ TypeScript 구성에 자동 생성된 유형이 포함되어 있는지 확인하
773
773
 
774
774
  ---
775
775
 
776
+ ### (선택 사항) 단계 1 : 컴포넌트 콘텐츠 추출
777
+
778
+ 기존 코드베이스가 있는 경우 수천 개의 파일을 변환하는 데 시간이 많이 걸릴 수 있습니다.
779
+
780
+ 이 프로세스를 용이하게 하기 위해 Intlayer는 컴포넌트를 변환하고 콘텐츠를 추출하기 위한 [컴파일러](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/compiler.md) / [추출기](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/cli/extract.md)를 제안합니다.
781
+
782
+ 설정하려면 `intlayer.config.ts` 파일에 `compiler` 섹션을 추가할 수 있습니다.
783
+
784
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
785
+ import { type IntlayerConfig } from "intlayer";
786
+
787
+ const config: IntlayerConfig = {
788
+ // ... 나머지 구성
789
+ compiler: {
790
+ /**
791
+ * 컴파일러 활성화 여부를 나타냅니다.
792
+ */
793
+ enabled: true,
794
+
795
+ /**
796
+ * 출력 파일 경로를 정의합니다.
797
+ */
798
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
799
+
800
+ /**
801
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
802
+ */
803
+ saveComponents: false,
804
+
805
+ /**
806
+ * 사전 키 접두사
807
+ */
808
+ dictionaryKeyPrefix: "",
809
+ },
810
+ };
811
+
812
+ export default config;
813
+ ```
814
+
815
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
816
+ /** @type {import('intlayer').IntlayerConfig} */
817
+ const config = {
818
+ // ... 나머지 구성
819
+ compiler: {
820
+ /**
821
+ * 컴파일러 활성화 여부를 나타냅니다.
822
+ */
823
+ enabled: true,
824
+
825
+ /**
826
+ * 출력 파일 경로를 정의합니다.
827
+ */
828
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
829
+
830
+ /**
831
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
832
+ */
833
+ saveComponents: false,
834
+
835
+ /**
836
+ * 사전 키 접두사
837
+ */
838
+ dictionaryKeyPrefix: "",
839
+ },
840
+ };
841
+
842
+ export default config;
843
+ ```
844
+
845
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
846
+ /** @type {import('intlayer').IntlayerConfig} */
847
+ const config = {
848
+ // ... 나머지 구성
849
+ compiler: {
850
+ /**
851
+ * 컴파일러 활성화 여부를 나타냅니다.
852
+ */
853
+ enabled: true,
854
+
855
+ /**
856
+ * 출력 파일 경로를 정의합니다.
857
+ */
858
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
859
+
860
+ /**
861
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
862
+ */
863
+ saveComponents: false,
864
+
865
+ /**
866
+ * 사전 키 접두사
867
+ */
868
+ dictionaryKeyPrefix: "",
869
+ },
870
+ };
871
+
872
+ module.exports = config;
873
+ ```
874
+
875
+ <Tabs>
876
+ <Tab value='추출 명령'>
877
+
878
+ 컴포넌트를 변환하고 콘텐츠를 추출하기 위해 추출기를 실행합니다
879
+
880
+ ```bash packageManager="npm"
881
+ npx intlayer extract
882
+ ```
883
+
884
+ ```bash packageManager="pnpm"
885
+ pnpm intlayer extract
886
+ ```
887
+
888
+ ```bash packageManager="yarn"
889
+ yarn intlayer extract
890
+ ```
891
+
892
+ ```bash packageManager="bun"
893
+ bunx intlayer extract
894
+ ```
895
+
896
+ </Tab>
897
+ <Tab value='Babel 컴파일러'>
898
+
899
+ `vite.config.ts`를 업데이트하여 `intlayerCompiler` 플러그인을 포함합니다.
900
+
901
+ ```ts fileName="vite.config.ts"
902
+ import { defineConfig } from "vite";
903
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
904
+
905
+ export default defineConfig({
906
+ plugins: [
907
+ intlayer(),
908
+ intlayerCompiler(), // 컴파일러 플러그인을 추가합니다
909
+ ],
910
+ });
911
+ ```
912
+
913
+ ```bash packageManager="npm"
914
+ npm run build # 또는 npm run dev
915
+ ```
916
+
917
+ ```bash packageManager="pnpm"
918
+ pnpm run build # 또는 pnpm run dev
919
+ ```
920
+
921
+ ```bash packageManager="yarn"
922
+ yarn build # 또는 yarn dev
923
+ ```
924
+
925
+ ```bash packageManager="bun"
926
+ bun run build # Or bun run dev
927
+ ```
928
+
929
+ </Tab>
930
+ </Tabs>
931
+
932
+ ---
933
+
776
934
  ### Git 구성
777
935
 
778
936
  Intlayer에서 생성된 파일은 무시하는 것이 좋습니다. 이를 통해 Git 저장소에 커밋되는 것을 방지할 수 있습니다.
@@ -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 + Preact i18n - Preact 앱 번역 방법 2026
5
5
  description: Vite와 Preact 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
6
6
  keywords:
@@ -1359,6 +1359,162 @@ Intlayer 개발 경험을 향상시키기 위해 공식 **Intlayer VS Code 확
1359
1359
 
1360
1360
  ---
1361
1361
 
1362
+ ### (선택 사항) 단계 1 : 컴포넌트 콘텐츠 추출
1363
+
1364
+ 기존 코드베이스가 있는 경우 수천 개의 파일을 변환하는 데 시간이 많이 걸릴 수 있습니다.
1365
+
1366
+ 이 프로세스를 용이하게 하기 위해 Intlayer는 컴포넌트를 변환하고 콘텐츠를 추출하기 위한 [컴파일러](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/compiler.md) / [추출기](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/cli/extract.md)를 제안합니다.
1367
+
1368
+ 설정하려면 `intlayer.config.ts` 파일에 `compiler` 섹션을 추가할 수 있습니다.
1369
+
1370
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
1371
+ import { type IntlayerConfig } from "intlayer";
1372
+
1373
+ const config: IntlayerConfig = {
1374
+ // ... 나머지 구성
1375
+ compiler: {
1376
+ /**
1377
+ * 컴파일러 활성화 여부를 나타냅니다.
1378
+ */
1379
+ enabled: true,
1380
+
1381
+ /**
1382
+ * 출력 파일 경로를 정의합니다.
1383
+ */
1384
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1385
+
1386
+ /**
1387
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
1388
+ */
1389
+ saveComponents: false,
1390
+
1391
+ /**
1392
+ * 사전 키 접두사
1393
+ */
1394
+ dictionaryKeyPrefix: "",
1395
+ },
1396
+ };
1397
+
1398
+ export default config;
1399
+ ```
1400
+
1401
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
1402
+ /** @type {import('intlayer').IntlayerConfig} */
1403
+ const config = {
1404
+ // ... 나머지 구성
1405
+ compiler: {
1406
+ /**
1407
+ * 컴파일러 활성화 여부를 나타냅니다.
1408
+ */
1409
+ enabled: true,
1410
+
1411
+ /**
1412
+ * 출력 파일 경로를 정의합니다.
1413
+ */
1414
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1415
+
1416
+ /**
1417
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
1418
+ */
1419
+ saveComponents: false,
1420
+
1421
+ /**
1422
+ * 사전 키 접두사
1423
+ */
1424
+ dictionaryKeyPrefix: "",
1425
+ },
1426
+ };
1427
+
1428
+ export default config;
1429
+ ```
1430
+
1431
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
1432
+ /** @type {import('intlayer').IntlayerConfig} */
1433
+ const config = {
1434
+ // ... 나머지 구성
1435
+ compiler: {
1436
+ /**
1437
+ * 컴파일러 활성화 여부를 나타냅니다.
1438
+ */
1439
+ enabled: true,
1440
+
1441
+ /**
1442
+ * 출력 파일 경로를 정의합니다.
1443
+ */
1444
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1445
+
1446
+ /**
1447
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
1448
+ */
1449
+ saveComponents: false,
1450
+
1451
+ /**
1452
+ * 사전 키 접두사
1453
+ */
1454
+ dictionaryKeyPrefix: "",
1455
+ },
1456
+ };
1457
+
1458
+ module.exports = config;
1459
+ ```
1460
+
1461
+ <Tabs>
1462
+ <Tab value='추출 명령'>
1463
+
1464
+ 컴포넌트를 변환하고 콘텐츠를 추출하기 위해 추출기를 실행합니다
1465
+
1466
+ ```bash packageManager="npm"
1467
+ npx intlayer extract
1468
+ ```
1469
+
1470
+ ```bash packageManager="pnpm"
1471
+ pnpm intlayer extract
1472
+ ```
1473
+
1474
+ ```bash packageManager="yarn"
1475
+ yarn intlayer extract
1476
+ ```
1477
+
1478
+ ```bash packageManager="bun"
1479
+ bunx intlayer extract
1480
+ ```
1481
+
1482
+ </Tab>
1483
+ <Tab value='Babel 컴파일러'>
1484
+
1485
+ `vite.config.ts`를 업데이트하여 `intlayerCompiler` 플러그인을 포함합니다.
1486
+
1487
+ ```ts fileName="vite.config.ts"
1488
+ import { defineConfig } from "vite";
1489
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
1490
+
1491
+ export default defineConfig({
1492
+ plugins: [
1493
+ intlayer(),
1494
+ intlayerCompiler(), // 컴파일러 플러그인을 추가합니다
1495
+ ],
1496
+ });
1497
+ ```
1498
+
1499
+ ```bash packageManager="npm"
1500
+ npm run build # 또는 npm run dev
1501
+ ```
1502
+
1503
+ ```bash packageManager="pnpm"
1504
+ pnpm run build # 또는 pnpm run dev
1505
+ ```
1506
+
1507
+ ```bash packageManager="yarn"
1508
+ yarn build # 또는 yarn dev
1509
+ ```
1510
+
1511
+ ```bash packageManager="bun"
1512
+ bun run build # Or bun run dev
1513
+ ```
1514
+
1515
+ </Tab>
1516
+ </Tabs>
1517
+
1362
1518
  ### 더 나아가기
1363
1519
 
1364
1520
  더 나아가려면, [비주얼 에디터](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_visual_editor.md)를 구현하거나 [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_CMS.md)를 사용하여 콘텐츠를 외부화할 수 있습니다.
@@ -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 - React 앱 번역 방법 2026
5
5
  description: Intlayer를 사용하여 Vite 및 React 애플리케이션에 국제화(i18n)를 추가하는 방법을 배우세요. 이 가이드를 따라 앱을 다국어로 만드세요.
6
6
  keywords:
@@ -1406,6 +1406,162 @@ Intlayer와 함께 개발 경험을 향상시키기 위해 공식 **Intlayer VS
1406
1406
 
1407
1407
  ---
1408
1408
 
1409
+ ### (선택 사항) 단계 1 : 컴포넌트 콘텐츠 추출
1410
+
1411
+ 기존 코드베이스가 있는 경우 수천 개의 파일을 변환하는 데 시간이 많이 걸릴 수 있습니다.
1412
+
1413
+ 이 프로세스를 용이하게 하기 위해 Intlayer는 컴포넌트를 변환하고 콘텐츠를 추출하기 위한 [컴파일러](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/compiler.md) / [추출기](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/cli/extract.md)를 제안합니다.
1414
+
1415
+ 설정하려면 `intlayer.config.ts` 파일에 `compiler` 섹션을 추가할 수 있습니다.
1416
+
1417
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
1418
+ import { type IntlayerConfig } from "intlayer";
1419
+
1420
+ const config: IntlayerConfig = {
1421
+ // ... 나머지 구성
1422
+ compiler: {
1423
+ /**
1424
+ * 컴파일러 활성화 여부를 나타냅니다.
1425
+ */
1426
+ enabled: true,
1427
+
1428
+ /**
1429
+ * 출력 파일 경로를 정의합니다.
1430
+ */
1431
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1432
+
1433
+ /**
1434
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
1435
+ */
1436
+ saveComponents: false,
1437
+
1438
+ /**
1439
+ * 사전 키 접두사
1440
+ */
1441
+ dictionaryKeyPrefix: "",
1442
+ },
1443
+ };
1444
+
1445
+ export default config;
1446
+ ```
1447
+
1448
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
1449
+ /** @type {import('intlayer').IntlayerConfig} */
1450
+ const config = {
1451
+ // ... 나머지 구성
1452
+ compiler: {
1453
+ /**
1454
+ * 컴파일러 활성화 여부를 나타냅니다.
1455
+ */
1456
+ enabled: true,
1457
+
1458
+ /**
1459
+ * 출력 파일 경로를 정의합니다.
1460
+ */
1461
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1462
+
1463
+ /**
1464
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
1465
+ */
1466
+ saveComponents: false,
1467
+
1468
+ /**
1469
+ * 사전 키 접두사
1470
+ */
1471
+ dictionaryKeyPrefix: "",
1472
+ },
1473
+ };
1474
+
1475
+ export default config;
1476
+ ```
1477
+
1478
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
1479
+ /** @type {import('intlayer').IntlayerConfig} */
1480
+ const config = {
1481
+ // ... 나머지 구성
1482
+ compiler: {
1483
+ /**
1484
+ * 컴파일러 활성화 여부를 나타냅니다.
1485
+ */
1486
+ enabled: true,
1487
+
1488
+ /**
1489
+ * 출력 파일 경로를 정의합니다.
1490
+ */
1491
+ output: ({ fileName, extension }) => `./${fileName}${extension}`,
1492
+
1493
+ /**
1494
+ * 변환 후 컴포넌트를 저장할지 여부를 나타냅니다. 그렇게 하면 컴파일러를 한 번만 실행하여 앱을 변환한 다음 제거할 수 있습니다.
1495
+ */
1496
+ saveComponents: false,
1497
+
1498
+ /**
1499
+ * 사전 키 접두사
1500
+ */
1501
+ dictionaryKeyPrefix: "",
1502
+ },
1503
+ };
1504
+
1505
+ module.exports = config;
1506
+ ```
1507
+
1508
+ <Tabs>
1509
+ <Tab value='추출 명령'>
1510
+
1511
+ 컴포넌트를 변환하고 콘텐츠를 추출하기 위해 추출기를 실행합니다
1512
+
1513
+ ```bash packageManager="npm"
1514
+ npx intlayer extract
1515
+ ```
1516
+
1517
+ ```bash packageManager="pnpm"
1518
+ pnpm intlayer extract
1519
+ ```
1520
+
1521
+ ```bash packageManager="yarn"
1522
+ yarn intlayer extract
1523
+ ```
1524
+
1525
+ ```bash packageManager="bun"
1526
+ bunx intlayer extract
1527
+ ```
1528
+
1529
+ </Tab>
1530
+ <Tab value='Babel 컴파일러'>
1531
+
1532
+ `vite.config.ts`를 업데이트하여 `intlayerCompiler` 플러그인을 포함합니다.
1533
+
1534
+ ```ts fileName="vite.config.ts"
1535
+ import { defineConfig } from "vite";
1536
+ import { intlayer, intlayerCompiler } from "vite-intlayer";
1537
+
1538
+ export default defineConfig({
1539
+ plugins: [
1540
+ intlayer(),
1541
+ intlayerCompiler(), // 컴파일러 플러그인을 추가합니다
1542
+ ],
1543
+ });
1544
+ ```
1545
+
1546
+ ```bash packageManager="npm"
1547
+ npm run build # 또는 npm run dev
1548
+ ```
1549
+
1550
+ ```bash packageManager="pnpm"
1551
+ pnpm run build # 또는 pnpm run dev
1552
+ ```
1553
+
1554
+ ```bash packageManager="yarn"
1555
+ yarn build # 또는 yarn dev
1556
+ ```
1557
+
1558
+ ```bash packageManager="bun"
1559
+ bun run build # Or bun run dev
1560
+ ```
1561
+
1562
+ </Tab>
1563
+ </Tabs>
1564
+
1409
1565
  ### 더 나아가기
1410
1566
 
1411
1567
  더 나아가려면 [비주얼 에디터](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_visual_editor.md)를 구현하거나 [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/intlayer_CMS.md)를 사용하여 콘텐츠를 외부화할 수 있습니다.