@intlayer/docs 7.5.8 → 7.5.10

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 (529) hide show
  1. package/README.md +9 -2
  2. package/dist/cjs/generated/docs.entry.cjs +38 -0
  3. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  4. package/dist/esm/generated/docs.entry.mjs +38 -0
  5. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  6. package/dist/types/generated/docs.entry.d.ts +2 -0
  7. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  8. package/docs/ar/cli/index.md +6 -1
  9. package/docs/ar/cli/init.md +84 -0
  10. package/docs/ar/cli/push.md +1 -1
  11. package/docs/ar/configuration.md +3 -3
  12. package/docs/ar/interest_of_intlayer.md +1 -1
  13. package/docs/ar/intlayer_CMS.md +5 -5
  14. package/docs/ar/intlayer_with_angular.md +5 -2
  15. package/docs/ar/intlayer_with_astro.md +5 -2
  16. package/docs/ar/intlayer_with_create_react_app.md +5 -2
  17. package/docs/ar/intlayer_with_express.md +6 -2
  18. package/docs/ar/intlayer_with_fastify.md +516 -0
  19. package/docs/ar/intlayer_with_lynx+react.md +5 -2
  20. package/docs/ar/intlayer_with_nestjs.md +5 -2
  21. package/docs/ar/intlayer_with_next-i18next.md +1 -1
  22. package/docs/ar/intlayer_with_next-intl.md +1 -1
  23. package/docs/ar/intlayer_with_nextjs_14.md +1 -1
  24. package/docs/ar/intlayer_with_nextjs_15.md +5 -2
  25. package/docs/ar/intlayer_with_nextjs_16.md +5 -2
  26. package/docs/ar/intlayer_with_nextjs_page_router.md +5 -2
  27. package/docs/ar/intlayer_with_nuxt.md +1 -1
  28. package/docs/ar/intlayer_with_react_native+expo.md +5 -2
  29. package/docs/ar/intlayer_with_react_router_v7.md +5 -2
  30. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +5 -2
  31. package/docs/ar/intlayer_with_svelte_kit.md +5 -2
  32. package/docs/ar/intlayer_with_tanstack.md +5 -2
  33. package/docs/ar/intlayer_with_vite+preact.md +5 -2
  34. package/docs/ar/intlayer_with_vite+react.md +5 -2
  35. package/docs/ar/intlayer_with_vite+solid.md +5 -2
  36. package/docs/ar/intlayer_with_vite+svelte.md +5 -2
  37. package/docs/ar/intlayer_with_vite+vue.md +5 -2
  38. package/docs/ar/readme.md +1 -1
  39. package/docs/de/cli/index.md +6 -1
  40. package/docs/de/cli/init.md +92 -0
  41. package/docs/de/cli/push.md +1 -1
  42. package/docs/de/configuration.md +3 -3
  43. package/docs/de/interest_of_intlayer.md +1 -1
  44. package/docs/de/intlayer_CMS.md +5 -5
  45. package/docs/de/intlayer_with_angular.md +5 -2
  46. package/docs/de/intlayer_with_astro.md +5 -2
  47. package/docs/de/intlayer_with_create_react_app.md +1 -1
  48. package/docs/de/intlayer_with_express.md +6 -2
  49. package/docs/de/intlayer_with_fastify.md +449 -0
  50. package/docs/de/intlayer_with_lynx+react.md +5 -2
  51. package/docs/de/intlayer_with_nestjs.md +5 -2
  52. package/docs/de/intlayer_with_next-i18next.md +1 -1
  53. package/docs/de/intlayer_with_next-intl.md +1 -1
  54. package/docs/de/intlayer_with_nextjs_14.md +1 -1
  55. package/docs/de/intlayer_with_nextjs_15.md +5 -2
  56. package/docs/de/intlayer_with_nextjs_16.md +5 -2
  57. package/docs/de/intlayer_with_nextjs_page_router.md +5 -2
  58. package/docs/de/intlayer_with_nuxt.md +1 -1
  59. package/docs/de/intlayer_with_react_native+expo.md +5 -2
  60. package/docs/de/intlayer_with_react_router_v7.md +5 -2
  61. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +5 -2
  62. package/docs/de/intlayer_with_svelte_kit.md +5 -2
  63. package/docs/de/intlayer_with_tanstack.md +5 -2
  64. package/docs/de/intlayer_with_vite+preact.md +5 -2
  65. package/docs/de/intlayer_with_vite+react.md +5 -2
  66. package/docs/de/intlayer_with_vite+solid.md +5 -2
  67. package/docs/de/intlayer_with_vite+svelte.md +5 -2
  68. package/docs/de/intlayer_with_vite+vue.md +5 -2
  69. package/docs/de/readme.md +1 -1
  70. package/docs/en/cli/index.md +6 -1
  71. package/docs/en/cli/init.md +84 -0
  72. package/docs/en/cli/push.md +1 -1
  73. package/docs/en/configuration.md +3 -3
  74. package/docs/en/interest_of_intlayer.md +1 -1
  75. package/docs/en/intlayer_CMS.md +5 -5
  76. package/docs/en/intlayer_with_angular.md +5 -2
  77. package/docs/en/intlayer_with_astro.md +5 -2
  78. package/docs/en/intlayer_with_create_react_app.md +5 -2
  79. package/docs/en/intlayer_with_express.md +6 -2
  80. package/docs/en/intlayer_with_fastify.md +439 -0
  81. package/docs/en/intlayer_with_lynx+react.md +5 -2
  82. package/docs/en/intlayer_with_nestjs.md +5 -2
  83. package/docs/en/intlayer_with_next-i18next.md +1 -1
  84. package/docs/en/intlayer_with_next-intl.md +1 -1
  85. package/docs/en/intlayer_with_nextjs_14.md +5 -2
  86. package/docs/en/intlayer_with_nextjs_15.md +5 -2
  87. package/docs/en/intlayer_with_nextjs_16.md +5 -2
  88. package/docs/en/intlayer_with_nextjs_page_router.md +5 -2
  89. package/docs/en/intlayer_with_nuxt.md +5 -2
  90. package/docs/en/intlayer_with_react_native+expo.md +5 -2
  91. package/docs/en/intlayer_with_react_router_v7.md +5 -2
  92. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +5 -2
  93. package/docs/en/intlayer_with_svelte_kit.md +5 -2
  94. package/docs/en/intlayer_with_tanstack.md +5 -2
  95. package/docs/en/intlayer_with_vite+preact.md +5 -2
  96. package/docs/en/intlayer_with_vite+react.md +5 -2
  97. package/docs/en/intlayer_with_vite+solid.md +5 -2
  98. package/docs/en/intlayer_with_vite+svelte.md +5 -2
  99. package/docs/en/intlayer_with_vite+vue.md +5 -2
  100. package/docs/en/readme.md +3 -1
  101. package/docs/en-GB/cli/index.md +6 -1
  102. package/docs/en-GB/cli/init.md +89 -0
  103. package/docs/en-GB/cli/push.md +1 -1
  104. package/docs/en-GB/configuration.md +3 -3
  105. package/docs/en-GB/interest_of_intlayer.md +1 -1
  106. package/docs/en-GB/intlayer_CMS.md +5 -5
  107. package/docs/en-GB/intlayer_with_angular.md +5 -2
  108. package/docs/en-GB/intlayer_with_astro.md +5 -2
  109. package/docs/en-GB/intlayer_with_create_react_app.md +5 -2
  110. package/docs/en-GB/intlayer_with_express.md +6 -2
  111. package/docs/en-GB/intlayer_with_fastify.md +445 -0
  112. package/docs/en-GB/intlayer_with_lynx+react.md +5 -2
  113. package/docs/en-GB/intlayer_with_nestjs.md +5 -2
  114. package/docs/en-GB/intlayer_with_next-i18next.md +1 -1
  115. package/docs/en-GB/intlayer_with_next-intl.md +1 -1
  116. package/docs/en-GB/intlayer_with_nextjs_14.md +5 -2
  117. package/docs/en-GB/intlayer_with_nextjs_15.md +5 -2
  118. package/docs/en-GB/intlayer_with_nextjs_16.md +5 -2
  119. package/docs/en-GB/intlayer_with_nextjs_page_router.md +5 -2
  120. package/docs/en-GB/intlayer_with_nuxt.md +1 -1
  121. package/docs/en-GB/intlayer_with_react_native+expo.md +5 -2
  122. package/docs/en-GB/intlayer_with_react_router_v7.md +5 -2
  123. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +5 -2
  124. package/docs/en-GB/intlayer_with_svelte_kit.md +5 -2
  125. package/docs/en-GB/intlayer_with_tanstack.md +5 -2
  126. package/docs/en-GB/intlayer_with_vite+preact.md +5 -2
  127. package/docs/en-GB/intlayer_with_vite+react.md +5 -2
  128. package/docs/en-GB/intlayer_with_vite+solid.md +5 -2
  129. package/docs/en-GB/intlayer_with_vite+svelte.md +5 -2
  130. package/docs/en-GB/intlayer_with_vite+vue.md +5 -2
  131. package/docs/en-GB/readme.md +3 -1
  132. package/docs/es/cli/index.md +6 -1
  133. package/docs/es/cli/init.md +84 -0
  134. package/docs/es/cli/push.md +1 -1
  135. package/docs/es/configuration.md +3 -3
  136. package/docs/es/interest_of_intlayer.md +1 -1
  137. package/docs/es/intlayer_CMS.md +5 -5
  138. package/docs/es/intlayer_with_angular.md +5 -2
  139. package/docs/es/intlayer_with_astro.md +5 -2
  140. package/docs/es/intlayer_with_create_react_app.md +5 -2
  141. package/docs/es/intlayer_with_express.md +6 -2
  142. package/docs/es/intlayer_with_fastify.md +480 -0
  143. package/docs/es/intlayer_with_lynx+react.md +5 -2
  144. package/docs/es/intlayer_with_nestjs.md +5 -2
  145. package/docs/es/intlayer_with_next-i18next.md +1 -1
  146. package/docs/es/intlayer_with_next-intl.md +1 -1
  147. package/docs/es/intlayer_with_nextjs_14.md +5 -2
  148. package/docs/es/intlayer_with_nextjs_15.md +5 -2
  149. package/docs/es/intlayer_with_nextjs_16.md +5 -2
  150. package/docs/es/intlayer_with_nextjs_page_router.md +5 -2
  151. package/docs/es/intlayer_with_nuxt.md +1 -1
  152. package/docs/es/intlayer_with_react_native+expo.md +5 -2
  153. package/docs/es/intlayer_with_react_router_v7.md +5 -2
  154. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +5 -2
  155. package/docs/es/intlayer_with_svelte_kit.md +5 -2
  156. package/docs/es/intlayer_with_tanstack.md +5 -2
  157. package/docs/es/intlayer_with_vite+preact.md +5 -2
  158. package/docs/es/intlayer_with_vite+react.md +5 -2
  159. package/docs/es/intlayer_with_vite+solid.md +5 -2
  160. package/docs/es/intlayer_with_vite+svelte.md +5 -2
  161. package/docs/es/intlayer_with_vite+vue.md +5 -2
  162. package/docs/es/readme.md +1 -1
  163. package/docs/fr/cli/index.md +6 -1
  164. package/docs/fr/cli/init.md +84 -0
  165. package/docs/fr/cli/push.md +1 -1
  166. package/docs/fr/configuration.md +3 -3
  167. package/docs/fr/interest_of_intlayer.md +1 -1
  168. package/docs/fr/intlayer_CMS.md +5 -5
  169. package/docs/fr/intlayer_with_angular.md +5 -2
  170. package/docs/fr/intlayer_with_astro.md +5 -2
  171. package/docs/fr/intlayer_with_create_react_app.md +5 -2
  172. package/docs/fr/intlayer_with_express.md +6 -2
  173. package/docs/fr/intlayer_with_fastify.md +439 -0
  174. package/docs/fr/intlayer_with_lynx+react.md +5 -2
  175. package/docs/fr/intlayer_with_nestjs.md +5 -2
  176. package/docs/fr/intlayer_with_next-i18next.md +1 -1
  177. package/docs/fr/intlayer_with_next-intl.md +1 -1
  178. package/docs/fr/intlayer_with_nextjs_14.md +1 -1
  179. package/docs/fr/intlayer_with_nextjs_15.md +5 -2
  180. package/docs/fr/intlayer_with_nextjs_16.md +5 -2
  181. package/docs/fr/intlayer_with_nextjs_page_router.md +5 -2
  182. package/docs/fr/intlayer_with_nuxt.md +1 -1
  183. package/docs/fr/intlayer_with_react_native+expo.md +5 -2
  184. package/docs/fr/intlayer_with_react_router_v7.md +5 -2
  185. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +5 -2
  186. package/docs/fr/intlayer_with_svelte_kit.md +5 -2
  187. package/docs/fr/intlayer_with_tanstack.md +5 -2
  188. package/docs/fr/intlayer_with_vite+preact.md +5 -2
  189. package/docs/fr/intlayer_with_vite+react.md +5 -2
  190. package/docs/fr/intlayer_with_vite+solid.md +5 -2
  191. package/docs/fr/intlayer_with_vite+svelte.md +5 -2
  192. package/docs/fr/intlayer_with_vite+vue.md +5 -2
  193. package/docs/fr/readme.md +1 -1
  194. package/docs/hi/cli/index.md +6 -1
  195. package/docs/hi/cli/init.md +92 -0
  196. package/docs/hi/cli/push.md +1 -1
  197. package/docs/hi/configuration.md +3 -3
  198. package/docs/hi/interest_of_intlayer.md +1 -1
  199. package/docs/hi/intlayer_CMS.md +5 -5
  200. package/docs/hi/intlayer_with_angular.md +5 -2
  201. package/docs/hi/intlayer_with_astro.md +5 -2
  202. package/docs/hi/intlayer_with_create_react_app.md +1 -1
  203. package/docs/hi/intlayer_with_express.md +6 -2
  204. package/docs/hi/intlayer_with_fastify.md +540 -0
  205. package/docs/hi/intlayer_with_lynx+react.md +5 -2
  206. package/docs/hi/intlayer_with_nestjs.md +5 -2
  207. package/docs/hi/intlayer_with_next-i18next.md +1 -1
  208. package/docs/hi/intlayer_with_next-intl.md +1 -1
  209. package/docs/hi/intlayer_with_nextjs_14.md +1 -1
  210. package/docs/hi/intlayer_with_nextjs_15.md +5 -2
  211. package/docs/hi/intlayer_with_nextjs_16.md +5 -2
  212. package/docs/hi/intlayer_with_nextjs_page_router.md +5 -2
  213. package/docs/hi/intlayer_with_nuxt.md +1 -1
  214. package/docs/hi/intlayer_with_react_native+expo.md +5 -2
  215. package/docs/hi/intlayer_with_react_router_v7.md +5 -2
  216. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +5 -2
  217. package/docs/hi/intlayer_with_svelte_kit.md +5 -2
  218. package/docs/hi/intlayer_with_tanstack.md +5 -2
  219. package/docs/hi/intlayer_with_vite+preact.md +5 -2
  220. package/docs/hi/intlayer_with_vite+react.md +5 -2
  221. package/docs/hi/intlayer_with_vite+solid.md +5 -2
  222. package/docs/hi/intlayer_with_vite+svelte.md +5 -2
  223. package/docs/hi/intlayer_with_vite+vue.md +5 -2
  224. package/docs/hi/readme.md +1 -1
  225. package/docs/id/cli/index.md +6 -1
  226. package/docs/id/cli/init.md +89 -0
  227. package/docs/id/cli/push.md +1 -1
  228. package/docs/id/configuration.md +3 -3
  229. package/docs/id/interest_of_intlayer.md +1 -1
  230. package/docs/id/intlayer_CMS.md +5 -5
  231. package/docs/id/intlayer_with_angular.md +5 -2
  232. package/docs/id/intlayer_with_astro.md +5 -2
  233. package/docs/id/intlayer_with_create_react_app.md +5 -2
  234. package/docs/id/intlayer_with_express.md +6 -2
  235. package/docs/id/intlayer_with_fastify.md +470 -0
  236. package/docs/id/intlayer_with_lynx+react.md +5 -2
  237. package/docs/id/intlayer_with_nestjs.md +5 -2
  238. package/docs/id/intlayer_with_next-i18next.md +1 -1
  239. package/docs/id/intlayer_with_next-intl.md +1 -1
  240. package/docs/id/intlayer_with_nextjs_14.md +5 -2
  241. package/docs/id/intlayer_with_nextjs_15.md +5 -2
  242. package/docs/id/intlayer_with_nextjs_16.md +5 -2
  243. package/docs/id/intlayer_with_nextjs_page_router.md +5 -2
  244. package/docs/id/intlayer_with_nuxt.md +1 -1
  245. package/docs/id/intlayer_with_react_native+expo.md +5 -2
  246. package/docs/id/intlayer_with_react_router_v7.md +5 -2
  247. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +5 -2
  248. package/docs/id/intlayer_with_svelte_kit.md +5 -2
  249. package/docs/id/intlayer_with_tanstack.md +5 -2
  250. package/docs/id/intlayer_with_vite+preact.md +5 -2
  251. package/docs/id/intlayer_with_vite+react.md +5 -2
  252. package/docs/id/intlayer_with_vite+solid.md +5 -2
  253. package/docs/id/intlayer_with_vite+svelte.md +5 -2
  254. package/docs/id/intlayer_with_vite+vue.md +5 -2
  255. package/docs/id/readme.md +1 -1
  256. package/docs/it/cli/index.md +6 -1
  257. package/docs/it/cli/init.md +97 -0
  258. package/docs/it/cli/push.md +1 -1
  259. package/docs/it/configuration.md +3 -3
  260. package/docs/it/interest_of_intlayer.md +1 -1
  261. package/docs/it/intlayer_CMS.md +5 -5
  262. package/docs/it/intlayer_with_angular.md +5 -2
  263. package/docs/it/intlayer_with_astro.md +5 -2
  264. package/docs/it/intlayer_with_create_react_app.md +5 -2
  265. package/docs/it/intlayer_with_express.md +6 -2
  266. package/docs/it/intlayer_with_fastify.md +445 -0
  267. package/docs/it/intlayer_with_lynx+react.md +5 -2
  268. package/docs/it/intlayer_with_nestjs.md +5 -2
  269. package/docs/it/intlayer_with_next-i18next.md +1 -1
  270. package/docs/it/intlayer_with_next-intl.md +1 -1
  271. package/docs/it/intlayer_with_nextjs_14.md +1 -1
  272. package/docs/it/intlayer_with_nextjs_15.md +5 -2
  273. package/docs/it/intlayer_with_nextjs_16.md +5 -2
  274. package/docs/it/intlayer_with_nextjs_page_router.md +5 -2
  275. package/docs/it/intlayer_with_nuxt.md +1 -1
  276. package/docs/it/intlayer_with_react_native+expo.md +5 -2
  277. package/docs/it/intlayer_with_react_router_v7.md +5 -2
  278. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +5 -2
  279. package/docs/it/intlayer_with_svelte_kit.md +5 -2
  280. package/docs/it/intlayer_with_tanstack.md +5 -2
  281. package/docs/it/intlayer_with_vite+preact.md +5 -2
  282. package/docs/it/intlayer_with_vite+react.md +5 -2
  283. package/docs/it/intlayer_with_vite+solid.md +5 -2
  284. package/docs/it/intlayer_with_vite+svelte.md +5 -2
  285. package/docs/it/intlayer_with_vite+vue.md +5 -2
  286. package/docs/it/readme.md +1 -1
  287. package/docs/ja/cli/index.md +6 -1
  288. package/docs/ja/cli/init.md +84 -0
  289. package/docs/ja/cli/push.md +1 -1
  290. package/docs/ja/configuration.md +3 -3
  291. package/docs/ja/interest_of_intlayer.md +1 -1
  292. package/docs/ja/intlayer_CMS.md +5 -5
  293. package/docs/ja/intlayer_with_angular.md +5 -2
  294. package/docs/ja/intlayer_with_astro.md +5 -2
  295. package/docs/ja/intlayer_with_create_react_app.md +5 -2
  296. package/docs/ja/intlayer_with_express.md +6 -2
  297. package/docs/ja/intlayer_with_fastify.md +516 -0
  298. package/docs/ja/intlayer_with_lynx+react.md +5 -2
  299. package/docs/ja/intlayer_with_nestjs.md +5 -2
  300. package/docs/ja/intlayer_with_nextjs_14.md +5 -2
  301. package/docs/ja/intlayer_with_nextjs_15.md +5 -2
  302. package/docs/ja/intlayer_with_nextjs_16.md +4 -1
  303. package/docs/ja/intlayer_with_nextjs_page_router.md +5 -2
  304. package/docs/ja/intlayer_with_nuxt.md +1 -1
  305. package/docs/ja/intlayer_with_react_native+expo.md +5 -2
  306. package/docs/ja/intlayer_with_react_router_v7.md +5 -2
  307. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +5 -2
  308. package/docs/ja/intlayer_with_svelte_kit.md +5 -2
  309. package/docs/ja/intlayer_with_tanstack.md +5 -2
  310. package/docs/ja/intlayer_with_vite+preact.md +5 -2
  311. package/docs/ja/intlayer_with_vite+react.md +5 -2
  312. package/docs/ja/intlayer_with_vite+solid.md +5 -2
  313. package/docs/ja/intlayer_with_vite+svelte.md +5 -2
  314. package/docs/ja/intlayer_with_vite+vue.md +5 -2
  315. package/docs/ja/readme.md +1 -1
  316. package/docs/ko/cli/index.md +6 -1
  317. package/docs/ko/cli/init.md +92 -0
  318. package/docs/ko/cli/push.md +1 -1
  319. package/docs/ko/configuration.md +3 -3
  320. package/docs/ko/interest_of_intlayer.md +1 -1
  321. package/docs/ko/intlayer_CMS.md +5 -5
  322. package/docs/ko/intlayer_with_angular.md +5 -2
  323. package/docs/ko/intlayer_with_astro.md +5 -2
  324. package/docs/ko/intlayer_with_create_react_app.md +5 -2
  325. package/docs/ko/intlayer_with_express.md +6 -2
  326. package/docs/ko/intlayer_with_fastify.md +463 -0
  327. package/docs/ko/intlayer_with_lynx+react.md +5 -2
  328. package/docs/ko/intlayer_with_nestjs.md +5 -2
  329. package/docs/ko/intlayer_with_nextjs_14.md +5 -2
  330. package/docs/ko/intlayer_with_nextjs_15.md +5 -2
  331. package/docs/ko/intlayer_with_nextjs_16.md +4 -1
  332. package/docs/ko/intlayer_with_nextjs_page_router.md +5 -2
  333. package/docs/ko/intlayer_with_nuxt.md +1 -1
  334. package/docs/ko/intlayer_with_react_native+expo.md +5 -2
  335. package/docs/ko/intlayer_with_react_router_v7.md +5 -2
  336. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +5 -2
  337. package/docs/ko/intlayer_with_svelte_kit.md +5 -2
  338. package/docs/ko/intlayer_with_tanstack.md +5 -2
  339. package/docs/ko/intlayer_with_vite+preact.md +5 -2
  340. package/docs/ko/intlayer_with_vite+react.md +5 -2
  341. package/docs/ko/intlayer_with_vite+solid.md +5 -2
  342. package/docs/ko/intlayer_with_vite+svelte.md +4 -1
  343. package/docs/ko/intlayer_with_vite+vue.md +5 -2
  344. package/docs/ko/readme.md +1 -1
  345. package/docs/pl/cli/index.md +6 -1
  346. package/docs/pl/cli/init.md +92 -0
  347. package/docs/pl/cli/push.md +1 -1
  348. package/docs/pl/configuration.md +3 -3
  349. package/docs/pl/interest_of_intlayer.md +1 -1
  350. package/docs/pl/intlayer_CMS.md +5 -5
  351. package/docs/pl/intlayer_with_angular.md +5 -2
  352. package/docs/pl/intlayer_with_astro.md +6 -3
  353. package/docs/pl/intlayer_with_create_react_app.md +5 -2
  354. package/docs/pl/intlayer_with_express.md +6 -2
  355. package/docs/pl/intlayer_with_fastify.md +457 -0
  356. package/docs/pl/intlayer_with_lynx+react.md +5 -2
  357. package/docs/pl/intlayer_with_nestjs.md +5 -2
  358. package/docs/pl/intlayer_with_next-i18next.md +1 -1
  359. package/docs/pl/intlayer_with_next-intl.md +1 -1
  360. package/docs/pl/intlayer_with_nextjs_14.md +5 -2
  361. package/docs/pl/intlayer_with_nextjs_15.md +5 -2
  362. package/docs/pl/intlayer_with_nextjs_16.md +5 -2
  363. package/docs/pl/intlayer_with_nextjs_page_router.md +5 -2
  364. package/docs/pl/intlayer_with_nuxt.md +1 -1
  365. package/docs/pl/intlayer_with_react_native+expo.md +5 -2
  366. package/docs/pl/intlayer_with_react_router_v7.md +5 -2
  367. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +5 -2
  368. package/docs/pl/intlayer_with_svelte_kit.md +5 -2
  369. package/docs/pl/intlayer_with_tanstack.md +5 -2
  370. package/docs/pl/intlayer_with_vite+preact.md +5 -2
  371. package/docs/pl/intlayer_with_vite+react.md +5 -2
  372. package/docs/pl/intlayer_with_vite+solid.md +5 -2
  373. package/docs/pl/intlayer_with_vite+svelte.md +5 -2
  374. package/docs/pl/intlayer_with_vite+vue.md +5 -2
  375. package/docs/pl/readme.md +1 -1
  376. package/docs/pt/cli/index.md +6 -1
  377. package/docs/pt/cli/init.md +92 -0
  378. package/docs/pt/cli/push.md +1 -1
  379. package/docs/pt/configuration.md +3 -3
  380. package/docs/pt/interest_of_intlayer.md +1 -1
  381. package/docs/pt/intlayer_CMS.md +5 -5
  382. package/docs/pt/intlayer_with_angular.md +5 -2
  383. package/docs/pt/intlayer_with_astro.md +5 -2
  384. package/docs/pt/intlayer_with_create_react_app.md +5 -2
  385. package/docs/pt/intlayer_with_express.md +6 -2
  386. package/docs/pt/intlayer_with_fastify.md +502 -0
  387. package/docs/pt/intlayer_with_lynx+react.md +5 -2
  388. package/docs/pt/intlayer_with_nestjs.md +5 -2
  389. package/docs/pt/intlayer_with_next-i18next.md +1 -1
  390. package/docs/pt/intlayer_with_next-intl.md +1 -1
  391. package/docs/pt/intlayer_with_nextjs_14.md +1 -1
  392. package/docs/pt/intlayer_with_nextjs_15.md +5 -2
  393. package/docs/pt/intlayer_with_nextjs_16.md +5 -2
  394. package/docs/pt/intlayer_with_nextjs_page_router.md +5 -2
  395. package/docs/pt/intlayer_with_nuxt.md +1 -1
  396. package/docs/pt/intlayer_with_react_native+expo.md +5 -2
  397. package/docs/pt/intlayer_with_react_router_v7.md +5 -2
  398. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +5 -2
  399. package/docs/pt/intlayer_with_svelte_kit.md +5 -2
  400. package/docs/pt/intlayer_with_tanstack.md +5 -2
  401. package/docs/pt/intlayer_with_vite+preact.md +5 -2
  402. package/docs/pt/intlayer_with_vite+react.md +5 -2
  403. package/docs/pt/intlayer_with_vite+solid.md +5 -2
  404. package/docs/pt/intlayer_with_vite+svelte.md +5 -2
  405. package/docs/pt/intlayer_with_vite+vue.md +5 -2
  406. package/docs/pt/readme.md +1 -1
  407. package/docs/ru/cli/index.md +6 -1
  408. package/docs/ru/cli/init.md +92 -0
  409. package/docs/ru/cli/push.md +1 -1
  410. package/docs/ru/configuration.md +3 -3
  411. package/docs/ru/interest_of_intlayer.md +1 -1
  412. package/docs/ru/intlayer_CMS.md +5 -5
  413. package/docs/ru/intlayer_with_angular.md +5 -2
  414. package/docs/ru/intlayer_with_astro.md +5 -2
  415. package/docs/ru/intlayer_with_create_react_app.md +5 -2
  416. package/docs/ru/intlayer_with_express.md +6 -2
  417. package/docs/ru/intlayer_with_fastify.md +468 -0
  418. package/docs/ru/intlayer_with_lynx+react.md +5 -2
  419. package/docs/ru/intlayer_with_nestjs.md +5 -2
  420. package/docs/ru/intlayer_with_next-i18next.md +1 -1
  421. package/docs/ru/intlayer_with_next-intl.md +1 -1
  422. package/docs/ru/intlayer_with_nextjs_14.md +1 -1
  423. package/docs/ru/intlayer_with_nextjs_15.md +5 -2
  424. package/docs/ru/intlayer_with_nextjs_16.md +5 -2
  425. package/docs/ru/intlayer_with_nextjs_page_router.md +5 -2
  426. package/docs/ru/intlayer_with_nuxt.md +1 -1
  427. package/docs/ru/intlayer_with_react_native+expo.md +5 -2
  428. package/docs/ru/intlayer_with_react_router_v7.md +5 -2
  429. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +5 -2
  430. package/docs/ru/intlayer_with_svelte_kit.md +5 -2
  431. package/docs/ru/intlayer_with_tanstack.md +5 -2
  432. package/docs/ru/intlayer_with_vite+preact.md +5 -2
  433. package/docs/ru/intlayer_with_vite+react.md +5 -2
  434. package/docs/ru/intlayer_with_vite+solid.md +5 -2
  435. package/docs/ru/intlayer_with_vite+svelte.md +5 -2
  436. package/docs/ru/intlayer_with_vite+vue.md +5 -2
  437. package/docs/ru/readme.md +1 -1
  438. package/docs/tr/cli/index.md +6 -1
  439. package/docs/tr/cli/init.md +89 -0
  440. package/docs/tr/cli/push.md +1 -1
  441. package/docs/tr/configuration.md +3 -3
  442. package/docs/tr/interest_of_intlayer.md +1 -1
  443. package/docs/tr/intlayer_CMS.md +5 -5
  444. package/docs/tr/intlayer_with_angular.md +5 -2
  445. package/docs/tr/intlayer_with_astro.md +5 -2
  446. package/docs/tr/intlayer_with_create_react_app.md +5 -2
  447. package/docs/tr/intlayer_with_express.md +6 -2
  448. package/docs/tr/intlayer_with_fastify.md +471 -0
  449. package/docs/tr/intlayer_with_lynx+react.md +5 -2
  450. package/docs/tr/intlayer_with_nestjs.md +5 -2
  451. package/docs/tr/intlayer_with_next-i18next.md +1 -1
  452. package/docs/tr/intlayer_with_next-intl.md +1 -1
  453. package/docs/tr/intlayer_with_nextjs_14.md +5 -2
  454. package/docs/tr/intlayer_with_nextjs_15.md +5 -2
  455. package/docs/tr/intlayer_with_nextjs_16.md +5 -2
  456. package/docs/tr/intlayer_with_nextjs_page_router.md +5 -2
  457. package/docs/tr/intlayer_with_nuxt.md +1 -1
  458. package/docs/tr/intlayer_with_react_native+expo.md +5 -2
  459. package/docs/tr/intlayer_with_react_router_v7.md +5 -2
  460. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +5 -2
  461. package/docs/tr/intlayer_with_svelte_kit.md +5 -2
  462. package/docs/tr/intlayer_with_tanstack.md +5 -2
  463. package/docs/tr/intlayer_with_vite+preact.md +5 -2
  464. package/docs/tr/intlayer_with_vite+react.md +5 -2
  465. package/docs/tr/intlayer_with_vite+solid.md +5 -2
  466. package/docs/tr/intlayer_with_vite+svelte.md +5 -2
  467. package/docs/tr/intlayer_with_vite+vue.md +5 -2
  468. package/docs/tr/readme.md +1 -1
  469. package/docs/vi/cli/index.md +6 -1
  470. package/docs/vi/cli/init.md +84 -0
  471. package/docs/vi/cli/push.md +1 -1
  472. package/docs/vi/configuration.md +3 -3
  473. package/docs/vi/interest_of_intlayer.md +1 -1
  474. package/docs/vi/intlayer_CMS.md +5 -5
  475. package/docs/vi/intlayer_with_angular.md +5 -2
  476. package/docs/vi/intlayer_with_astro.md +5 -2
  477. package/docs/vi/intlayer_with_create_react_app.md +5 -2
  478. package/docs/vi/intlayer_with_express.md +6 -2
  479. package/docs/vi/intlayer_with_fastify.md +490 -0
  480. package/docs/vi/intlayer_with_lynx+react.md +5 -2
  481. package/docs/vi/intlayer_with_nestjs.md +5 -2
  482. package/docs/vi/intlayer_with_next-i18next.md +1 -1
  483. package/docs/vi/intlayer_with_next-intl.md +1 -1
  484. package/docs/vi/intlayer_with_nextjs_14.md +5 -2
  485. package/docs/vi/intlayer_with_nextjs_15.md +5 -2
  486. package/docs/vi/intlayer_with_nextjs_16.md +5 -2
  487. package/docs/vi/intlayer_with_nextjs_page_router.md +5 -2
  488. package/docs/vi/intlayer_with_nuxt.md +1 -1
  489. package/docs/vi/intlayer_with_react_native+expo.md +5 -2
  490. package/docs/vi/intlayer_with_react_router_v7.md +5 -2
  491. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +5 -2
  492. package/docs/vi/intlayer_with_svelte_kit.md +5 -2
  493. package/docs/vi/intlayer_with_tanstack.md +5 -2
  494. package/docs/vi/intlayer_with_vite+preact.md +5 -2
  495. package/docs/vi/intlayer_with_vite+react.md +5 -2
  496. package/docs/vi/intlayer_with_vite+solid.md +5 -2
  497. package/docs/vi/intlayer_with_vite+svelte.md +5 -2
  498. package/docs/vi/intlayer_with_vite+vue.md +5 -2
  499. package/docs/vi/readme.md +1 -1
  500. package/docs/zh/cli/index.md +6 -1
  501. package/docs/zh/cli/init.md +84 -0
  502. package/docs/zh/cli/push.md +1 -1
  503. package/docs/zh/configuration.md +3 -3
  504. package/docs/zh/interest_of_intlayer.md +1 -1
  505. package/docs/zh/intlayer_CMS.md +5 -5
  506. package/docs/zh/intlayer_with_angular.md +5 -2
  507. package/docs/zh/intlayer_with_astro.md +5 -2
  508. package/docs/zh/intlayer_with_create_react_app.md +5 -2
  509. package/docs/zh/intlayer_with_express.md +6 -2
  510. package/docs/zh/intlayer_with_fastify.md +451 -0
  511. package/docs/zh/intlayer_with_lynx+react.md +5 -2
  512. package/docs/zh/intlayer_with_nestjs.md +5 -2
  513. package/docs/zh/intlayer_with_nextjs_14.md +5 -2
  514. package/docs/zh/intlayer_with_nextjs_15.md +5 -2
  515. package/docs/zh/intlayer_with_nextjs_16.md +4 -1
  516. package/docs/zh/intlayer_with_nextjs_page_router.md +5 -2
  517. package/docs/zh/intlayer_with_react_native+expo.md +5 -2
  518. package/docs/zh/intlayer_with_react_router_v7.md +5 -2
  519. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +5 -2
  520. package/docs/zh/intlayer_with_svelte_kit.md +4 -1
  521. package/docs/zh/intlayer_with_tanstack.md +5 -2
  522. package/docs/zh/intlayer_with_vite+preact.md +5 -2
  523. package/docs/zh/intlayer_with_vite+react.md +4 -1
  524. package/docs/zh/intlayer_with_vite+solid.md +5 -2
  525. package/docs/zh/intlayer_with_vite+svelte.md +4 -1
  526. package/docs/zh/intlayer_with_vite+vue.md +5 -2
  527. package/docs/zh/readme.md +1 -1
  528. package/package.json +6 -6
  529. package/src/generated/docs.entry.ts +38 -0
@@ -0,0 +1,463 @@
1
+ ---
2
+ createdAt: 2025-12-30
3
+ updatedAt: 2025-12-30
4
+ title: Fastify 백엔드를 번역하는 방법 – i18n 가이드 2026
5
+ description: Fastify 백엔드를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역 절차를 따르세요.
6
+ keywords:
7
+ - 국제화 (i18n)
8
+ - 문서
9
+ - Intlayer
10
+ - Fastify
11
+ - JavaScript
12
+ - 백엔드
13
+ slugs:
14
+ - doc
15
+ - environment
16
+ - fastify
17
+ applicationTemplate: https://github.com/aymericzip/intlayer-fastify-template
18
+ history:
19
+ - version: 7.6.0
20
+ date: 2025-12-31
21
+ changes: init 명령 추가
22
+ - version: 7.6.0
23
+ date: 2025-12-31
24
+ changes: 초기 히스토리
25
+ ---
26
+
27
+ # Intlayer로 Fastify 백엔드 웹사이트 번역하기 | 국제화(i18n)
28
+
29
+ `fastify-intlayer`은 Fastify 애플리케이션을 위한 강력한 국제화(i18n) 플러그인으로, 클라이언트의 선호에 따라 로컬라이즈된 응답을 제공하여 백엔드 서비스를 전 세계적으로 접근 가능하게 만듭니다.
30
+
31
+ ### 실용적인 사용 사례
32
+
33
+ - **사용자 언어로 백엔드 오류 표시하기**: 오류가 발생했을 때 사용자 모국어로 메시지를 표시하면 이해를 돕고 좌절감을 줄여줍니다. 이는 토스트나 모달 같은 프론트엔드 컴포넌트에 표시될 수 있는 동적 오류 메시지에 특히 유용합니다.
34
+ - **다국어 콘텐츠 제공**: 데이터베이스에서 콘텐츠를 가져오는 애플리케이션의 경우, 국제화는 이러한 콘텐츠를 여러 언어로 제공할 수 있도록 보장합니다. 이는 e-commerce 사이트나 콘텐츠 관리 시스템(CMS)처럼 제품 설명, 기사 및 기타 콘텐츠를 사용자가 선호하는 언어로 표시해야 하는 플랫폼에 매우 중요합니다.
35
+ - **다국어 이메일 발송**: 거래 관련 이메일, 마케팅 캠페인 또는 알림 등 수신자의 언어로 이메일을 발송하면 참여도와 효과를 크게 높일 수 있습니다.
36
+ - **다국어 푸시 알림**: 모바일 애플리케이션의 경우 사용자가 선호하는 언어로 푸시 알림을 보내면 상호작용과 유지율을 높일 수 있습니다. 이러한 개인화된 접근은 알림이 더 관련성 있고 실행 가능하게 느껴지도록 합니다.
37
+ - **기타 커뮤니케이션**: SMS 메시지, 시스템 경고 또는 사용자 인터페이스 업데이트와 같은 백엔드의 모든 형태의 커뮤니케이션은 사용자의 언어로 제공될 때 명확성을 보장하고 전체적인 사용자 경험을 향상시킵니다.
38
+
39
+ 백엔드를 국제화하면 애플리케이션이 문화적 차이를 존중할 뿐만 아니라 글로벌 시장 요구에 더 잘 부합하게 되어 서비스를 전 세계로 확장하는 데 중요한 단계가 됩니다.
40
+
41
+ ## 시작하기
42
+
43
+ ### 설치
44
+
45
+ `fastify-intlayer`를 사용하기 시작하려면 npm을 사용해 패키지를 설치하세요:
46
+
47
+ ```bash packageManager="npm"
48
+ npm install intlayer fastify-intlayer
49
+ npx intlayer init
50
+ ```
51
+
52
+ ```bash packageManager="pnpm"
53
+ pnpm add intlayer fastify-intlayer
54
+ pnpm intlayer init
55
+ ```
56
+
57
+ ```bash packageManager="yarn"
58
+ yarn add intlayer fastify-intlayer
59
+ yarn intlayer init
60
+ ```
61
+
62
+ ```bash packageManager="bun"
63
+ bun add intlayer fastify-intlayer
64
+ bunx intlayer init
65
+ ```
66
+
67
+ ### 설정
68
+
69
+ 프로젝트 루트에 `intlayer.config.ts` 파일을 생성하여 국제화 설정을 구성합니다:
70
+
71
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
72
+ import { Locales, type IntlayerConfig } from "intlayer";
73
+
74
+ const config: IntlayerConfig = {
75
+ internationalization: {
76
+ locales: [
77
+ Locales.ENGLISH,
78
+ Locales.FRENCH,
79
+ Locales.SPANISH_MEXICO,
80
+ Locales.SPANISH_SPAIN,
81
+ ],
82
+ defaultLocale: Locales.ENGLISH,
83
+ },
84
+ };
85
+
86
+ export default config;
87
+ ```
88
+
89
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
90
+ import { Locales } from "intlayer";
91
+
92
+ /** @type {import('intlayer').IntlayerConfig} */
93
+ const config = {
94
+ internationalization: {
95
+ locales: [
96
+ Locales.ENGLISH,
97
+ Locales.FRENCH,
98
+ Locales.SPANISH_MEXICO,
99
+ Locales.SPANISH_SPAIN,
100
+ ],
101
+ defaultLocale: Locales.ENGLISH,
102
+ },
103
+ };
104
+
105
+ export default config;
106
+ ```
107
+
108
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
109
+ const { Locales } = require("intlayer");
110
+
111
+ /** @type {import('intlayer').IntlayerConfig} */
112
+ const config = {
113
+ internationalization: {
114
+ locales: [
115
+ Locales.ENGLISH,
116
+ Locales.FRENCH,
117
+ Locales.SPANISH_MEXICO,
118
+ Locales.SPANISH_SPAIN,
119
+ ],
120
+ defaultLocale: Locales.ENGLISH,
121
+ },
122
+ };
123
+
124
+ module.exports = config;
125
+ ```
126
+
127
+ ### 콘텐츠 선언
128
+
129
+ 번역을 저장하기 위한 콘텐츠 선언을 생성하고 관리하세요:
130
+
131
+ ```typescript fileName="src/index.content.ts" contentDeclarationFormat="typescript"
132
+ import { t, type Dictionary } from "intlayer";
133
+
134
+ const indexContent = {
135
+ key: "index",
136
+ content: {
137
+ exampleOfContent: t({
138
+ ko: "영어로 반환된 콘텐츠 예시",
139
+ en: "Example of returned content in English",
140
+ fr: "Exemple de contenu renvoyé en français",
141
+ "es-ES": "Ejemplo de contenido devuelto en español (España)",
142
+ "es-MX": "Ejemplo de contenido devuelto en español (México)",
143
+ }),
144
+ },
145
+ } satisfies Dictionary;
146
+
147
+ export default indexContent;
148
+ ```
149
+
150
+ ```javascript fileName="src/index.content.mjs" contentDeclarationFormat="esm"
151
+ import { t } from "intlayer";
152
+
153
+ typescript fileName="src/index.content.ts" contentDeclarationFormat="typescript"
154
+ import { t, type Dictionary } from "intlayer";
155
+
156
+ /** @type {import('intlayer').Dictionary} */
157
+ const indexContent = {
158
+ key: "index",
159
+ content: {
160
+ exampleOfContent: t({
161
+ ko: "영어로 반환된 콘텐츠 예시",
162
+ en: "Example of returned content in English",
163
+ fr: "Exemple de contenu renvoyé en français",
164
+ "es-ES": "Ejemplo de contenido devuelto en español (España)",
165
+ "es-MX": "Ejemplo de contenido devuelto en español (México)",
166
+ }),
167
+ },
168
+ } satisfies Dictionary;
169
+
170
+ export default indexContent;
171
+ ```
172
+
173
+ ```javascript fileName="src/index.content.cjs" contentDeclarationFormat="commonjs"
174
+ const { t } = require("intlayer");
175
+
176
+ /** 인덱스 콘텐츠의 타입을 지정합니다. @type {import('intlayer').Dictionary} */
177
+ const indexContent = {
178
+ key: "index",
179
+ content: {
180
+ exampleOfContent: t({
181
+ ko: "영어로 반환된 콘텐츠 예시",
182
+ en: "Example of returned content in English",
183
+ fr: "Exemple de contenu renvoyé en français",
184
+ "es-ES": "Ejemplo de contenido devuelto en español (España)",
185
+ "es-MX": "Ejemplo de contenido devuelto en español (México)",
186
+ }),
187
+ },
188
+ };
189
+
190
+ module.exports = indexContent;
191
+ ```
192
+
193
+ ```json fileName="src/index.content.json" contentDeclarationFormat="json"
194
+ {
195
+ "$schema": "https://intlayer.org/schema.json",
196
+ "key": "index",
197
+ "content": {
198
+ "exampleOfContent": {
199
+ "nodeType": "translation",
200
+ "translation": {
201
+ "ko": "영어로 반환된 콘텐츠 예시",
202
+ "en": "Example of returned content in English",
203
+ "fr": "Exemple de contenu renvoyé en français",
204
+ "es-ES": "Ejemplo de contenido devuelto en español (España)",
205
+ "es-MX": "Ejemplo de contenido devuelto en español (México)"
206
+ }
207
+ }
208
+ }
209
+ }
210
+ ```
211
+
212
+ > 콘텐츠 선언(content declarations)은 애플리케이션 내 어디에든 정의할 수 있으며, 단 `contentDir` 디렉터리(기본값 `./src`)에 포함되어 있어야 합니다. 또한 콘텐츠 선언 파일 확장자(기본값 `.content.{json,ts,tsx,js,jsx,mjs,mjx,cjs,cjx}`)와 일치해야 합니다.
213
+
214
+ > 자세한 내용은 [콘텐츠 선언 문서](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/dictionary/content_file.md)를 참조하세요.
215
+
216
+ ### Fastify 애플리케이션 설정
217
+
218
+ fastify-intlayer를 사용하도록 Fastify 애플리케이션을 설정하세요:
219
+
220
+ ```typescript fileName="src/index.ts" codeFormat="typescript"
221
+ import Fastify from "fastify";
222
+ import { intlayer, t, getDictionary, getIntlayer } from "fastify-intlayer";
223
+ import dictionaryExample from "./index.content";
224
+
225
+ const fastify = Fastify({ logger: true });
226
+
227
+ javascript fileName="src/index.mjs" codeFormat="esm"
228
+ // 국제화 플러그인 로드
229
+ await fastify.register(intlayer);
230
+
231
+ // 라우트
232
+ fastify.get("/t_example", async (_req, reply) => {
233
+ return t({
234
+ ko: "영어로 반환된 콘텐츠의 예시",
235
+ en: "Example of returned content in English",
236
+ fr: "Exemple de contenu renvoyé en français",
237
+ "es-ES": "Ejemplo de contenido devuelto en español (España)",
238
+ "es-MX": "Ejemplo de contenido devuelto en español (México)",
239
+ });
240
+ });
241
+
242
+ fastify.get("/getIntlayer_example", async (_req, reply) => {
243
+ return getIntlayer("index").exampleOfContent;
244
+ });
245
+
246
+ fastify.get("/getDictionary_example", async (_req, reply) => {
247
+ return getDictionary(dictionaryExample).exampleOfContent;
248
+ });
249
+
250
+ // 서버 시작
251
+ const start = async () => {
252
+ try {
253
+ await fastify.listen({ port: 3000 });
254
+ } catch (err) {
255
+ fastify.log.error(err);
256
+ process.exit(1);
257
+ }
258
+ };
259
+
260
+ start();
261
+ ```
262
+
263
+ ```javascript fileName="src/index.mjs" codeFormat="esm"
264
+ import Fastify from "fastify";
265
+ import { intlayer, t, getDictionary, getIntlayer } from "fastify-intlayer";
266
+ import dictionaryExample from "./index.content";
267
+
268
+ const fastify = Fastify({ logger: true });
269
+
270
+ // 국제화 플러그인 로드
271
+ await fastify.register(intlayer);
272
+
273
+ // 라우트
274
+ fastify.get("/t_example", async (_req, reply) => {
275
+ return t({
276
+ ko: "영어로 반환된 콘텐츠 예시",
277
+ en: "Example of returned content in English",
278
+ fr: "Exemple de contenu renvoyé en français",
279
+ "es-ES": "Ejemplo de contenido devuelto en español (España)",
280
+ "es-MX": "Ejemplo de contenido devuelto en español (México)",
281
+ });
282
+ });
283
+
284
+ fastify.get("/getIntlayer_example", async (_req, reply) => {
285
+ return getIntlayer("index").exampleOfContent;
286
+ });
287
+
288
+ fastify.get("/getDictionary_example", async (_req, reply) => {
289
+ return getDictionary(dictionaryExample).exampleOfContent;
290
+ });
291
+
292
+ // 서버 시작
293
+ const start = async () => {
294
+ try {
295
+ await fastify.listen({ port: 3000 });
296
+ } catch (err) {
297
+ fastify.log.error(err);
298
+ process.exit(1);
299
+ }
300
+ };
301
+
302
+ start();
303
+ ```
304
+
305
+ ```javascript fileName="src/index.cjs" codeFormat="commonjs"
306
+ const Fastify = require("fastify");
307
+ const { intlayer, t, getDictionary, getIntlayer } = require("fastify-intlayer");
308
+ const dictionaryExample = require("./index.content");
309
+
310
+ const fastify = Fastify({ logger: true });
311
+
312
+ // async/await를 위한 서버 시작 래퍼
313
+ const start = async () => {
314
+ try {
315
+ // 국제화 플러그인 로드
316
+ await fastify.register(intlayer);
317
+
318
+ // 라우트
319
+ fastify.get("/t_example", async (_req, reply) => {
320
+ return t({
321
+ ko: "반환된 콘텐츠 예시 (한국어)",
322
+ en: "Example of returned content in English",
323
+ fr: "Exemple de contenu renvoyé en français",
324
+ "es-ES": "Ejemplo de contenido devuelto en español (España)",
325
+ "es-MX": "Ejemplo de contenido devuelto en español (México)",
326
+ });
327
+ });
328
+
329
+ fastify.get("/getIntlayer_example", async (_req, reply) => {
330
+ return getIntlayer("index").exampleOfContent;
331
+ });
332
+
333
+ fastify.get("/getDictionary_example", async (_req, reply) => {
334
+ return getDictionary(dictionaryExample).exampleOfContent;
335
+ });
336
+
337
+ await fastify.listen({ port: 3000 });
338
+ } catch (err) {
339
+ fastify.log.error(err);
340
+ process.exit(1);
341
+ }
342
+ };
343
+
344
+ start();
345
+ ```
346
+
347
+ ### 호환성
348
+
349
+ `fastify-intlayer`은 다음과 완전히 호환됩니다:
350
+
351
+ - [`react-intlayer`](<https://www.google.com/search?q=%5Bhttps://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/packages/react-intlayer/index.md%5D(https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/packages/react-intlayer/index.md)>) React 애플리케이션용
352
+ - [`next-intlayer`](<https://www.google.com/search?q=%5Bhttps://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/packages/next-intlayer/index.md%5D(https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/packages/next-intlayer/index.md)>) Next.js 애플리케이션용
353
+
354
+ - [`react-intlayer`](<https://www.google.com/search?q=%5Bhttps://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/packages/react-intlayer/index.md%5D(https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/packages/react-intlayer/index.md)>) React 애플리케이션용
355
+ - [`next-intlayer`](<https://www.google.com/search?q=%5Bhttps://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/packages/next-intlayer/index.md%5D(https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/packages/next-intlayer/index.md)>) Next.js 애플리케이션용
356
+ - [`vite-intlayer`](<https://www.google.com/search?q=%5Bhttps://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/packages/vite-intlayer/index.md%5D(https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/packages/vite-intlayer/index.md)>) for Vite 애플리케이션용
357
+
358
+ 또한 브라우저와 API 요청을 포함한 다양한 환경에서 어떤 국제화 솔루션과도 원활하게 작동합니다. 미들웨어를 통해 헤더나 쿠키로 로케일을 감지하도록 커스터마이즈할 수 있습니다:
359
+
360
+ ```typescript fileName="intlayer.config.ts" codeFormat="typescript"
361
+ import { Locales, type IntlayerConfig } from "intlayer";
362
+
363
+ const config: IntlayerConfig = {
364
+ // ... 기타 구성 옵션
365
+ middleware: {
366
+ headerName: "my-locale-header",
367
+ cookieName: "my-locale-cookie",
368
+ },
369
+ };
370
+
371
+ export default config;
372
+ ```
373
+
374
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
375
+ import { Locales } from "intlayer";
376
+
377
+ /** @type {import('intlayer').IntlayerConfig} */
378
+ const config = {
379
+ // ... 기타 구성 옵션
380
+ middleware: {
381
+ headerName: "my-locale-header",
382
+ cookieName: "my-locale-cookie",
383
+ },
384
+ };
385
+
386
+ export default config;
387
+ ```
388
+
389
+ ```javascript fileName="intlayer.config.mjs" codeFormat="esm"
390
+ import { Locales } from "intlayer";
391
+
392
+ /** @type {import('intlayer').IntlayerConfig} */
393
+ const config = {
394
+ // ... 기타 구성 옵션
395
+ middleware: {
396
+ headerName: "my-locale-header",
397
+ cookieName: "my-locale-cookie",
398
+ },
399
+ };
400
+
401
+ export default config;
402
+ ```
403
+
404
+ ```javascript fileName="intlayer.config.cjs" codeFormat="commonjs"
405
+ const { Locales } = require("intlayer");
406
+
407
+ /** @type {import('intlayer').IntlayerConfig} */
408
+ const config = {
409
+ // ... 기타 구성 옵션
410
+ middleware: {
411
+ headerName: "my-locale-header",
412
+ cookieName: "my-locale-cookie",
413
+ },
414
+ };
415
+
416
+ module.exports = config;
417
+ ```
418
+
419
+ 기본적으로 `fastify-intlayer`는 클라이언트의 선호 언어를 결정하기 위해 `Accept-Language` 헤더를 해석합니다.
420
+
421
+ > 구성 및 고급 주제에 대한 자세한 내용은 [문서](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/configuration.md)를 참조하세요.
422
+
423
+ ### TypeScript 구성
424
+
425
+ `fastify-intlayer`는 국제화 프로세스를 향상시키기 위해 TypeScript의 강력한 기능을 활용합니다. TypeScript의 정적 타이핑은 모든 번역 키가 타입으로 관리되도록 보장하여 누락된 번역의 위험을 줄이고 유지보수성을 향상시킵니다.
426
+
427
+ 자동 생성된 타입(기본 경로: ./types/intlayer.d.ts)이 tsconfig.json 파일에 포함되어 있는지 확인하세요.
428
+
429
+ ```json5 fileName="tsconfig.json"
430
+ {
431
+ // ... 기존 TypeScript 구성
432
+ "include": [
433
+ // ... 기존 TypeScript 구성
434
+ ".intlayer/**/*.ts", // 자동 생성된 타입 포함
435
+ ],
436
+ }
437
+ ```
438
+
439
+ ### VS Code 확장
440
+
441
+ Intlayer 개발 경험을 향상시키려면 공식 **Intlayer VS Code Extension**을 설치할 수 있습니다.
442
+
443
+ [VS Code Marketplace에서 설치](https://marketplace.visualstudio.com/items?itemName=intlayer.intlayer-vs-code-extension)
444
+
445
+ 이 확장 기능은 다음을 제공합니다:
446
+
447
+ - **번역 키에 대한 자동 완성**
448
+ - **누락된 번역에 대한 실시간 오류 감지**
449
+ - **번역된 콘텐츠의 인라인 미리보기**
450
+ - **번역을 손쉽게 생성하고 업데이트할 수 있는 빠른 작업(Quick actions)**
451
+
452
+ 확장 기능 사용 방법에 대한 자세한 내용은 [Intlayer VS Code Extension 문서](https://intlayer.org/doc/vs-code-extension)를 참조하세요.
453
+
454
+ ### Git 설정
455
+
456
+ Intlayer에서 생성된 파일은 무시(ignored)하는 것을 권장합니다. 이렇게 하면 해당 파일들이 Git 리포지토리에 커밋되는 것을 방지할 수 있습니다.
457
+
458
+ 이를 위해 다음 지침을 `.gitignore` 파일에 추가할 수 있습니다:
459
+
460
+ ```plaintext fileName=".gitignore"
461
+ # Intlayer에서 생성된 파일 무시
462
+ .intlayer
463
+ ```
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  createdAt: 2025-03-09
3
- updatedAt: 2025-06-29
4
- title: Lynx and React mobile app 앱 번역하는 방법 – i18n 가이드 2025
3
+ updatedAt: 2025-12-30
4
+ title: Lynx and React mobile app 앱 번역하는 방법 – i18n 가이드 2026
5
5
  description: Lynx와 React를 사용하여 Page Router 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n)하고 번역하려면 문서를 따르세요.
6
6
  keywords:
7
7
  - 국제화
@@ -17,6 +17,9 @@ slugs:
17
17
  - lynx-and-react
18
18
  applicationTemplate: https://github.com/aymericzip/intlayer-lynx-template
19
19
  history:
20
+ - version: 7.5.9
21
+ date: 2025-12-30
22
+ changes: init 명령어 추가
20
23
  - version: 5.5.10
21
24
  date: 2025-06-29
22
25
  changes: 초기 이력
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  createdAt: 2025-09-09
3
- updatedAt: 2025-09-09
4
- title: Nest backend 앱 번역하는 방법 – i18n 가이드 2025
3
+ updatedAt: 2025-12-30
4
+ title: Nest backend 앱 번역하는 방법 – i18n 가이드 2026
5
5
  description: NestJS 백엔드를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
6
6
  keywords:
7
7
  - 국제화
@@ -17,6 +17,9 @@ slugs:
17
17
  applicationTemplate: https://github.com/AydinTheFirst/nestjs-intlayer
18
18
  author: AydinTheFirst
19
19
  history:
20
+ - version: 7.5.9
21
+ date: 2025-12-30
22
+ changes: init 명령어 추가
20
23
  - version: 5.8.0
21
24
  date: 2025-09-09
22
25
  changes: 초기 문서
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  createdAt: 2024-12-06
3
- updatedAt: 2025-06-29
4
- title: Next.js 14 and App Router 앱 번역하는 방법 – i18n 가이드 2025
3
+ updatedAt: 2025-12-30
4
+ title: Next.js 14 and App Router 앱 번역하는 방법 – i18n 가이드 2026
5
5
  description: Next.js 14 App Router 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
6
6
  keywords:
7
7
  - 국제화
@@ -17,6 +17,9 @@ slugs:
17
17
  - 14
18
18
  applicationTemplate: https://github.com/aymericzip/intlayer-next-14-template
19
19
  history:
20
+ - version: 7.5.9
21
+ date: 2025-12-30
22
+ changes: init 명령어 추가
20
23
  - version: 5.5.10
21
24
  date: 2025-06-29
22
25
  changes: 이력 초기화
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  createdAt: 2024-12-06
3
- updatedAt: 2025-06-29
4
- title: Next.js 15 앱 번역하는 방법 – i18n 가이드 2025
3
+ updatedAt: 2025-12-30
4
+ title: Next.js 15 앱 번역하는 방법 – i18n 가이드 2026
5
5
  description: Next.js 15 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
6
6
  keywords:
7
7
  - 국제화
@@ -18,6 +18,9 @@ slugs:
18
18
  applicationTemplate: https://github.com/aymericzip/intlayer-next-15-template
19
19
  youtubeVideo: https://www.youtube.com/watch?v=e_PPG7PTqGU
20
20
  history:
21
+ - version: 7.5.9
22
+ date: 2025-12-30
23
+ changes: init 명령어 추가
21
24
  - version: 5.5.10
22
25
  date: 2025-06-29
23
26
  changes: 초기 이력
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-10-25
3
- updatedAt: 2025-10-26
3
+ updatedAt: 2025-12-30
4
4
  title: Next.js 16 앱 번역 방법 – 2025 i18n 가이드
5
5
  description: Next.js 16 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
6
6
  keywords:
@@ -17,6 +17,9 @@ slugs:
17
17
  applicationTemplate: https://github.com/aymericzip/intlayer-next-16-template
18
18
  youtubeVideo: https://www.youtube.com/watch?v=e_PPG7PTqGU
19
19
  history:
20
+ - version: 7.5.9
21
+ date: 2025-12-30
22
+ changes: init 명령어 추가
20
23
  - version: 7.0.0
21
24
  date: 2025-06-29
22
25
  changes: 초기 기록
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  createdAt: 2024-12-07
3
- updatedAt: 2025-06-29
4
- title: Next.js and Page Router 앱 번역하는 방법 – i18n 가이드 2025
3
+ updatedAt: 2025-12-30
4
+ title: Next.js and Page Router 앱 번역하는 방법 – i18n 가이드 2026
5
5
  description: Page Router를 사용하는 Next.js 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
6
6
  keywords:
7
7
  - 국제화
@@ -17,6 +17,9 @@ slugs:
17
17
  - nextjs
18
18
  - next-with-page-router
19
19
  history:
20
+ - version: 7.5.9
21
+ date: 2025-12-30
22
+ changes: init 명령어 추가
20
23
  - version: 5.5.10
21
24
  date: 2025-06-29
22
25
  changes: 초기 이력
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  createdAt: 2025-06-18
3
3
  updatedAt: 2025-12-07
4
- title: Nuxt 및 Vue 앱 번역 방법 – i18n 가이드 2025
4
+ title: Nuxt 및 Vue 앱 번역 방법 – i18n 가이드 2026
5
5
  description: Nuxt 및 Vue 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
6
6
  keywords:
7
7
  - 국제화
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  createdAt: 2025-06-18
3
- updatedAt: 2025-06-29
4
- title: React Native and Expo 앱 번역하는 방법 – i18n 가이드 2025
3
+ updatedAt: 2025-12-30
4
+ title: React Native and Expo 앱 번역하는 방법 – i18n 가이드 2026
5
5
  description: React Native 및 Expo 웹사이트를 다국어로 만드는 방법을 알아보세요. 국제화(i18n) 및 번역을 위한 문서를 따라가세요.
6
6
  keywords:
7
7
  - 국제화
@@ -16,6 +16,9 @@ slugs:
16
16
  - react-native-and-expo
17
17
  applicationTemplate: https://github.com/aymericzip/intlayer-react-native-template
18
18
  history:
19
+ - version: 7.5.9
20
+ date: 2025-12-30
21
+ changes: init 명령어 추가
19
22
  - version: 5.5.10
20
23
  date: 2025-06-29
21
24
  changes: 초기 이력
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  createdAt: 2025-09-04
3
- updatedAt: 2025-12-27
4
- title: React Router v7 앱 번역하는 방법 – i18n 가이드 2025
3
+ updatedAt: 2025-12-30
4
+ title: React Router v7 앱 번역하는 방법 – i18n 가이드 2026
5
5
  description: Intlayer를 사용하여 React Router v7 애플리케이션에 국제화(i18n)를 추가하는 방법을 배우세요. 로케일 인식 라우팅으로 앱을 다국어로 만드는 종합 가이드를 따르세요.
6
6
  keywords:
7
7
  - 국제화
@@ -20,6 +20,9 @@ slugs:
20
20
  applicationTemplate: https://github.com/aymericzip/intlayer-react-router-v7-template
21
21
  youtubeVideo: https://www.youtube.com/watch?v=dS9L7uJeak4
22
22
  history:
23
+ - version: 7.5.9
24
+ date: 2025-12-30
25
+ changes: init 명령어 추가
23
26
  - version: 7.5.6
24
27
  date: 2025-12-27
25
28
  changes: 레이아웃 업데이트 및 404 처리
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  createdAt: 2025-09-04
3
- updatedAt: 2025-10-03
4
- title: React Router v7 앱 번역하는 방법 – i18n 가이드 2025
3
+ updatedAt: 2025-12-30
4
+ title: React Router v7 앱 번역하는 방법 – i18n 가이드 2026
5
5
  description: Intlayer를 사용하여 React Router v7 애플리케이션에 국제화(i18n)를 추가하는 방법을 배우세요. 로케일 인식 라우팅으로 앱을 다국어로 만드는 종합 가이드를 따르세요.
6
6
  keywords:
7
7
  - 국제화
@@ -20,6 +20,9 @@ slugs:
20
20
  applicationTemplate: https://github.com/aymericzip/intlayer-react-router-v7-template
21
21
  youtubeVideo: https://www.youtube.com/watch?v=dS9L7uJeak4
22
22
  history:
23
+ - version: 7.5.9
24
+ date: 2025-12-30
25
+ changes: init 명령어 추가
23
26
  - version: 6.1.5
24
27
  date: 2025-10-03
25
28
  changes: 문서 업데이트
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  createdAt: 2025-11-20
3
- updatedAt: 2025-11-20
4
- title: SvelteKit 앱 번역 방법 – i18n 가이드 2025
3
+ updatedAt: 2025-12-30
4
+ title: SvelteKit 앱 번역 방법 – i18n 가이드 2026
5
5
  description: SvelteKit 웹사이트를 다국어로 만드는 방법을 알아보세요. 서버 사이드 렌더링(SSR)을 사용하여 국제화(i18n) 및 번역하는 문서를 따라가세요.
6
6
  keywords:
7
7
  - 국제화
@@ -16,6 +16,9 @@ slugs:
16
16
  - sveltekit
17
17
  applicationTemplate: https://github.com/aymericzip/intlayer-sveltekit-template
18
18
  history:
19
+ - version: 7.5.9
20
+ date: 2025-12-30
21
+ changes: init 명령어 추가
19
22
  - version: 7.1.10
20
23
  date: 2025-11-20
21
24
  changes: 초기 기록