@intlayer/docs 9.5.6 → 9.5.7

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 (601) hide show
  1. package/blog/ar/i18next_vs_intlayer-i18next.md +122 -15
  2. package/blog/ar/i18next_vs_intlayer.md +130 -16
  3. package/blog/ar/lingui_vs_intlayer.md +122 -15
  4. package/blog/ar/next-intl_vs_intlayer-next-intl.md +124 -15
  5. package/blog/ar/next-intl_vs_intlayer.md +136 -20
  6. package/blog/ar/vue-i18n_vs_intlayer-vue-i18n.md +119 -17
  7. package/blog/ar/vue-i18n_vs_intlayer.md +193 -31
  8. package/blog/ar/vue-i18n_vs_intlayer_benchmark.md +361 -0
  9. package/blog/de/i18next_vs_intlayer-i18next.md +122 -15
  10. package/blog/de/i18next_vs_intlayer.md +128 -14
  11. package/blog/de/lingui_vs_intlayer.md +122 -15
  12. package/blog/de/next-intl_vs_intlayer-next-intl.md +124 -15
  13. package/blog/de/next-intl_vs_intlayer.md +125 -15
  14. package/blog/de/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  15. package/blog/de/vue-i18n_vs_intlayer.md +193 -31
  16. package/blog/en/i18next_vs_intlayer-i18next.md +121 -14
  17. package/blog/en/i18next_vs_intlayer.md +128 -14
  18. package/blog/en/lingui_vs_intlayer.md +124 -15
  19. package/blog/en/next-intl_vs_intlayer-next-intl.md +123 -14
  20. package/blog/en/next-intl_vs_intlayer.md +125 -13
  21. package/blog/en/vue-i18n_vs_intlayer-vue-i18n.md +115 -15
  22. package/blog/en/vue-i18n_vs_intlayer.md +188 -27
  23. package/blog/en-GB/i18next_vs_intlayer-i18next.md +121 -14
  24. package/blog/en-GB/i18next_vs_intlayer.md +128 -14
  25. package/blog/en-GB/lingui_vs_intlayer.md +122 -15
  26. package/blog/en-GB/next-intl_vs_intlayer-next-intl.md +124 -15
  27. package/blog/en-GB/next-intl_vs_intlayer.md +125 -15
  28. package/blog/en-GB/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  29. package/blog/en-GB/vue-i18n_vs_intlayer.md +187 -25
  30. package/blog/en-GB/vue-i18n_vs_intlayer_benchmark.md +116 -0
  31. package/blog/es/i18next_vs_intlayer-i18next.md +122 -15
  32. package/blog/es/i18next_vs_intlayer.md +128 -14
  33. package/blog/es/lingui_vs_intlayer.md +122 -15
  34. package/blog/es/next-intl_vs_intlayer-next-intl.md +124 -15
  35. package/blog/es/next-intl_vs_intlayer.md +125 -15
  36. package/blog/es/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  37. package/blog/es/vue-i18n_vs_intlayer.md +193 -31
  38. package/blog/fr/i18next_vs_intlayer-i18next.md +122 -15
  39. package/blog/fr/i18next_vs_intlayer.md +128 -14
  40. package/blog/fr/lingui_vs_intlayer.md +122 -15
  41. package/blog/fr/next-intl_vs_intlayer-next-intl.md +124 -15
  42. package/blog/fr/next-intl_vs_intlayer.md +127 -15
  43. package/blog/fr/vue-i18n_vs_intlayer-vue-i18n.md +118 -17
  44. package/blog/fr/vue-i18n_vs_intlayer.md +192 -31
  45. package/blog/fr/vue-i18n_vs_intlayer_benchmark.md +329 -7
  46. package/blog/hi/i18next_vs_intlayer-i18next.md +122 -15
  47. package/blog/hi/i18next_vs_intlayer.md +130 -16
  48. package/blog/hi/lingui_vs_intlayer.md +122 -15
  49. package/blog/hi/next-intl_vs_intlayer-next-intl.md +124 -15
  50. package/blog/hi/next-intl_vs_intlayer.md +135 -19
  51. package/blog/hi/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  52. package/blog/hi/vue-i18n_vs_intlayer.md +193 -31
  53. package/blog/hi/vue-i18n_vs_intlayer_benchmark.md +361 -0
  54. package/blog/id/i18next_vs_intlayer-i18next.md +122 -15
  55. package/blog/id/i18next_vs_intlayer.md +128 -14
  56. package/blog/id/lingui_vs_intlayer.md +122 -15
  57. package/blog/id/next-intl_vs_intlayer-next-intl.md +124 -15
  58. package/blog/id/next-intl_vs_intlayer.md +135 -19
  59. package/blog/id/vue-i18n_vs_intlayer-vue-i18n.md +354 -2
  60. package/blog/id/vue-i18n_vs_intlayer.md +188 -26
  61. package/blog/id/vue-i18n_vs_intlayer_benchmark.md +327 -7
  62. package/blog/it/i18next_vs_intlayer-i18next.md +122 -15
  63. package/blog/it/i18next_vs_intlayer.md +128 -14
  64. package/blog/it/lingui_vs_intlayer.md +122 -15
  65. package/blog/it/next-intl_vs_intlayer-next-intl.md +124 -15
  66. package/blog/it/next-intl_vs_intlayer.md +125 -15
  67. package/blog/it/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  68. package/blog/it/vue-i18n_vs_intlayer.md +191 -31
  69. package/blog/it/vue-i18n_vs_intlayer_benchmark.md +332 -5
  70. package/blog/ja/i18next_vs_intlayer-i18next.md +122 -15
  71. package/blog/ja/i18next_vs_intlayer.md +129 -17
  72. package/blog/ja/lingui_vs_intlayer.md +122 -15
  73. package/blog/ja/next-intl_vs_intlayer-next-intl.md +124 -15
  74. package/blog/ja/next-intl_vs_intlayer.md +124 -14
  75. package/blog/ja/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  76. package/blog/ja/vue-i18n_vs_intlayer.md +193 -31
  77. package/blog/ja/vue-i18n_vs_intlayer_benchmark.md +361 -0
  78. package/blog/ko/i18next_vs_intlayer-i18next.md +122 -15
  79. package/blog/ko/i18next_vs_intlayer.md +129 -17
  80. package/blog/ko/lingui_vs_intlayer.md +122 -15
  81. package/blog/ko/next-intl_vs_intlayer-next-intl.md +124 -15
  82. package/blog/ko/next-intl_vs_intlayer.md +134 -18
  83. package/blog/ko/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  84. package/blog/ko/vue-i18n_vs_intlayer.md +193 -31
  85. package/blog/pl/i18next_vs_intlayer-i18next.md +122 -15
  86. package/blog/pl/i18next_vs_intlayer.md +128 -14
  87. package/blog/pl/lingui_vs_intlayer.md +122 -15
  88. package/blog/pl/next-intl_vs_intlayer-next-intl.md +124 -15
  89. package/blog/pl/next-intl_vs_intlayer.md +134 -18
  90. package/blog/pl/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  91. package/blog/pl/vue-i18n_vs_intlayer.md +188 -26
  92. package/blog/pl/vue-i18n_vs_intlayer_benchmark.md +361 -0
  93. package/blog/pt/i18next_vs_intlayer-i18next.md +122 -15
  94. package/blog/pt/i18next_vs_intlayer.md +128 -14
  95. package/blog/pt/lingui_vs_intlayer.md +122 -15
  96. package/blog/pt/next-intl_vs_intlayer-next-intl.md +124 -15
  97. package/blog/pt/next-intl_vs_intlayer.md +131 -15
  98. package/blog/pt/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  99. package/blog/pt/vue-i18n_vs_intlayer.md +193 -31
  100. package/blog/pt/vue-i18n_vs_intlayer_benchmark.md +361 -0
  101. package/blog/ru/i18next_vs_intlayer-i18next.md +122 -15
  102. package/blog/ru/i18next_vs_intlayer.md +130 -16
  103. package/blog/ru/lingui_vs_intlayer.md +122 -15
  104. package/blog/ru/next-intl_vs_intlayer-next-intl.md +125 -16
  105. package/blog/ru/next-intl_vs_intlayer.md +123 -13
  106. package/blog/ru/vue-i18n_vs_intlayer-vue-i18n.md +127 -27
  107. package/blog/ru/vue-i18n_vs_intlayer.md +193 -31
  108. package/blog/ru/vue-i18n_vs_intlayer_benchmark.md +326 -19
  109. package/blog/tr/i18next_vs_intlayer-i18next.md +122 -15
  110. package/blog/tr/i18next_vs_intlayer.md +128 -14
  111. package/blog/tr/lingui_vs_intlayer.md +122 -15
  112. package/blog/tr/next-intl_vs_intlayer-next-intl.md +124 -15
  113. package/blog/tr/next-intl_vs_intlayer.md +136 -20
  114. package/blog/tr/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  115. package/blog/tr/vue-i18n_vs_intlayer.md +188 -26
  116. package/blog/tr/vue-i18n_vs_intlayer_benchmark.md +361 -0
  117. package/blog/uk/i18next_vs_intlayer-i18next.md +122 -15
  118. package/blog/uk/i18next_vs_intlayer.md +130 -16
  119. package/blog/uk/lingui_vs_intlayer.md +122 -15
  120. package/blog/uk/next-intl_vs_intlayer-next-intl.md +124 -15
  121. package/blog/uk/next-intl_vs_intlayer.md +135 -19
  122. package/blog/uk/vue-i18n_vs_intlayer-vue-i18n.md +135 -17
  123. package/blog/uk/vue-i18n_vs_intlayer.md +188 -27
  124. package/blog/uk/vue-i18n_vs_intlayer_benchmark.md +361 -0
  125. package/blog/vi/i18next_vs_intlayer-i18next.md +122 -15
  126. package/blog/vi/i18next_vs_intlayer.md +128 -14
  127. package/blog/vi/lingui_vs_intlayer.md +122 -15
  128. package/blog/vi/next-intl_vs_intlayer-next-intl.md +124 -15
  129. package/blog/vi/next-intl_vs_intlayer.md +135 -19
  130. package/blog/vi/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  131. package/blog/vi/vue-i18n_vs_intlayer.md +188 -26
  132. package/blog/vi/vue-i18n_vs_intlayer_benchmark.md +361 -0
  133. package/blog/zh/i18next_vs_intlayer-i18next.md +122 -15
  134. package/blog/zh/i18next_vs_intlayer.md +128 -14
  135. package/blog/zh/lingui_vs_intlayer.md +122 -15
  136. package/blog/zh/next-intl_vs_intlayer-next-intl.md +124 -15
  137. package/blog/zh/next-intl_vs_intlayer.md +125 -15
  138. package/blog/zh/vue-i18n_vs_intlayer-vue-i18n.md +117 -17
  139. package/blog/zh/vue-i18n_vs_intlayer.md +192 -31
  140. package/blog/zh/vue-i18n_vs_intlayer_benchmark.md +340 -9
  141. package/dist/cjs/generated/docs.entry.cjs +40 -40
  142. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  143. package/dist/cjs/index.cjs +2 -2
  144. package/dist/esm/generated/docs.entry.mjs +40 -40
  145. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  146. package/dist/esm/index.mjs +2 -2
  147. package/dist/types/generated/docs.entry.d.ts +2 -2
  148. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  149. package/docs/ar/benchmark/nextjs.md +13 -13
  150. package/docs/ar/benchmark/solid.md +5 -5
  151. package/docs/ar/benchmark/svelte.md +4 -4
  152. package/docs/ar/benchmark/tanstack.md +14 -13
  153. package/docs/ar/benchmark/vue.md +5 -5
  154. package/docs/ar/chrome_extension.md +130 -0
  155. package/docs/ar/cli/index.md +6 -1
  156. package/docs/ar/cli/infra.md +162 -0
  157. package/docs/ar/cli/init.md +24 -1
  158. package/docs/ar/dictionary/html.md +173 -5
  159. package/docs/ar/dictionary/markdown.md +263 -1
  160. package/docs/ar/intlayer_with_analog.md +23 -1
  161. package/docs/ar/intlayer_with_angular_19.md +24 -1
  162. package/docs/ar/intlayer_with_angular_21.md +24 -1
  163. package/docs/ar/intlayer_with_astro.md +24 -1
  164. package/docs/ar/intlayer_with_astro_lit.md +25 -1
  165. package/docs/ar/intlayer_with_astro_preact.md +26 -1
  166. package/docs/ar/intlayer_with_astro_react.md +26 -1
  167. package/docs/ar/intlayer_with_astro_solid.md +26 -1
  168. package/docs/ar/intlayer_with_astro_svelte.md +25 -1
  169. package/docs/ar/intlayer_with_astro_vue.md +25 -1
  170. package/docs/ar/intlayer_with_remix_3.md +22 -1
  171. package/docs/ar/self_hosting.md +406 -231
  172. package/docs/de/benchmark/nextjs.md +13 -13
  173. package/docs/de/benchmark/solid.md +5 -5
  174. package/docs/de/benchmark/svelte.md +4 -4
  175. package/docs/de/benchmark/tanstack.md +14 -13
  176. package/docs/de/benchmark/vue.md +5 -5
  177. package/docs/de/chrome_extension.md +130 -0
  178. package/docs/de/cli/index.md +6 -1
  179. package/docs/de/cli/infra.md +162 -0
  180. package/docs/de/cli/init.md +24 -1
  181. package/docs/de/dictionary/html.md +173 -5
  182. package/docs/de/dictionary/markdown.md +263 -1
  183. package/docs/de/intlayer_with_analog.md +23 -1
  184. package/docs/de/intlayer_with_angular_19.md +24 -1
  185. package/docs/de/intlayer_with_angular_21.md +24 -1
  186. package/docs/de/intlayer_with_astro.md +24 -1
  187. package/docs/de/intlayer_with_astro_lit.md +25 -1
  188. package/docs/de/intlayer_with_astro_preact.md +26 -1
  189. package/docs/de/intlayer_with_astro_react.md +26 -1
  190. package/docs/de/intlayer_with_astro_solid.md +26 -1
  191. package/docs/de/intlayer_with_astro_svelte.md +25 -1
  192. package/docs/de/intlayer_with_astro_vue.md +25 -1
  193. package/docs/de/intlayer_with_remix_3.md +22 -1
  194. package/docs/de/self_hosting.md +404 -227
  195. package/docs/en/benchmark/nextjs.md +13 -13
  196. package/docs/en/benchmark/solid.md +5 -5
  197. package/docs/en/benchmark/svelte.md +4 -4
  198. package/docs/en/benchmark/tanstack.md +14 -13
  199. package/docs/en/benchmark/vue.md +5 -5
  200. package/docs/en/chrome_extension.md +130 -0
  201. package/docs/en/cli/index.md +6 -1
  202. package/docs/en/cli/infra.md +175 -0
  203. package/docs/en/cli/init.md +25 -1
  204. package/docs/en/dictionary/html.md +173 -5
  205. package/docs/en/dictionary/markdown.md +263 -1
  206. package/docs/en/intlayer_with_analog.md +23 -1
  207. package/docs/en/intlayer_with_angular_19.md +24 -1
  208. package/docs/en/intlayer_with_angular_21.md +24 -1
  209. package/docs/en/intlayer_with_astro.md +24 -1
  210. package/docs/en/intlayer_with_astro_lit.md +25 -1
  211. package/docs/en/intlayer_with_astro_preact.md +26 -1
  212. package/docs/en/intlayer_with_astro_react.md +26 -1
  213. package/docs/en/intlayer_with_astro_solid.md +26 -1
  214. package/docs/en/intlayer_with_astro_svelte.md +25 -1
  215. package/docs/en/intlayer_with_astro_vue.md +25 -1
  216. package/docs/en/intlayer_with_remix_3.md +22 -1
  217. package/docs/en/self_hosting.md +418 -176
  218. package/docs/en-GB/benchmark/nextjs.md +13 -13
  219. package/docs/en-GB/benchmark/solid.md +5 -5
  220. package/docs/en-GB/benchmark/svelte.md +4 -4
  221. package/docs/en-GB/benchmark/tanstack.md +14 -13
  222. package/docs/en-GB/benchmark/vue.md +5 -5
  223. package/docs/en-GB/chrome_extension.md +130 -0
  224. package/docs/en-GB/cli/index.md +6 -1
  225. package/docs/en-GB/cli/infra.md +162 -0
  226. package/docs/en-GB/cli/init.md +24 -1
  227. package/docs/en-GB/dictionary/html.md +173 -5
  228. package/docs/en-GB/dictionary/markdown.md +263 -1
  229. package/docs/en-GB/intlayer_with_analog.md +23 -1
  230. package/docs/en-GB/intlayer_with_angular_19.md +24 -1
  231. package/docs/en-GB/intlayer_with_angular_21.md +24 -1
  232. package/docs/en-GB/intlayer_with_astro.md +24 -1
  233. package/docs/en-GB/intlayer_with_astro_lit.md +25 -1
  234. package/docs/en-GB/intlayer_with_astro_preact.md +26 -1
  235. package/docs/en-GB/intlayer_with_astro_react.md +26 -1
  236. package/docs/en-GB/intlayer_with_astro_solid.md +26 -1
  237. package/docs/en-GB/intlayer_with_astro_svelte.md +25 -1
  238. package/docs/en-GB/intlayer_with_astro_vue.md +25 -1
  239. package/docs/en-GB/intlayer_with_remix_3.md +22 -1
  240. package/docs/en-GB/self_hosting.md +381 -206
  241. package/docs/es/benchmark/nextjs.md +13 -13
  242. package/docs/es/benchmark/solid.md +5 -5
  243. package/docs/es/benchmark/svelte.md +4 -4
  244. package/docs/es/benchmark/tanstack.md +14 -13
  245. package/docs/es/benchmark/vue.md +5 -5
  246. package/docs/es/chrome_extension.md +130 -0
  247. package/docs/es/cli/index.md +6 -1
  248. package/docs/es/cli/infra.md +162 -0
  249. package/docs/es/cli/init.md +24 -1
  250. package/docs/es/dictionary/html.md +173 -5
  251. package/docs/es/dictionary/markdown.md +263 -1
  252. package/docs/es/intlayer_with_analog.md +23 -1
  253. package/docs/es/intlayer_with_angular_19.md +24 -1
  254. package/docs/es/intlayer_with_angular_21.md +24 -1
  255. package/docs/es/intlayer_with_astro.md +24 -1
  256. package/docs/es/intlayer_with_astro_lit.md +25 -1
  257. package/docs/es/intlayer_with_astro_preact.md +26 -1
  258. package/docs/es/intlayer_with_astro_react.md +26 -1
  259. package/docs/es/intlayer_with_astro_solid.md +26 -1
  260. package/docs/es/intlayer_with_astro_svelte.md +25 -1
  261. package/docs/es/intlayer_with_astro_vue.md +25 -1
  262. package/docs/es/intlayer_with_remix_3.md +22 -1
  263. package/docs/es/self_hosting.md +400 -223
  264. package/docs/fr/benchmark/nextjs.md +13 -13
  265. package/docs/fr/benchmark/solid.md +5 -5
  266. package/docs/fr/benchmark/svelte.md +4 -4
  267. package/docs/fr/benchmark/tanstack.md +14 -13
  268. package/docs/fr/benchmark/vue.md +5 -5
  269. package/docs/fr/chrome_extension.md +130 -0
  270. package/docs/fr/cli/index.md +6 -1
  271. package/docs/fr/cli/infra.md +162 -0
  272. package/docs/fr/cli/init.md +24 -1
  273. package/docs/fr/dictionary/html.md +173 -5
  274. package/docs/fr/dictionary/markdown.md +265 -4
  275. package/docs/fr/intlayer_with_analog.md +23 -1
  276. package/docs/fr/intlayer_with_angular_19.md +24 -1
  277. package/docs/fr/intlayer_with_angular_21.md +24 -1
  278. package/docs/fr/intlayer_with_astro.md +24 -1
  279. package/docs/fr/intlayer_with_astro_lit.md +25 -1
  280. package/docs/fr/intlayer_with_astro_preact.md +26 -1
  281. package/docs/fr/intlayer_with_astro_react.md +26 -1
  282. package/docs/fr/intlayer_with_astro_solid.md +26 -1
  283. package/docs/fr/intlayer_with_astro_svelte.md +25 -1
  284. package/docs/fr/intlayer_with_astro_vue.md +25 -1
  285. package/docs/fr/intlayer_with_remix_3.md +22 -1
  286. package/docs/fr/self_hosting.md +401 -224
  287. package/docs/hi/benchmark/nextjs.md +13 -13
  288. package/docs/hi/benchmark/solid.md +5 -5
  289. package/docs/hi/benchmark/svelte.md +4 -4
  290. package/docs/hi/benchmark/tanstack.md +14 -13
  291. package/docs/hi/benchmark/vue.md +5 -5
  292. package/docs/hi/chrome_extension.md +130 -0
  293. package/docs/hi/cli/index.md +6 -1
  294. package/docs/hi/cli/infra.md +162 -0
  295. package/docs/hi/cli/init.md +24 -1
  296. package/docs/hi/dictionary/html.md +173 -5
  297. package/docs/hi/dictionary/markdown.md +263 -1
  298. package/docs/hi/intlayer_with_analog.md +23 -1
  299. package/docs/hi/intlayer_with_angular_19.md +24 -1
  300. package/docs/hi/intlayer_with_angular_21.md +24 -1
  301. package/docs/hi/intlayer_with_astro.md +24 -1
  302. package/docs/hi/intlayer_with_astro_lit.md +25 -1
  303. package/docs/hi/intlayer_with_astro_preact.md +26 -1
  304. package/docs/hi/intlayer_with_astro_react.md +26 -1
  305. package/docs/hi/intlayer_with_astro_solid.md +26 -1
  306. package/docs/hi/intlayer_with_astro_svelte.md +25 -1
  307. package/docs/hi/intlayer_with_astro_vue.md +25 -1
  308. package/docs/hi/intlayer_with_remix_3.md +22 -1
  309. package/docs/hi/self_hosting.md +409 -235
  310. package/docs/id/benchmark/nextjs.md +13 -13
  311. package/docs/id/benchmark/solid.md +5 -5
  312. package/docs/id/benchmark/svelte.md +4 -4
  313. package/docs/id/benchmark/tanstack.md +14 -13
  314. package/docs/id/benchmark/vue.md +5 -5
  315. package/docs/id/chrome_extension.md +130 -0
  316. package/docs/id/cli/index.md +6 -1
  317. package/docs/id/cli/infra.md +162 -0
  318. package/docs/id/cli/init.md +24 -1
  319. package/docs/id/dictionary/html.md +173 -5
  320. package/docs/id/dictionary/markdown.md +263 -1
  321. package/docs/id/intlayer_with_analog.md +23 -1
  322. package/docs/id/intlayer_with_angular_19.md +24 -1
  323. package/docs/id/intlayer_with_angular_21.md +24 -1
  324. package/docs/id/intlayer_with_astro.md +24 -1
  325. package/docs/id/intlayer_with_astro_lit.md +25 -1
  326. package/docs/id/intlayer_with_astro_preact.md +26 -1
  327. package/docs/id/intlayer_with_astro_react.md +26 -1
  328. package/docs/id/intlayer_with_astro_solid.md +26 -1
  329. package/docs/id/intlayer_with_astro_svelte.md +25 -1
  330. package/docs/id/intlayer_with_astro_vue.md +25 -1
  331. package/docs/id/intlayer_with_remix_3.md +22 -1
  332. package/docs/id/self_hosting.md +416 -243
  333. package/docs/it/benchmark/nextjs.md +13 -13
  334. package/docs/it/benchmark/solid.md +5 -5
  335. package/docs/it/benchmark/svelte.md +4 -4
  336. package/docs/it/benchmark/tanstack.md +14 -13
  337. package/docs/it/benchmark/vue.md +5 -5
  338. package/docs/it/chrome_extension.md +130 -0
  339. package/docs/it/cli/index.md +6 -1
  340. package/docs/it/cli/infra.md +162 -0
  341. package/docs/it/cli/init.md +24 -1
  342. package/docs/it/dictionary/html.md +173 -5
  343. package/docs/it/dictionary/markdown.md +263 -1
  344. package/docs/it/intlayer_with_analog.md +23 -1
  345. package/docs/it/intlayer_with_angular_19.md +24 -1
  346. package/docs/it/intlayer_with_angular_21.md +24 -1
  347. package/docs/it/intlayer_with_astro.md +24 -1
  348. package/docs/it/intlayer_with_astro_lit.md +25 -1
  349. package/docs/it/intlayer_with_astro_preact.md +26 -1
  350. package/docs/it/intlayer_with_astro_react.md +26 -1
  351. package/docs/it/intlayer_with_astro_solid.md +26 -1
  352. package/docs/it/intlayer_with_astro_svelte.md +25 -1
  353. package/docs/it/intlayer_with_astro_vue.md +25 -1
  354. package/docs/it/intlayer_with_remix_3.md +22 -1
  355. package/docs/it/self_hosting.md +412 -237
  356. package/docs/ja/benchmark/nextjs.md +13 -13
  357. package/docs/ja/benchmark/solid.md +5 -5
  358. package/docs/ja/benchmark/svelte.md +4 -4
  359. package/docs/ja/benchmark/tanstack.md +13 -12
  360. package/docs/ja/benchmark/vue.md +5 -5
  361. package/docs/ja/chrome_extension.md +130 -0
  362. package/docs/ja/cli/index.md +6 -1
  363. package/docs/ja/cli/infra.md +162 -0
  364. package/docs/ja/cli/init.md +24 -1
  365. package/docs/ja/dictionary/html.md +173 -5
  366. package/docs/ja/dictionary/markdown.md +263 -1
  367. package/docs/ja/intlayer_with_analog.md +23 -1
  368. package/docs/ja/intlayer_with_angular_19.md +24 -1
  369. package/docs/ja/intlayer_with_angular_21.md +24 -1
  370. package/docs/ja/intlayer_with_astro.md +24 -1
  371. package/docs/ja/intlayer_with_astro_lit.md +25 -1
  372. package/docs/ja/intlayer_with_astro_preact.md +26 -1
  373. package/docs/ja/intlayer_with_astro_react.md +26 -1
  374. package/docs/ja/intlayer_with_astro_solid.md +26 -1
  375. package/docs/ja/intlayer_with_astro_svelte.md +25 -1
  376. package/docs/ja/intlayer_with_astro_vue.md +25 -1
  377. package/docs/ja/intlayer_with_remix_3.md +22 -1
  378. package/docs/ja/self_hosting.md +398 -223
  379. package/docs/ko/benchmark/nextjs.md +13 -13
  380. package/docs/ko/benchmark/solid.md +5 -5
  381. package/docs/ko/benchmark/svelte.md +4 -4
  382. package/docs/ko/benchmark/tanstack.md +14 -13
  383. package/docs/ko/benchmark/vue.md +5 -5
  384. package/docs/ko/chrome_extension.md +130 -0
  385. package/docs/ko/cli/index.md +6 -1
  386. package/docs/ko/cli/infra.md +162 -0
  387. package/docs/ko/cli/init.md +24 -1
  388. package/docs/ko/dictionary/html.md +173 -5
  389. package/docs/ko/dictionary/markdown.md +263 -1
  390. package/docs/ko/intlayer_with_analog.md +23 -1
  391. package/docs/ko/intlayer_with_angular_19.md +24 -1
  392. package/docs/ko/intlayer_with_angular_21.md +24 -1
  393. package/docs/ko/intlayer_with_astro.md +24 -1
  394. package/docs/ko/intlayer_with_astro_lit.md +25 -1
  395. package/docs/ko/intlayer_with_astro_preact.md +26 -1
  396. package/docs/ko/intlayer_with_astro_react.md +26 -1
  397. package/docs/ko/intlayer_with_astro_solid.md +26 -1
  398. package/docs/ko/intlayer_with_astro_svelte.md +25 -1
  399. package/docs/ko/intlayer_with_astro_vue.md +25 -1
  400. package/docs/ko/intlayer_with_remix_3.md +22 -1
  401. package/docs/ko/self_hosting.md +411 -238
  402. package/docs/pl/benchmark/nextjs.md +13 -13
  403. package/docs/pl/benchmark/solid.md +5 -5
  404. package/docs/pl/benchmark/svelte.md +4 -4
  405. package/docs/pl/benchmark/tanstack.md +14 -13
  406. package/docs/pl/benchmark/vue.md +5 -5
  407. package/docs/pl/chrome_extension.md +130 -0
  408. package/docs/pl/cli/index.md +6 -1
  409. package/docs/pl/cli/infra.md +162 -0
  410. package/docs/pl/cli/init.md +24 -1
  411. package/docs/pl/dictionary/html.md +173 -5
  412. package/docs/pl/dictionary/markdown.md +263 -1
  413. package/docs/pl/intlayer_with_analog.md +23 -1
  414. package/docs/pl/intlayer_with_angular_19.md +24 -1
  415. package/docs/pl/intlayer_with_angular_21.md +24 -1
  416. package/docs/pl/intlayer_with_astro.md +24 -1
  417. package/docs/pl/intlayer_with_astro_lit.md +25 -1
  418. package/docs/pl/intlayer_with_astro_preact.md +26 -1
  419. package/docs/pl/intlayer_with_astro_react.md +26 -1
  420. package/docs/pl/intlayer_with_astro_solid.md +26 -1
  421. package/docs/pl/intlayer_with_astro_svelte.md +25 -1
  422. package/docs/pl/intlayer_with_astro_vue.md +25 -1
  423. package/docs/pl/intlayer_with_remix_3.md +22 -1
  424. package/docs/pl/self_hosting.md +408 -233
  425. package/docs/pt/benchmark/nextjs.md +13 -13
  426. package/docs/pt/benchmark/solid.md +5 -5
  427. package/docs/pt/benchmark/svelte.md +4 -4
  428. package/docs/pt/benchmark/tanstack.md +14 -13
  429. package/docs/pt/benchmark/vue.md +5 -5
  430. package/docs/pt/chrome_extension.md +130 -0
  431. package/docs/pt/cli/index.md +6 -1
  432. package/docs/pt/cli/infra.md +162 -0
  433. package/docs/pt/cli/init.md +24 -1
  434. package/docs/pt/dictionary/html.md +173 -5
  435. package/docs/pt/dictionary/markdown.md +263 -1
  436. package/docs/pt/intlayer_with_analog.md +23 -1
  437. package/docs/pt/intlayer_with_angular_19.md +24 -1
  438. package/docs/pt/intlayer_with_angular_21.md +24 -1
  439. package/docs/pt/intlayer_with_astro.md +24 -1
  440. package/docs/pt/intlayer_with_astro_lit.md +25 -1
  441. package/docs/pt/intlayer_with_astro_preact.md +26 -1
  442. package/docs/pt/intlayer_with_astro_react.md +26 -1
  443. package/docs/pt/intlayer_with_astro_solid.md +26 -1
  444. package/docs/pt/intlayer_with_astro_svelte.md +25 -1
  445. package/docs/pt/intlayer_with_astro_vue.md +25 -1
  446. package/docs/pt/intlayer_with_remix_3.md +22 -1
  447. package/docs/pt/self_hosting.md +399 -224
  448. package/docs/ru/benchmark/nextjs.md +13 -13
  449. package/docs/ru/benchmark/solid.md +5 -5
  450. package/docs/ru/benchmark/svelte.md +4 -4
  451. package/docs/ru/benchmark/tanstack.md +14 -13
  452. package/docs/ru/benchmark/vue.md +5 -5
  453. package/docs/ru/chrome_extension.md +130 -0
  454. package/docs/ru/cli/index.md +6 -1
  455. package/docs/ru/cli/infra.md +162 -0
  456. package/docs/ru/cli/init.md +24 -1
  457. package/docs/ru/dictionary/html.md +173 -5
  458. package/docs/ru/dictionary/markdown.md +263 -1
  459. package/docs/ru/intlayer_with_analog.md +23 -1
  460. package/docs/ru/intlayer_with_angular_19.md +24 -1
  461. package/docs/ru/intlayer_with_angular_21.md +24 -1
  462. package/docs/ru/intlayer_with_astro.md +24 -1
  463. package/docs/ru/intlayer_with_astro_lit.md +25 -1
  464. package/docs/ru/intlayer_with_astro_preact.md +26 -1
  465. package/docs/ru/intlayer_with_astro_react.md +26 -1
  466. package/docs/ru/intlayer_with_astro_solid.md +26 -1
  467. package/docs/ru/intlayer_with_astro_svelte.md +25 -1
  468. package/docs/ru/intlayer_with_astro_vue.md +25 -1
  469. package/docs/ru/intlayer_with_remix_3.md +22 -1
  470. package/docs/ru/self_hosting.md +403 -228
  471. package/docs/tr/benchmark/nextjs.md +13 -13
  472. package/docs/tr/benchmark/solid.md +5 -5
  473. package/docs/tr/benchmark/svelte.md +4 -4
  474. package/docs/tr/benchmark/tanstack.md +14 -13
  475. package/docs/tr/benchmark/vue.md +5 -5
  476. package/docs/tr/chrome_extension.md +130 -0
  477. package/docs/tr/cli/index.md +6 -1
  478. package/docs/tr/cli/infra.md +162 -0
  479. package/docs/tr/cli/init.md +24 -1
  480. package/docs/tr/dictionary/html.md +173 -5
  481. package/docs/tr/dictionary/markdown.md +263 -1
  482. package/docs/tr/intlayer_with_analog.md +23 -1
  483. package/docs/tr/intlayer_with_angular_19.md +24 -1
  484. package/docs/tr/intlayer_with_angular_21.md +24 -1
  485. package/docs/tr/intlayer_with_astro.md +24 -1
  486. package/docs/tr/intlayer_with_astro_lit.md +25 -1
  487. package/docs/tr/intlayer_with_astro_preact.md +26 -1
  488. package/docs/tr/intlayer_with_astro_react.md +26 -1
  489. package/docs/tr/intlayer_with_astro_solid.md +26 -1
  490. package/docs/tr/intlayer_with_astro_svelte.md +25 -1
  491. package/docs/tr/intlayer_with_astro_vue.md +25 -1
  492. package/docs/tr/intlayer_with_remix_3.md +22 -1
  493. package/docs/tr/self_hosting.md +410 -234
  494. package/docs/uk/benchmark/nextjs.md +13 -13
  495. package/docs/uk/benchmark/solid.md +5 -5
  496. package/docs/uk/benchmark/svelte.md +4 -4
  497. package/docs/uk/benchmark/tanstack.md +14 -13
  498. package/docs/uk/benchmark/vue.md +5 -5
  499. package/docs/uk/chrome_extension.md +130 -0
  500. package/docs/uk/cli/index.md +6 -1
  501. package/docs/uk/cli/infra.md +162 -0
  502. package/docs/uk/cli/init.md +24 -1
  503. package/docs/uk/dictionary/html.md +173 -5
  504. package/docs/uk/dictionary/markdown.md +263 -1
  505. package/docs/uk/intlayer_with_analog.md +23 -1
  506. package/docs/uk/intlayer_with_angular_19.md +24 -1
  507. package/docs/uk/intlayer_with_angular_21.md +24 -1
  508. package/docs/uk/intlayer_with_astro.md +24 -1
  509. package/docs/uk/intlayer_with_astro_lit.md +25 -1
  510. package/docs/uk/intlayer_with_astro_preact.md +26 -1
  511. package/docs/uk/intlayer_with_astro_react.md +26 -1
  512. package/docs/uk/intlayer_with_astro_solid.md +26 -1
  513. package/docs/uk/intlayer_with_astro_svelte.md +25 -1
  514. package/docs/uk/intlayer_with_astro_vue.md +25 -1
  515. package/docs/uk/intlayer_with_remix_3.md +22 -1
  516. package/docs/uk/self_hosting.md +413 -238
  517. package/docs/vi/benchmark/nextjs.md +13 -13
  518. package/docs/vi/benchmark/solid.md +5 -5
  519. package/docs/vi/benchmark/svelte.md +4 -4
  520. package/docs/vi/benchmark/tanstack.md +14 -13
  521. package/docs/vi/benchmark/vue.md +5 -5
  522. package/docs/vi/chrome_extension.md +130 -0
  523. package/docs/vi/cli/index.md +6 -1
  524. package/docs/vi/cli/infra.md +162 -0
  525. package/docs/vi/cli/init.md +24 -1
  526. package/docs/vi/dictionary/html.md +173 -5
  527. package/docs/vi/dictionary/markdown.md +263 -1
  528. package/docs/vi/intlayer_with_analog.md +23 -1
  529. package/docs/vi/intlayer_with_angular_19.md +24 -1
  530. package/docs/vi/intlayer_with_angular_21.md +24 -1
  531. package/docs/vi/intlayer_with_astro.md +24 -1
  532. package/docs/vi/intlayer_with_astro_lit.md +25 -1
  533. package/docs/vi/intlayer_with_astro_preact.md +26 -1
  534. package/docs/vi/intlayer_with_astro_react.md +26 -1
  535. package/docs/vi/intlayer_with_astro_solid.md +26 -1
  536. package/docs/vi/intlayer_with_astro_svelte.md +25 -1
  537. package/docs/vi/intlayer_with_astro_vue.md +25 -1
  538. package/docs/vi/intlayer_with_remix_3.md +22 -1
  539. package/docs/vi/self_hosting.md +408 -234
  540. package/docs/zh/benchmark/nextjs.md +13 -13
  541. package/docs/zh/benchmark/solid.md +5 -5
  542. package/docs/zh/benchmark/svelte.md +4 -4
  543. package/docs/zh/benchmark/tanstack.md +14 -13
  544. package/docs/zh/benchmark/vue.md +5 -5
  545. package/docs/zh/chrome_extension.md +130 -0
  546. package/docs/zh/cli/index.md +6 -1
  547. package/docs/zh/cli/infra.md +162 -0
  548. package/docs/zh/cli/init.md +24 -1
  549. package/docs/zh/dictionary/html.md +172 -5
  550. package/docs/zh/dictionary/markdown.md +262 -1
  551. package/docs/zh/intlayer_with_analog.md +23 -1
  552. package/docs/zh/intlayer_with_angular_19.md +24 -1
  553. package/docs/zh/intlayer_with_angular_21.md +24 -1
  554. package/docs/zh/intlayer_with_astro.md +24 -1
  555. package/docs/zh/intlayer_with_astro_lit.md +25 -1
  556. package/docs/zh/intlayer_with_astro_preact.md +26 -1
  557. package/docs/zh/intlayer_with_astro_react.md +26 -1
  558. package/docs/zh/intlayer_with_astro_solid.md +26 -1
  559. package/docs/zh/intlayer_with_astro_svelte.md +25 -1
  560. package/docs/zh/intlayer_with_astro_vue.md +25 -1
  561. package/docs/zh/intlayer_with_remix_3.md +22 -1
  562. package/docs/zh/self_hosting.md +410 -237
  563. package/legal/ar/privacy_notice.md +9 -3
  564. package/legal/de/privacy_notice.md +9 -3
  565. package/legal/en/privacy_notice.md +10 -3
  566. package/legal/en-GB/privacy_notice.md +9 -3
  567. package/legal/es/privacy_notice.md +9 -3
  568. package/legal/fr/privacy_notice.md +9 -3
  569. package/legal/hi/privacy_notice.md +9 -3
  570. package/legal/id/privacy_notice.md +9 -3
  571. package/legal/it/privacy_notice.md +9 -3
  572. package/legal/ja/privacy_notice.md +9 -3
  573. package/legal/ko/privacy_notice.md +9 -3
  574. package/legal/pl/privacy_notice.md +9 -3
  575. package/legal/pt/privacy_notice.md +9 -3
  576. package/legal/ru/privacy_notice.md +9 -3
  577. package/legal/tr/privacy_notice.md +9 -3
  578. package/legal/uk/privacy_notice.md +9 -3
  579. package/legal/vi/privacy_notice.md +9 -3
  580. package/legal/zh/privacy_notice.md +9 -3
  581. package/package.json +1 -1
  582. package/src/generated/docs.entry.ts +40 -40
  583. package/docs/ar/roadmap.md +0 -321
  584. package/docs/de/roadmap.md +0 -322
  585. package/docs/en/intlayer_with_astro_vanilla.md +0 -713
  586. package/docs/en/roadmap.md +0 -325
  587. package/docs/en-GB/roadmap.md +0 -322
  588. package/docs/es/roadmap.md +0 -322
  589. package/docs/fr/roadmap.md +0 -322
  590. package/docs/hi/roadmap.md +0 -322
  591. package/docs/id/roadmap.md +0 -325
  592. package/docs/it/roadmap.md +0 -322
  593. package/docs/ja/roadmap.md +0 -322
  594. package/docs/ko/roadmap.md +0 -322
  595. package/docs/pl/roadmap.md +0 -325
  596. package/docs/pt/roadmap.md +0 -322
  597. package/docs/ru/roadmap.md +0 -322
  598. package/docs/tr/roadmap.md +0 -325
  599. package/docs/uk/roadmap.md +0 -325
  600. package/docs/vi/roadmap.md +0 -325
  601. package/docs/zh/roadmap.md +0 -322
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2026-09-13
3
- updatedAt: 2026-09-13
3
+ updatedAt: 2026-09-22
4
4
  title: "vue-i18n vs @intlayer/vue-i18n: Aynı API, Farklı Bundle"
5
5
  description: Bir Vue 3 uygulaması vue-i18n çağrılarını tuttuğunda ancak @intlayer/vue-i18n compat adapter aracılığıyla sunduğunda neler değişiyor. Aynı Vite + Vue kodunda sayfa başına JavaScript, runtime boyutu, component boyutu ve sızıntı ölçüldü; adapter'ın ne tuttuğu, ne yoksaydığı ve neyi değiştiremeyeceği.
6
6
  keywords:
@@ -25,6 +25,8 @@ author: aymericzip
25
25
 
26
26
  # vue-i18n VS @intlayer/vue-i18n | Aynı API, Farklı Bundle
27
27
 
28
+ ![Vue i18n library ecosystem](https://github.com/aymericzip/intlayer/blob/main/docs/assets/cloud_i18n_logo.webp?raw=true)
29
+
28
30
  `@intlayer/vue-i18n`, bir uyumluluk adaptörüdür: `vue-i18n` API'sini (`createI18n`, `useI18n`, `t()`, `d()`, `n()`, `$t`, `v-t`, `i18n.global.locale`...) ortaya çıkarır ve bunu Intlayer tarafından derlenmiş sözlüklerden sunar. `.vue` dosyalarınız değişmez. `t("footer.github")`'nin bağlı olduğu şey değişir.
29
31
 
30
32
  Bu makale, aynı Vite + Vue 3 uygulamasında bu değişimi ölçer; bir kez `vue-i18n` ile ve bir kez adapter ile oluşturulmuştur. Sayılar [Benchmark Bloom](https://github.com/intlayer-org/benchmark-bloom) kaynağından gelmektedir. `vue-i18n` ve Intlayer'ı kütüphaneler olarak karşılaştırmak için [vue-i18n vs Intlayer](https://intlayer.org/blog/vue-i18n-vs-intlayer) ve [vue-i18n vs Intlayer benchmark](https://intlayer.org/blog/vue-i18n-vs-intlayer-benchmark) makalesini okuyun. Bu makale, bileşenlerinizi olduğu gibi tuttuğunuzda adapterın ne değiştirdiği hakkındadır.
@@ -105,6 +107,10 @@ Her derleme için, suite şunları kaydeder:
105
107
 
106
108
  ### Vite + Vue 3 Sonuçları
107
109
 
110
+ İlgilendiğiniz metrikleri ve kütüphaneleri seçin:
111
+
112
+ <I18nBenchmark framework="vite-vue" vertical/>
113
+
108
114
  | Kurulum | Strategi | Lib size (gz) | Lib size (min) | Page JS avg (gz) | Locale leak | Page leak | Component avg (gz) | E2E reactivity | Page load |
109
115
  | ------------------------ | -------- | ------------: | -------------: | ---------------: | ----------: | --------: | -----------------: | -------------: | ---------: |
110
116
  | **base** (i18n yok) | - | 0.0 KB | 0.0 KB | 41.3 KB | 0.0% | - | 1.1 KB | 1.8 ms | 10.8 ms |
@@ -124,11 +130,24 @@ Her derleme için, suite şunları kaydeder:
124
130
  - **Reaktivite ve sayfa yükü.** Yerel ayar değiştirme her ikisi için de ucuzdur (1,5-2,8 ms); Vue'nin reaktivite sistemi mesajlar bellekte olduktan sonra bunu sağlar. Sayfa yükü 13,6 ms'den **9,3 ms**'ye gider; ayrıştırılacak 88 KB daha az JavaScript ile uyumludur.
125
131
  - **Yerel satırlar hakkında.** `vue-intlayer` bu çalıştırmada `static` modunda her yerel ayarı paketledi ve 3,9 KB çalışma zamanı ile 57,1 KB'ye ulaştı; adaptörün senkronize edilen sözlükleri daha az yabancı yerel ayar dizesi içeriyordu, bu nedenle sayfa başına daha düşük rakam. Yerel çalışma zamanı üçünün en hafifi olmaya devam ediyor ve `.content.ts` modeli SFC `<i18n>` bloklarının eşdeğerini bulduğu yerdir.
126
132
 
133
+ <ClickToOpenIframe
134
+ src="https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_vue.md"
135
+ width="100%"
136
+ height="600px"
137
+ style="border:none;"
138
+ />
139
+
140
+ > Tüm tablo, her kütüphane ve her strateji, [Vue kıyaslama raporunda](https://intlayer.org/tr/doc/benchmark/vue).
141
+
127
142
  ## Sayılar neden değişiyor
128
143
 
144
+ ![The Intlayer compiler extracts content from components](https://github.com/aymericzip/intlayer/blob/main/docs/assets/compiler.webp?raw=true)
145
+
129
146
  `src/components/` içinde hiçbir şey değişmedi, bu nedenle kazançlar `useI18n` bağlı olduğu şeyden geliyor.
130
147
 
131
- **`vue-i18n` ile**, bağlama global örnek olur. `createI18n({ messages: { en, fr, ... } })` her şeyi içeren tek bir importtur; `useI18n()` çağıran her bileşen tümüne erişebilir, bu nedenle bundler örneğin altında bölemez. Optimize etmek, _siz_ `en.json` dosyasını rota tarafından bölmeniz, bir router guard içinde `setLocaleMessage()` çağırmanız ve bileşenler hareket ettikçe rota-dosya haritasını doğru tutmanız anlamına gelir.
148
+ **`vue-i18n` ile**, bağlama global örnek olur. `createI18n({ messages: { en, fr, ... } })` her şeyi içeren tek bir importtur; `useI18n()` çağıran her bileşen tümüne erişebilir, bu nedenle bundler örneğin altında bölemez. Optimize etmek, _siz_ `en.json` dosyasını rota tarafından bölmeniz, bir router guard içinde `setLocaleMessage()` çağırmanız ve bileşenler hareket ettikçe rota-dosya haritasını doğru tutmanız anlamına gelir. İsraf aynı anda iki eksende büyür, sayfalar ve diller:
149
+
150
+ ![Theoretical content leakage by architecture](https://github.com/aymericzip/intlayer/blob/main/docs/assets/theorical_content_leakage.webp?raw=true)
132
151
 
133
152
  ```bash
134
153
  .
@@ -258,26 +277,107 @@ export const i18n = createI18n({ locale: "en" });
258
277
 
259
278
  ## Başlamadan önce bilmeniz gereken sınırlamalar
260
279
 
261
- - **SFC `<i18n>` blokları okunmaz.** Mesajlarınız componentler içinde bulunuyorsa, bunların locale dosyalarına (veya türleri olan `.content.ts` dosyasına, bu da aynı fikrin türlü halidir) taşınması gerekir.
262
- - **Runtime mesaj yükleme kaldırılmıştır.** `setLocaleMessage()` ve `mergeLocaleMessage()` uyarı verir ve geri döner. CMS'den runtime'da alınan çeviriler, Intlayer'ın CMS'ini veya `intlayer pull` / `push` komutlarını gerektirir.
263
- - **`messages` bir fallback'tir, ücretsiz değildir.** `createI18n()` içindeki JSON import'larını tutmak, bundle'a 75 KB ekler. `intlayer test` geçtikten sonra bunları silin.
264
- - **Adapter, native runtime değildir.** 7.9 KB vs `vue-intlayer` için 3.9 KB. Her component `useIntlayer`'a geçtikten sonra bunu kaldırabilirsiniz.
280
+ <AccordionGroup>
281
+ <Accordion header="SFC <i18n> blokları okunmaz">
282
+
283
+ Mesajlarınız bileşenlerin içindeyse, yerel ayarlara ait dosyalara veya üretilen tiplerle aynı mantıkta olan `.content.ts` dosyasına taşınmalıdır.
284
+
285
+ </Accordion>
286
+ <Accordion header="Çalışma zamanı mesaj yükleme kaldırıldı">
287
+
288
+ `setLocaleMessage()` ve `mergeLocaleMessage()` bir uyarı verip geri döner. Çalışma zamanında bir CMS'ten çekilen çeviriler, [Intlayer CMS](https://intlayer.org/tr/doc/concept/cms) veya `intlayer pull` / `push` komutlarını gerektirir.
289
+
290
+ </Accordion>
291
+ <Accordion header="messages bir yedek seçenektir, ücretsiz değildir">
292
+
293
+ `createI18n()` içindeki JSON içe aktarmalarını tutmak, pakette 75 KB tutmaya devam eder. `intlayer test` başarıyla geçtikten sonra bunları silin.
294
+
295
+ </Accordion>
296
+ <Accordion header="Adaptör yerel çalışma zamanı değildir">
297
+
298
+ `vue-intlayer` için 3.9 KB iken adaptör için 7.9 KB. Her bileşen `useIntlayer` kullanımına geçtikten sonra kaldırın.
299
+
300
+ </Accordion>
301
+ </AccordionGroup>
265
302
 
266
303
  ## Hangisini ne zaman kullanmalı?
267
304
 
268
- - **`vue-i18n` üzerinde kalın** eğer uygulamanız SFC `<i18n>` blocks'a, runtime `setLocaleMessage()` flows'a bağlı ise, veya 90 KB per page sizin audience'ınız için bir sorun değilse.
269
- - **`@intlayer/vue-i18n` kullanın** eğer `vue-i18n` üzerindeyseniz ve 88 KB, 23x daha küçük components, 0% page leakage, typed keys ve `.vue` dosyasını düzenlemeden CI checks istiyorsanız. Bu, mevcut bir `vue-i18n` codebase'i için giriş noktasıdır.
270
- - **Native'ye gidin (`vue-intlayer`)** yeni projeler için veya adapter işini bitirdikten sonra. En hafif runtime'a (3.9 KB) ve `<i18n>` blocks'ı typed content ile değiştiren per-component `.content.ts` modelini içerir.
305
+ <AccordionGroup>
306
+ <Accordion header="vue-i18n'de kalın">
307
+
308
+ Uygulamanız SFC `<i18n>` bloklarına veya çalışma zamanı `setLocaleMessage()` akışlarına bağımlıysa ya da sayfa başına 90 KB kitleniz için bir endişe kaynağı değilse.
309
+
310
+ </Accordion>
311
+ <Accordion header="@intlayer/vue-i18n kullanın">
312
+
313
+ `vue-i18n` kullanıyorsanız ve hiçbir `.vue` dosyasını düzenlemeden 88 KB tasarruf, 23 kat daha küçük bileşenler, %0 sayfa sızıntısı, tiplenmiş anahtarlar ve CI denetimleri istiyorsanız. Mevcut bir `vue-i18n` kod tabanı için giriş noktası budur.
314
+
315
+ </Accordion>
316
+ <Accordion header="Yerel kullanıma geçin (vue-intlayer)">
317
+
318
+ Yeni projeler için veya adaptör görevini tamamladıktan sonra. En hafif çalışma zamanına (3.9 KB) ve `<i18n>` bloklarını tiplenmiş içerikle değiştiren bileşen başına `.content.ts` modeline sahiptir. [Vue ile Intlayer](https://intlayer.org/tr/doc/environment/vite-and-vue) veya [Nuxt ile](https://intlayer.org/tr/doc/environment/nuxt-and-vue) başlayın.
319
+
320
+ </Accordion>
321
+ </AccordionGroup>
322
+
323
+ ## SSS
324
+
325
+ <FAQ>
326
+
327
+ <Question title=".vue dosyalarımı düzenlemem gerekiyor mu?">
328
+
329
+ Hayır. Kıyaslama derlemesi yalnızca `vite.config.ts`, `intlayer.config.ts` ve `src/i18n.ts` dosyasındaki `messages` içe aktarımını değiştirdi. Her `useI18n()`, `$t`, `v-t` ve Options API çağrısı olduğu gibi kaldı.
330
+
331
+ </Question>
332
+
333
+ <Question title="Bileşen boyutu neden 23 kat daha küçük?">
334
+
335
+ Çünkü `useI18n()` artık genel örneğe erişmeyi bırakır. `createI18n({ messages })` her yerel ayarın tüm mesajlarını tutar, bu nedenle tek başına derlenen bir bileşen 196 KB yük getirir. Adaptörle yalnızca kendi sözlüğüne erişir: 8.4 KB.
336
+
337
+ </Question>
338
+
339
+ <Question title="d() ve n() biçimlendirmeleri ne olacak?">
340
+
341
+ Korundu. `createI18n()` işlevine iletilen `datetimeFormats` ve `numberFormats` yapılandırmalarına uyulur ve yerel `Intl` API'si ile desteklenir. Bkz. [tarih, saat ve sayı biçimlendirmesi](https://intlayer.org/tr/blog/date-time-number-formatting-locales).
342
+
343
+ </Question>
344
+
345
+ <Question title="Nuxt ile çalışır mı?">
346
+
347
+ `@intlayer/vue-i18n` Vite + Vue hedefler. `@nuxtjs/i18n` için [Nuxt i18n uyumluluk adaptörünü](https://intlayer.org/tr/doc/compatibility/nuxtjs-i18n) kullanın ve yerel kurulum için [Nuxt ile Intlayer](https://intlayer.org/tr/doc/environment/nuxt-and-vue) sayfasına bakın.
348
+
349
+ </Question>
350
+
351
+ <Question title="Bileşen bileşen geçiş yapabilir miyim?">
352
+
353
+ Evet. Herhangi bir bileşen, aynı dizinde bulunan bir içerik dosyasıyla `useI18n()` kullanımından `useIntlayer("footer")` kullanımına geçebilir. JSON ve `.content.ts` sözlükleri bir arada var olur ve birleşir.
354
+
355
+ </Question>
356
+
357
+ </FAQ>
271
358
 
272
359
  ## İlgili karşılaştırmalar
273
360
 
274
- - [vue-i18n vs Intlayer](https://intlayer.org/blog/vue-i18n-vs-intlayer) (özellikler ve DX)
275
- - [vue-i18n vs Intlayer benchmark](https://intlayer.org/blog/vue-i18n-vs-intlayer-benchmark) (kütüphaneler, aynı benchmark)
276
- - [next-intl vs @intlayer/next-intl](https://intlayer.org/blog/next-intl-vs-intlayer-next-intl) (aynı adapter serisi)
277
- - [i18next vs @intlayer/i18next](https://intlayer.org/blog/i18next-vs-intlayer-i18next) (aynı adapter serisi)
278
- - [Lingui vs @intlayer/lingui](https://intlayer.org/blog/lingui-vs-intlayer-lingui) (aynı adapter serisi)
279
- - [Geçiş rehberi: vue-i18n to Intlayer](https://intlayer.org/doc/migration/vue-i18n)
280
- - [Compat adapter reference: vue-i18n](https://intlayer.org/doc/compatibility/vue-i18n), [Nuxt i18n](https://intlayer.org/doc/compatibility/nuxtjs-i18n)
361
+ Aynı adaptör serisi:
362
+
363
+ - [next-intl vs @intlayer/next-intl](https://intlayer.org/tr/blog/next-intl-vs-intlayer-next-intl)
364
+ - [i18next vs @intlayer/i18next](https://intlayer.org/tr/blog/i18next-vs-intlayer-i18next)
365
+ - [Lingui vs @intlayer/lingui](https://intlayer.org/tr/blog/lingui-vs-intlayer-lingui)
366
+
367
+ Doğrudan karşılaştırılan kütüphaneler:
368
+
369
+ - [vue-i18n vs Intlayer](https://intlayer.org/tr/blog/vue-i18n-vs-intlayer), features and DX
370
+ - [vue-i18n vs Intlayer benchmark](https://intlayer.org/tr/blog/vue-i18n-vs-intlayer-benchmark)
371
+ - [Is vue-i18n outdated?](https://intlayer.org/tr/blog/is-vue-i18n-outdated)
372
+ - [How to pick a Vue i18n library](https://intlayer.org/tr/blog/how-to-pick-vue-i18n-library)
373
+
374
+ Referans belgeler:
375
+
376
+ - [Compat adapter: vue-i18n](https://intlayer.org/tr/doc/compatibility/vue-i18n) and [Nuxt i18n](https://intlayer.org/tr/doc/compatibility/nuxtjs-i18n)
377
+ - [Geçiş kılavuzu: vue-i18n'den Intlayer'a](https://intlayer.org/tr/doc/migration/vue-i18n)
378
+ - [Vue kıyaslama raporu](https://intlayer.org/tr/doc/benchmark/vue)
379
+ - [Paket optimizasyonu](https://intlayer.org/tr/doc/concept/bundle-optimization) ve [Intlayer derleyicisi](https://intlayer.org/tr/doc/compiler)
380
+ - [Görsel Düzenleyici](https://intlayer.org/tr/doc/concept/editor), [CMS](https://intlayer.org/tr/doc/concept/cms) ve [yapay zeka çevirisi](https://intlayer.org/tr/doc/concept/auto-fill)
281
381
 
282
382
  ## Sonuç
283
383
 
@@ -285,4 +385,4 @@ export const i18n = createI18n({ locale: "en" });
285
385
 
286
386
  Tüm ham veriler, test uygulamaları ve scriptler [Benchmark Bloom repository](https://github.com/intlayer-org/benchmark-bloom) içinde bulunmaktadır. Kendiniz çalıştırabilirsiniz.
287
387
 
288
- Daha fazla ayrıntı için ['Neden Intlayer?' dokümantasyonuna](https://intlayer.org/doc/why) bakınız.
388
+ Daha fazla ayrıntı için ['Neden Intlayer?' dokümantasyonuna](https://intlayer.org/tr/doc/why) bakınız.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-09-07
3
- updatedAt: 2025-09-07
3
+ updatedAt: 2026-09-22
4
4
  title: vue-i18n vs Intlayer
5
5
  description: vue-i18n'i Intlayer ile Vue/Nuxt uygulamalarında uluslararasılaştırma (i18n) için karşılaştırın
6
6
  keywords:
@@ -20,6 +20,8 @@ author: aymericzip
20
20
 
21
21
  # vue-i18n VS Intlayer | Vue Uluslararasılaştırma (i18n)
22
22
 
23
+ ![Vue i18n library ecosystem](https://github.com/aymericzip/intlayer/blob/main/docs/assets/cloud_i18n_logo.webp?raw=true)
24
+
23
25
  Bu rehber, **Vue 3** (ve **Nuxt**) için iki popüler i18n seçeneğini karşılaştırır: **vue-i18n** ve **Intlayer**.
24
26
  Modern Vue araçlarına (Vite, Composition API) odaklanıyoruz ve şunları değerlendiriyoruz:
25
27
 
@@ -40,6 +42,30 @@ Modern Vue araçlarına (Vite, Composition API) odaklanıyoruz ve şunları değ
40
42
  - **vue-i18n** - Vue için de-facto i18n kütüphanesi. Esnek mesaj formatlaması (ICU tarzı), yerel mesajlar için SFC `<i18n>` blokları ve büyük bir ekosistem. Güvenlik ve büyük ölçekli bakım çoğunlukla sizin sorumluluğunuzdur.
41
43
  - **Intlayer** - Vue/Vite/Nuxt için bileşen merkezli içerik modeli, **katı TS yazımı**, **derleme zamanı kontrolleri**, **ağaç sallama**, **yönlendirici ve SEO yardımcıları**, isteğe bağlı **Görsel Düzenleyici/CMS** ve **AI destekli çeviriler**.
42
44
 
45
+ ## Derleme zamanında maliyeti nedir
46
+
47
+ Özellik tablolarından önce, ölçülen kısım. [Benchmark Bloom](https://github.com/intlayer-org/benchmark-bloom) aynı Vite + Vue 3 uygulamasını (10 sayfa, 10 dil) her kütüphaneyle derler ve tarayıcının indirdiklerini kaydeder:
48
+
49
+ <I18nBenchmark framework="vite-vue" vertical/>
50
+
51
+ | Setup | Lib size (gz) | Page JS avg (gz) | Page leak | Component avg (gz) |
52
+ | -------------------- | ------------: | ---------------: | --------: | -----------------: |
53
+ | **base** (no i18n) | 0.0 KB | 41.3 KB | - | 1.1 KB |
54
+ | `vue-i18n` | 24.3 KB | 134.9 KB | 90.0% | 196.0 KB |
55
+ | `@intlayer/vue-i18n` | 7.9 KB | 47.0 KB | 0.0% | 8.4 KB |
56
+ | **`vue-intlayer`** | **3.9 KB** | **57.1 KB** | **0.0%** | **7.7 KB** |
57
+
58
+ `vue-i18n` çalışma zamanı tek başına Intlayer'ın **6 katı** büyüklüğündedir, her sayfa **%90 oranında yabancı sayfa dizgisi** taşır ve tek başına derlenen bir bileşen, `useI18n()` onu genel mesaj ağacına bağladığı için **196 KB** yük getirir. Reaktivite ve sayfa yükleme sürelerini içeren tam rapor [vue-i18n vs Intlayer karşılaştırmasında](https://intlayer.org/tr/blog/vue-i18n-vs-intlayer-benchmark) yer almaktadır.
59
+
60
+ <ClickToOpenIframe
61
+ src="https://intlayer.org/markdown?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintlayer-org%2Fbenchmark-i18n%2Fmain%2Freport%2Fscripts%2Fsummarize-vite_vue.md"
62
+ width="100%"
63
+ height="600px"
64
+ style="border:none;"
65
+ />
66
+
67
+ > Tam tablo [Vue kıyaslama raporunda](https://intlayer.org/tr/doc/benchmark/vue).
68
+
43
69
  ## Yan Yana Özellik Karşılaştırması (Vue odaklı)
44
70
 
45
71
  | Özellik | **Intlayer** | **vue-i18n** |
@@ -65,59 +91,74 @@ Modern Vue araçlarına (Vite, Composition API) odaklanıyoruz ve şunları değ
65
91
 
66
92
  ## Derinlemesine karşılaştırma
67
93
 
68
- ### 1) Mimari ve ölçeklenebilirlik
94
+ <AccordionGroup>
95
+ <Accordion header="1) Mimari ve ölçeklenebilirlik">
69
96
 
70
- - **vue-i18n**: Ortak kurulumlar yerel başına **merkezi kataloglar** kullanır (isteğe bağlı olarak dosyalara/ad alanlarına bölünür). SFC `<i18n>` blokları yerel mesajlara izin verir ancak ekipler projeler büyüdükçe paylaşılan kataloglara geri döner.
97
+ - **vue-i18n**: Ortak kurulumlar yerel başına **merkezi kataloglar** kullanır (isteğe bağlı olarak dosyalara/ad alanlarına bölünür). SFC `<i18n>` blokları yerel mesajlara izin verir ancak ekipler projeler büyüdükçe paylaşılan kataloglara geri döner. Bkz. [bileşen başına ve merkezi i18n karşılaştırması](https://intlayer.org/tr/blog/per-component-vs-centralized-i18n).
71
98
  - **Intlayer**: Hizmet ettikleri bileşenle birlikte **bileşen başına sözlükleri** teşvik eder. Bu, ekip arası çatışmaları azaltır, içeriği keşfedilebilir tutar ve doğal olarak kayma/kullanılmayan anahtarları sınırlandırır.
72
99
 
73
100
  **Neden önemli:** Büyük Vue uygulamalarında veya tasarım sistemlerinde, **modüler içerik** monolitik kataloglardan daha iyi ölçeklenir.
74
101
 
75
- ### 2) TypeScript ve güvenlik
102
+ </Accordion>
103
+ <Accordion header="2) TypeScript ve güvenlik">
76
104
 
77
105
  - **vue-i18n**: İyi TS desteği; **katı anahtar yazımı** genellikle özel şemalar/genel türler ve dikkatli kurallar gerektirir.
78
106
  - **Intlayer**: İçeriğinizden **katı türler oluşturur**, **IDE otomatik tamamlama** ve yazım/eksik anahtarlar için **derleme zamanı hataları** sağlar.
79
107
 
80
108
  **Neden önemli:** Güçlü yazım, sorunları **çalışma zamanından önce** yakalar.
81
109
 
82
- ### 3) Eksik çeviri işleme
110
+ </Accordion>
111
+ <Accordion header="3) Eksik çeviri yönetimi">
83
112
 
84
- - **vue-i18n**: **Çalışma zamanı** uyarılar/geri dönüşler (örneğin, yerel veya anahtara geri dön).
85
- - **Intlayer**: Yerel ve anahtarlar genelinde **derleme zamanı** algılama ile uyarılar/hatalar.
113
+ - **vue-i18n**: **Çalışma zamanı** uyarılar/geri dönüşler (örneğin, yerel veya anahtara geri dön). Bkz. [eksik çevirileri tespit etme](https://intlayer.org/tr/blog/detecting-missing-translations).
114
+ - **Intlayer**: Yerel ve anahtarlar genelinde **derleme zamanı** algılama ile uyarılar/hatalar., artı CI'da `npx intlayer test`.
86
115
 
87
116
  **Neden önemli:** Derleme zamanı uygulaması, üretim UI'sini temiz ve tutarlı tutar.
88
117
 
89
- ### 4) Yönlendirme ve URL stratejisi (Vue Router/Nuxt)
118
+ </Accordion>
119
+ <Accordion header="4) Yönlendirme ve URL stratejisi (Vue Router/Nuxt)">
90
120
 
91
- - **İkisi de** yerelleştirilmiş yollarla çalışabilir.
121
+ - **İkisi de** yerelleştirilmiş yollarla çalışabilir. Bkz. [hreflang kılavuzu](https://intlayer.org/tr/blog/hreflang-guide-multilingual-seo).
92
122
  - **Intlayer**, **yerelleştirilmiş yollar oluşturmak**, **yerel önekleri yönetmek** ve SEO için **`<link rel="alternate" hreflang>`** yaymak için yardımcılar sağlar. Nuxt ile, çerçevenin yönlendirmesini tamamlar.
93
123
 
94
124
  **Neden önemli:** Daha az özel yapıştırıcı katman ve yerel genelinde **daha temiz SEO**.
95
125
 
96
- ### 5) Performans ve yükleme davranışı
126
+ </Accordion>
127
+ <Accordion header="5) Performans ve yükleme davranışı">
97
128
 
98
- - **vue-i18n**: Zaman uyumsuz yerel mesajları destekler; aşırı paketlemeyi önlemek sizin sorumluluğunuzdur (katalogları dikkatlice bölün).
129
+ - **vue-i18n**: Zaman uyumsuz yerel mesajları destekler; aşırı paketlemeyi önlemek sizin sorumluluğunuzdur (katalogları dikkatlice bölün). Yukarıdaki kıyaslama bunu sayılarla ortaya koyuyor: sayfa başına 134.9 KB'a karşı 57.1 KB.
99
130
  - **Intlayer**: **Derleme zamanında ağaç sallar** ve **sözlük/yere göre tembel yükler**. Kullanılmayan içerik gönderilmez.
100
131
 
101
132
  **Neden önemli:** Çok yerel Vue uygulamaları için daha küçük paketler ve daha hızlı başlatma.
102
133
 
103
- ### 6) Geliştirici deneyimi ve araçlar
134
+ </Accordion>
135
+ <Accordion header="6) Geliştirici deneyimi ve araçlar">
104
136
 
105
137
  - **vue-i18n**: Olgun dokümantasyon ve topluluk; genellikle düzenleme iş akışları için **harici yerelleştirme platformlarına** güveneceksiniz.
106
- - **Intlayer**: **Ücretsiz Görsel Düzenleyici**, isteğe bağlı **CMS** (Git dostu veya dışa aktarılmış), **VSCode uzantısı**, **CLI/CI** yardımcıları ve kendi sağlayıcı anahtarlarınızı kullanarak **AI destekli çeviriler** gönderir.
138
+ - **Intlayer**: **Ücretsiz Görsel Düzenleyici**, isteğe bağlı **CMS** (Git dostu veya dışa aktarılmış), **VSCode uzantısı**, **CLI/CI** yardımcıları ve kendi sağlayıcı anahtarlarınızı kullanarak **AI destekli çeviriler** gönderir., bir **MCP sunucusu**
107
139
 
108
140
  **Neden önemli:** Daha düşük operasyon maliyeti ve geliştiriciler ile içerik yazarları arasındaki döngüyü kısaltır.
109
141
 
110
- ### 7) SEO, SSR ve SSG
142
+ </Accordion>
143
+ <Accordion header="7) SEO, SSR ve SSG">
111
144
 
112
- - **İkisi de** Vue SSR ve Nuxt ile çalışır.
145
+ - **İkisi de** Vue SSR ve Nuxt ile çalışır. Bkz. [uluslararasılaştırma ve SEO](https://intlayer.org/tr/blog/SEO-and-i18n).
113
146
  - **Intlayer**: Vue/Nuxt yapılarıyla iyi uyumlu, çerçeve agnostik **SEO yardımcıları** (site haritaları/meta veri/`hreflang`) ekler.
114
147
 
115
148
  **Neden önemli:** Özel kablolama olmadan uluslararası SEO.
116
149
 
150
+ </Accordion>
151
+ </AccordionGroup>
152
+
117
153
  ## Neden Intlayer? (Sorun ve yaklaşım)
118
154
 
155
+ ![Centralized catalogs versus per-component dictionaries](https://github.com/aymericzip/intlayer/blob/main/docs/assets/project_stucture_18n_vs_intlayer.png?raw=true)
156
+
119
157
  Çoğu i18n yığını (**vue-i18n** dahil) **merkezi kataloglardan** başlar:
120
158
 
159
+ <Tabs defaultTab="per-locale" group="catalog">
160
+ <Tab label="Dil başına bir dosya" value="per-locale">
161
+
121
162
  ```bash
122
163
  .
123
164
  ├── locales
@@ -129,7 +170,8 @@ Modern Vue araçlarına (Vite, Composition API) odaklanıyoruz ve şunları değ
129
170
  └── MyComponent.vue
130
171
  ```
131
172
 
132
- Veya yerel klasörlerle:
173
+ </Tab>
174
+ <Tab label="Dil başına bir klasör" value="per-folder">
133
175
 
134
176
  ```bash
135
177
  .
@@ -148,6 +190,34 @@ Veya yerel klasörlerle:
148
190
  └── MyComponent.vue
149
191
  ```
150
192
 
193
+ </Tab>
194
+ </Tabs>
195
+
196
+ Bu klasör her dilde özellik başına bir ad alanıyla büyümeye devam eder:
197
+
198
+ ```txt
199
+ locales
200
+ ├── EN
201
+ │ ├── blog.json
202
+ │ ├── about.json
203
+ │ ├── auth.json
204
+ │ ├── blog.json
205
+ │ ├── cart.json
206
+ │ ├── categories.json
207
+ │ ├── contact.json
208
+ │ ├── dashboard.json
209
+ │ ├── errors.json
210
+ │ ├── faq.json
211
+ │ ├── footer.json
212
+ │ ├── form.json
213
+ │ ├── home.json
214
+ │ ├── language.json
215
+ │ ├── navbar.json
216
+ │ ├── ... 65 files
217
+ │ └── validation.json
218
+ └── ES
219
+ ```
220
+
151
221
  Bu, uygulamalar büyüdükçe geliştirmeyi yavaşlatır:
152
222
 
153
223
  1. **Yeni bir bileşen için** uzak katalogları oluştur/düzenle, ad alanlarını bağla ve çevir (genellikle AI araçlarından manuel kopyala/yapıştır ile).
@@ -163,7 +233,33 @@ Bu, uygulamalar büyüdükçe geliştirmeyi yavaşlatır:
163
233
  └── MyComponent.vue
164
234
  ```
165
235
 
166
- **İçerik beyanı** (bileşen başına):
236
+ <Tabs defaultTab="intlayer" group="techno">
237
+ <Tab label="vue-i18n" value="vue-i18n">
238
+
239
+ ```json fileName="./locales/en.json"
240
+ {
241
+ "componentExample": {
242
+ "greeting": "Hello World"
243
+ }
244
+ }
245
+ ```
246
+
247
+ ```vue fileName="./components/MyComponent.vue"
248
+ <script setup lang="ts">
249
+ import { useI18n } from "vue-i18n";
250
+
251
+ const { t } = useI18n();
252
+ </script>
253
+
254
+ <template>
255
+ <span>{{ t("componentExample.greeting") }}</span>
256
+ </template>
257
+ ```
258
+
259
+ Her yerel ayar dosyasının elle düzenlenmesi gerekir ve anahtar düz bir metindir: bir yazım hatası üretimde `componentExample.greting` olarak görüntülenir.
260
+
261
+ </Tab>
262
+ <Tab label="Intlayer" value="intlayer">
167
263
 
168
264
  ```ts fileName="./components/MyComponent/myComponent.content.ts"
169
265
  import { t, type Dictionary } from "intlayer";
@@ -173,8 +269,8 @@ const componentExampleContent = {
173
269
  content: {
174
270
  greeting: t({
175
271
  en: "Hello World",
176
- es: "Hola Mundo",
177
272
  fr: "Bonjour le monde",
273
+ es: "Hola Mundo",
178
274
  }),
179
275
  },
180
276
  } satisfies Dictionary;
@@ -182,11 +278,10 @@ const componentExampleContent = {
182
278
  export default componentExampleContent;
183
279
  ```
184
280
 
185
- **Vue'da kullanım** (Composition API):
186
-
187
281
  ```vue fileName="./components/MyComponent/MyComponent.vue"
188
282
  <script setup lang="ts">
189
- import { useIntlayer } from "vue-intlayer"; // Vue entegrasyonu
283
+ import { useIntlayer } from "vue-intlayer"; // Vue integration
284
+
190
285
  const { greeting } = useIntlayer("component-example");
191
286
  </script>
192
287
 
@@ -195,6 +290,11 @@ const { greeting } = useIntlayer("component-example");
195
290
  </template>
196
291
  ```
197
292
 
293
+ Tüm diller bileşenin yanında tek bir tiplenmiş dosyada yer alır.
294
+
295
+ </Tab>
296
+ </Tabs>
297
+
198
298
  Bu yaklaşım:
199
299
 
200
300
  - **Geliştirmeyi hızlandırır** (bir kez beyan et; IDE/AI otomatik tamamlar).
@@ -222,20 +322,71 @@ Bu yaklaşım:
222
322
 
223
323
  ## Hangisini ne zaman seçmeli?
224
324
 
225
- - **vue-i18n**'i seçin eğer **standart Vue yaklaşımını** istiyorsanız, katalogları/ad alanlarını kendiniz yönetmekle rahatınız ve uygulamanız **küçük ila orta boy**.
226
- - **Intlayer**'ı seçin eğer **bileşen kapsamlı içerik**, **katı TypeScript**, **derleme zamanı garantileri**, **ağaç sallama** ve **pil dahil yönlendirme/SEO/düzenleyici araçlarını** takdir ediyorsanız - özellikle **büyük, modüler Vue/Nuxt kod tabanları**, tasarım sistemleri vb. için.
325
+ <AccordionGroup>
326
+ <Accordion header="vue-i18n'i seçin">
327
+
328
+ **Standart Vue yaklaşımını** istiyorsanız, katalogları ve ad alanlarını kendiniz yönetmekten memnunsanız ve uygulamanız **küçük veya orta ölçekliyse** (ya da zaten Nuxt i18n kullanıyorsanız). SFC `<i18n>` blokları ve çalışma zamanı `setLocaleMessage()`, Intlayer'ın bilinçli olarak taklit etmediği özelliklerdir.
329
+
330
+ </Accordion>
331
+ <Accordion header="Intlayer'ı seçin">
332
+
333
+ **Bileşen kapsamlı içeriğe**, **katı TypeScript desteğine**, **derleme zamanı garantilerine**, **tree-shaking'e** ve yönlendirme, SEO ve düzenleyici araçlarına değer veriyorsanız, özellikle **büyük, modüler Vue/Nuxt kod tabanları** ve tasarım sistemleri için. [Vue ile Intlayer](https://intlayer.org/tr/doc/environment/vite-and-vue) veya [Nuxt ile](https://intlayer.org/tr/doc/environment/nuxt-and-vue) başlayın.
334
+
335
+ </Accordion>
336
+ <Accordion header="@intlayer/vue-i18n'i seçin">
337
+
338
+ Şu anda `vue-i18n` kullanıyorsanız ve `.vue` dosyalarını düzenlemeden paket boyutu kazanımı istiyorsanız. [Uyumluluk adaptörü](https://intlayer.org/tr/doc/compatibility/vue-i18n), `createI18n`, `useI18n`, `t()`, `d()`, `n()`, `$t` ve `v-t` çağrılarını korur ve derlenmiş sözlüklerden sunar. [vue-i18n vs @intlayer/vue-i18n](https://intlayer.org/tr/blog/vue-i18n-vs-intlayer-vue-i18n) sayfasında yan yana ölçülmüştür.
339
+
340
+ </Accordion>
341
+ </AccordionGroup>
227
342
 
228
343
  ## vue-i18n ile birlikte çalışabilirlik
229
344
 
230
345
  `intlayer`, `vue-i18n` ad alanlarınızı yönetmenize de yardımcı olabilir.
231
346
 
232
- `intlayer` kullanarak, içeriğinizi favori i18n kütüphanenizin formatında beyan edebilirsiniz ve intlayer ad alanlarınızı istediğiniz konumda oluşturacaktır (örnek: `/messages/{{locale}}/{{namespace}}.json`).
347
+ `intlayer` kullanarak, içeriğinizi favori i18n kütüphanenizin formatında beyan edebilirsiniz ve intlayer ad alanlarınızı istediğiniz konumda oluşturacaktır (örnek: `/messages/{{locale}}/{{namespace}}.json`). Bkz. [vue-i18n uyumluluk belgeleri](https://intlayer.org/tr/doc/compatibility/vue-i18n) ve [Nuxt i18n adaptörü](https://intlayer.org/tr/doc/compatibility/nuxtjs-i18n).
348
+
349
+ ## SSS
350
+
351
+ <FAQ>
352
+
353
+ <Question title="Intlayer, vue-i18n için bir alternatif mi yoksa üzerine kurulu bir katman mı?">
354
+
355
+ Nasıl benimsediğinize bağlı olarak her ikisi de. `vue-intlayer`, kendi `useIntlayer()` fonksiyonuna sahip yerel bir çalışma zamanıdır. `@intlayer/vue-i18n`, `vue-i18n` API'sini koruyan ve bağlı olduğu yapıyı değiştiren bir uyumluluk adaptörüdür, böylece bileşenlere dokunmadan geçiş yapabilir ve ardından dosya dosya ilerleyebilirsiniz.
356
+
357
+ </Question>
358
+
359
+ <Question title="SFC <i18n> bloklarıma ne olur?">
360
+
361
+ Adaptör bunları okumaz. Bu mesajları yerel ayar JSON dosyanıza veya üretilen tiplerle aynı konsepte sahip olan bileşenin yanındaki `.content.ts` dosyasına taşıyın. Bu, `vue-i18n`'in aktarılmayan tek özelliğidir.
362
+
363
+ </Question>
364
+
365
+ <Question title="Intlayer Nuxt ile çalışır mı?">
366
+
367
+ Evet. [Nuxt ile Intlayer](https://intlayer.org/tr/doc/environment/nuxt-and-vue) çok dilli yönlendirme, dil algılama ara yazılımı ve site haritası oluşturmayı kapsar. `@nuxtjs/i18n` kullanıyorsanız, [Nuxt i18n uyumluluk adaptörü](https://intlayer.org/tr/doc/compatibility/nuxtjs-i18n) geçiş yoludur.
368
+
369
+ </Question>
370
+
371
+ <Question title="locales/{locale}.json dosyalarımı referans kaynağı olarak tutabilir miyim?">
372
+
373
+ Evet. [JSON senkronizasyon eklentisi](https://intlayer.org/tr/doc/compatibility/vue-i18n) bunları `vue-i18n` sözdizimiyle (`{name}`, `{0}`, `"car | cars"` boru çoğulları) okur ve CLI veya CMS güncellediğinde çevirileri geri yazar.
374
+
375
+ </Question>
376
+
377
+ <Question title="ICU, Vue üzerinde Intlayer ile çalışır mı?">
378
+
379
+ Yerel ICU desteği geliştirme aşamasındadır. `@intlayer/vue-i18n` adaptörü, boru çoğulları ve adlandırılmış/liste enterpolasyonu dahil olmak üzere `vue-i18n`'in kendi mesaj sözdizimini çözümler. Intlayer'ın çoğullaştırma modeli için [numaralandırma içeriği](https://intlayer.org/tr/doc/concept/content/enumeration) bölümüne bakın.
380
+
381
+ </Question>
382
+
383
+ </FAQ>
233
384
 
234
385
  ## GitHub YILDIZLARI
235
386
 
236
387
  GitHub yıldızları, bir projenin popülaritesinin, topluluk güveninin ve uzun vadeli öneminin güçlü bir göstergesidir. Teknik kalitenin doğrudan bir ölçüsü olmasa da, kaç geliştiricinin projeyi yararlı bulduğunu, ilerlemesini takip ettiğini ve muhtemelen benimsediğini yansıtır. Bir projenin değerini tahmin etmek için yıldızlar, alternatifler arasındaki çekişmeyi karşılaştırmaya ve ekosistem büyümesine ilişkin içgörüler sağlamaya yardımcı olur.
237
388
 
238
- [![Yıldız Geçmişi Grafiği](https://api.star-history.com/svg?repos=intlify/vue-i18n&repos=aymericzip/intlayer&type=Date)](https://star-history.com/#intlify/vue-i18n&aymericzip/intlayer)
389
+ [![Yıldız Geçmişi Grafiği](https://api.star-history.com/chart?repos=intlify%2Fvue-i18n%2Caymericzip%2Fintlayer&type=date&legend=top-left)](https://star-history.com/#intlify/vue-i18n&aymericzip/intlayer)
239
390
 
240
391
  ## Sonuç
241
392
 
@@ -244,4 +395,15 @@ Hem **vue-i18n** hem de **Intlayer** Vue uygulamalarını iyi yerelleştirir. Fa
244
395
  - **Intlayer** ile, **modüler içerik**, **katı TS**, **derleme zamanı güvenliği**, **ağaç sallanan paketler** ve **yönlendirici/SEO/düzenleyici araçları** **kutudan çıkar**.
245
396
  - Ekibiniz çok yerel, bileşen odaklı bir Vue/Nuxt uygulamasında **bakım ve hızı** takdir ediyorsa, Intlayer bugün **en kapsamlı** deneyimi sunar.
246
397
 
247
- Daha fazla detay için ['Neden Intlayer?' dokümantasyonuna](https://intlayer.org/doc/why) bakın.
398
+ ## Daha fazla okuma
399
+
400
+ - [vue-i18n vs Intlayer benchmark](https://intlayer.org/tr/blog/vue-i18n-vs-intlayer-benchmark), the measured run behind the table above
401
+ - [vue-i18n vs @intlayer/vue-i18n](https://intlayer.org/tr/blog/vue-i18n-vs-intlayer-vue-i18n), the adapter on the same app
402
+ - [Is vue-i18n outdated?](https://intlayer.org/tr/blog/is-vue-i18n-outdated)
403
+ - [How to pick a Vue i18n library](https://intlayer.org/tr/blog/how-to-pick-vue-i18n-library)
404
+ - [Using Intlayer with vue-i18n](https://intlayer.org/tr/blog/intlayer-with-vue-i18n)
405
+ - [Vue benchmark report](https://intlayer.org/tr/doc/benchmark/vue)
406
+ - [Migration guide: vue-i18n to Intlayer](https://intlayer.org/tr/doc/migration/vue-i18n)
407
+ - [Bundle optimization](https://intlayer.org/tr/doc/concept/bundle-optimization) and [the Intlayer compiler](https://intlayer.org/tr/doc/compiler)
408
+
409
+ Refer to ['Why Intlayer?' doc](https://intlayer.org/tr/doc/why) for more details.