@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-01-20
3
- updatedAt: 2026-03-24
3
+ updatedAt: 2026-09-21
4
4
  title: HTML İçeriği
5
5
  description: Intlayer içinde HTML içeriğini nasıl tanımlayıp özel bileşenlerle kullanacağınızı öğrenin. Bu dokümantasyonu izleyerek çok dilli projenizde dinamik bileşen değiştirme ile zengin HTML benzeri içeriği entegre edin.
6
6
  keywords:
@@ -13,6 +13,8 @@ keywords:
13
13
  - React
14
14
  - Vue
15
15
  - Svelte
16
+ - Remix
17
+ - Astro
16
18
  - Solid
17
19
  - Angular
18
20
  slugs:
@@ -238,6 +240,83 @@ Render işlemi Intlayer'ın içerik sistemi tarafından otomatik olarak veya öz
238
240
  ```
239
241
 
240
242
  </Tab>
243
+ <Tab label="Remix" value="remix">
244
+ Remix 3'te, HTML düğümleri bir HTML dizesine çözümlenir. Bunu Remix JSX'in `innerHTML` özelliğiyle veya bir `html-template` görünümünde `html.raw` ile enjekte edin.
245
+
246
+ ```tsx fileName="src/views/home.tsx"
247
+ import { useIntlayer } from "remix-intlayer";
248
+
249
+ export const HomePage = () => () => {
250
+ const { myHtmlContent } = useIntlayer("app");
251
+
252
+ return <div innerHTML={myHtmlContent.value} />;
253
+ };
254
+ ```
255
+
256
+ ```ts fileName="src/views/home.ts"
257
+ import { html } from "remix/html-template";
258
+ import { useIntlayer } from "remix-intlayer";
259
+
260
+ export const renderHomePage = () => {
261
+ const { myHtmlContent } = useIntlayer("app");
262
+
263
+ return html.raw`<div>${myHtmlContent.value}</div>`;
264
+ };
265
+ ```
266
+
267
+ > Remix varsayılan olarak enterpole edilmiş değerleri kaçırır. `innerHTML` ve `html.raw`, bir HTML dizesinin ihtiyaç duyduğu iki istisnadır.
268
+
269
+ Etiketleri geçersiz kılmak veya özel bileşenleri eşlemek için `.use()` yöntemini kullanın. Geçersiz kılmalar, bir HTML dizesi döndüren fonksiyonlardır:
270
+
271
+ ```tsx
272
+ <div
273
+ innerHTML={myHtmlContent.use({
274
+ p: ({ children }) => `<p class="prose">${children}</p>`,
275
+ CustomLink: ({ children }) => `<a href="/details">${children}</a>`,
276
+ })}
277
+ />
278
+ ```
279
+
280
+ </Tab>
281
+ <Tab label="Astro" value="astro">
282
+ Astro'da HTML düğümleri bir HTML dizesine çözümlenir. Bunu şablondaki `set:html` yönergesiyle veya bir istemci `<script>` içindeki `innerHTML` ile enjekte edin.
283
+
284
+ ```astro fileName="src/pages/index.astro"
285
+ ---
286
+ import { useIntlayer } from "astro-intlayer";
287
+
288
+ const { myHtmlContent } = useIntlayer("app");
289
+ ---
290
+
291
+ <div set:html={myHtmlContent.value} />
292
+ ```
293
+
294
+ ```astro fileName="src/components/Content.astro"
295
+ <div id="content"></div>
296
+
297
+ <script>
298
+ import { useIntlayer } from "astro-intlayer";
299
+
300
+ const { myHtmlContent } = useIntlayer("app");
301
+
302
+ document.querySelector("#content")!.innerHTML = myHtmlContent.value;
303
+ </script>
304
+ ```
305
+
306
+ > Astro varsayılan olarak `{ifadeler}`i kaçırır. `set:html`, bir HTML dizesinin ihtiyaç duyduğu istisnadır.
307
+
308
+ Etiketleri geçersiz kılmak veya özel bileşenleri eşlemek için `.use()` yöntemini kullanın. Geçersiz kılmalar, bir HTML dizesi döndüren fonksiyonlardır:
309
+
310
+ ```astro
311
+ <div
312
+ set:html={myHtmlContent.use({
313
+ p: ({ children }) => `<p class="prose">${children}</p>`,
314
+ CustomLink: ({ children }) => `<a href="/details">${children}</a>`,
315
+ })}
316
+ />
317
+ ```
318
+
319
+ </Tab>
241
320
  </Tabs>
242
321
 
243
322
  ## `HTMLProvider` ile Genel Yapılandırma
@@ -473,6 +552,41 @@ HTML render'lamasını tüm uygulamanız için global olarak yapılandırabilirs
473
552
  > HTML oluşturucunuzu dinamik olarak içe aktarmak, uygulamanızın bundle boyutunu azaltmanın iyi bir yoludur.
474
553
 
475
554
  </Tab>
555
+ <Tab label="Remix" value="remix">
556
+
557
+ Remix'in bir sağlayıcı tutacak bileşen ağacı yoktur, bu nedenle yapılandırma sunucu başlangıcında tekil (singleton) olarak bir kez kurulur. `useHTMLRenderer()` tarafından döndürülen oluşturucuyu yapılandırır. `useIntlayer` tarafından döndürülen `html` düğümleri olduğu gibi işlenir; düğüm başına etiketlerini `.use()` ile geçersiz kılın.
558
+
559
+ ```typescript fileName="src/router.ts"
560
+ import { installIntlayerHTML } from "remix-intlayer/html";
561
+
562
+ installIntlayerHTML({
563
+ renderHTML: (html) => html.replaceAll("<p>", '<p class="prose">'),
564
+ });
565
+ ```
566
+
567
+ > Oluşturucunun kendisini tembelce yüklemek için `installIntlayerHTMLDynamic(async () => …)` kullanın; yükleyici yalnızca ilk çağrıda çalışır.
568
+
569
+ </Tab>
570
+ <Tab label="Astro" value="astro">
571
+
572
+ Astro'nun bir sağlayıcı tutacak bileşen ağacı yoktur, bu nedenle yapılandırma ara yazılımda (sunucu) ve bir istemci `<script>` (tarayıcı) içinde tekil (singleton) olarak bir kez kurulur. `useHTMLRenderer()` tarafından döndürülen oluşturucuyu yapılandırır. `useIntlayer` tarafından döndürülen `html` düğümleri olduğu gibi işlenir; düğüm başına etiketlerini `.use()` ile geçersiz kılın.
573
+
574
+ ```typescript fileName="src/middleware.ts"
575
+ import { installIntlayerHTML } from "astro-intlayer/html";
576
+ import { defineMiddleware } from "astro:middleware";
577
+
578
+ // Sunucu başladığında bir kez çalışır; Intlayer ara yazılımının kendisi
579
+ // bu dosyadan önce entegrasyon tarafından kaydedilir.
580
+ installIntlayerHTML({
581
+ renderHTML: (html) => html.replaceAll("<p>", '<p class="prose">'),
582
+ });
583
+
584
+ export const onRequest = defineMiddleware((_context, next) => next());
585
+ ```
586
+
587
+ > Oluşturucunun kendisini tembelce yüklemek için `installIntlayerHTMLDynamic(async () => …)` kullanın; yükleyici yalnızca ilk çağrıda çalışır.
588
+
589
+ </Tab>
476
590
  </Tabs>
477
591
 
478
592
  ### Manuel Renderlama ve Gelişmiş Araçlar
@@ -645,15 +759,69 @@ Belirli bileşenlerle bir HTML dizesi oluşturun.
645
759
  ```
646
760
 
647
761
  </Tab>
762
+ <Tab label="Remix" value="remix">
763
+ #### `useHTMLRenderer()` Hook
764
+
765
+ `installIntlayerHTML()` tarafından önceden yapılandırılmış bir işleyici fonksiyonu alın. Bir HTML dizesi döndürür.
766
+
767
+ ```tsx
768
+ import { useHTMLRenderer } from "remix-intlayer/html";
769
+
770
+ const renderHTML = useHTMLRenderer();
771
+
772
+ return <div innerHTML={renderHTML("<p>Hello <strong>World</strong></p>")} />;
773
+ ```
774
+
775
+ #### `renderHTML()` Yardımcı Aracı
776
+
777
+ Genel yapılandırmayı yok sayan bağımsız yardımcı araç.
778
+
779
+ ```tsx
780
+ import { renderHTML } from "remix-intlayer/html";
781
+
782
+ const html = renderHTML("<p>Hello</p>");
783
+ ```
784
+
785
+ </Tab>
786
+ <Tab label="Astro" value="astro">
787
+ #### `useHTMLRenderer()` Hook
788
+
789
+ `installIntlayerHTML()` tarafından önceden yapılandırılmış bir işleyici fonksiyonu alın. Bir HTML dizesi döndürür.
790
+
791
+ ```astro
792
+ ---
793
+ import { useHTMLRenderer } from "astro-intlayer/html";
794
+
795
+ const renderHTML = useHTMLRenderer();
796
+ ---
797
+
798
+ <div set:html={renderHTML("<p>Hello <strong>World</strong></p>")} />
799
+ ```
800
+
801
+ #### `renderHTML()` Yardımcı Aracı
802
+
803
+ Genel yapılandırmayı yok sayan bağımsız yardımcı araç.
804
+
805
+ ```astro
806
+ ---
807
+ import { renderHTML } from "astro-intlayer/html";
808
+
809
+ const html = renderHTML("<p>Hello</p>");
810
+ ---
811
+
812
+ <div set:html={html} />
813
+ ```
814
+
815
+ </Tab>
648
816
  </Tabs>
649
817
 
650
818
  ## Seçenekler Referansı
651
819
 
652
820
  Bu seçenekler `HTMLProvider`, `HTMLRenderer`, `useHTMLRenderer` ve `renderHTML`'e iletilebilir.
653
821
 
654
- | Seçenek | Tür | Varsayılan | Açıklama |
655
- | :----------- | :-------------------- | :--------- | :-------------------------------------------------------------------------------------------------------------------------- |
656
- | `components` | `Record<string, any>` | `{}` | HTML etiketlerini veya özel bileşen isimlerini bileşenlere eşleyen bir harita. |
657
- | `renderHTML` | `Function` | `null` | Varsayılan HTML ayrıştırıcısını tamamen değiştirmek için özel bir render fonksiyonu (Sadece Vue/Svelte sağlayıcıları için). |
822
+ | Seçenek | Tür | Varsayılan | Açıklama |
823
+ | :----------- | :-------------------- | :--------- | :------------------------------------------------------------------------------------------------------------------------------- |
824
+ | `components` | `Record<string, any>` | `{}` | HTML etiketlerini veya özel bileşen isimlerini bileşenlere eşleyen bir harita. |
825
+ | `renderHTML` | `Function` | `null` | Varsayılan HTML ayrıştırıcısını tamamen değiştirmek için özel bir render fonksiyonu (Vue, Svelte, Remix ve Astro sağlayıcıları). |
658
826
 
659
827
  > Not: React ve Preact için standart HTML etiketleri otomatik olarak sağlanır. Bunları geçersiz kılmak veya özel bileşenler eklemek istiyorsanız yalnızca `components` prop'unu geçirmeniz yeterlidir.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-02-07
3
- updatedAt: 2026-05-19
3
+ updatedAt: 2026-09-21
4
4
  title: Markdown
5
5
  description: Intlayer ile çok dilli web sitenizde Markdown içeriğini nasıl bildireceğinizi ve kullanacağınızı öğrenin. Projenize Markdown'ı sorunsuz bir şekilde entegre etmek için bu çevrimiçi belgelerdeki adımları izleyin.
6
6
  keywords:
@@ -11,6 +11,8 @@ keywords:
11
11
  - Next.js
12
12
  - JavaScript
13
13
  - React
14
+ - Remix
15
+ - Astro
14
16
  slugs:
15
17
  - doc
16
18
  - concept
@@ -487,6 +489,111 @@ Markdown oluşturma **MDX**'i destekler — Markdown'ınızın içinde doğrudan
487
489
  ```
488
490
 
489
491
  </Tab>
492
+ <Tab label="Remix" value="remix">
493
+ Remix 3'te Markdown düğümleri sunucuda bir HTML dizesine işlenir. Bunu Remix JSX'in `innerHTML` özelliğiyle veya bir `html-template` görünümünde `html.raw` ile enjekte edin.
494
+
495
+ ```tsx fileName="src/views/home.tsx"
496
+ import { useIntlayer } from "remix-intlayer";
497
+
498
+ export const HomePage = () => () => {
499
+ const { myMarkdownContent } = useIntlayer("app");
500
+
501
+ return <div innerHTML={myMarkdownContent.value} />;
502
+ };
503
+ ```
504
+
505
+ ```ts fileName="src/views/home.ts"
506
+ import { html } from "remix/html-template";
507
+ import { useIntlayer } from "remix-intlayer";
508
+
509
+ export const renderHomePage = () => {
510
+ const { myMarkdownContent } = useIntlayer("app");
511
+
512
+ return html.raw`<div>${myMarkdownContent.value}</div>`;
513
+ };
514
+ ```
515
+
516
+ > Remix varsayılan olarak enterpole edilmiş değerleri kaçırır. `innerHTML` ve `html.raw`, işlenmiş bir Markdown dizesinin ihtiyaç duyduğu iki istisnadır.
517
+
518
+ Ayrıca `.use()` yöntemini kullanarak belirli etiketler için yerel geçersiz kılmalar sağlayabilirsiniz. Geçersiz kılmalar, bir HTML dizesi döndüren fonksiyonlardır:
519
+
520
+ ```tsx
521
+ <div
522
+ innerHTML={myMarkdownContent.use({
523
+ h1: ({ children }) => `<h1 class="text-3xl font-bold">${children}</h1>`,
524
+ })}
525
+ />
526
+ ```
527
+
528
+ `.value` işlenmiş HTML dizesidir, `String()` / `.toString()` ise ham Markdown kaynağını döndürür:
529
+
530
+ ```tsx
531
+ myMarkdownContent.value // "<h1>…</h1>"
532
+ String(myMarkdownContent) // "# …"
533
+ myMarkdownContent.toString() // "# …"
534
+ ```
535
+
536
+ Ve markdown meta verilerinize şu şekilde erişebilirsiniz:
537
+
538
+ ```tsx
539
+ myMarkdownContent.metadata
540
+ myMarkdownContent.metadata.title
541
+ ```
542
+
543
+ </Tab>
544
+ <Tab label="Astro" value="astro">
545
+ Astro'da Markdown düğümleri bir HTML dizesine işlenir. Bunu şablondaki `set:html` yönergesiyle veya bir istemci `<script>` içindeki `innerHTML` ile enjekte edin.
546
+
547
+ ```astro fileName="src/pages/index.astro"
548
+ ---
549
+ import { useIntlayer } from "astro-intlayer";
550
+
551
+ const { myMarkdownContent } = useIntlayer("app");
552
+ ---
553
+
554
+ <div set:html={myMarkdownContent.value} />
555
+ ```
556
+
557
+ ```astro fileName="src/components/Content.astro"
558
+ <div id="content"></div>
559
+
560
+ <script>
561
+ import { useIntlayer } from "astro-intlayer";
562
+
563
+ const { myMarkdownContent } = useIntlayer("app");
564
+
565
+ document.querySelector("#content")!.innerHTML = myMarkdownContent.value;
566
+ </script>
567
+ ```
568
+
569
+ > Astro varsayılan olarak `{ifadeler}`i kaçırır. `set:html`, işlenmiş bir Markdown dizesinin ihtiyaç duyduğu istisnadır.
570
+
571
+ Ayrıca `.use()` yöntemini kullanarak belirli etiketler için yerel geçersiz kılmalar sağlayabilirsiniz. Geçersiz kılmalar, bir HTML dizesi döndüren fonksiyonlardır:
572
+
573
+ ```astro
574
+ <div
575
+ set:html={myMarkdownContent.use({
576
+ h1: ({ children }) => `<h1 class="text-3xl font-bold">${children}</h1>`,
577
+ })}
578
+ />
579
+ ```
580
+
581
+ `.value` işlenmiş HTML dizesidir, `String()` / `.toString()` ise ham Markdown kaynağını döndürür:
582
+
583
+ ```astro
584
+ myMarkdownContent.value // "<h1>…</h1>"
585
+ String(myMarkdownContent) // "# …"
586
+ myMarkdownContent.toString() // "# …"
587
+ ```
588
+
589
+ Ve markdown meta verilerinize şu şekilde erişebilirsiniz:
590
+
591
+ ```astro
592
+ myMarkdownContent.metadata
593
+ myMarkdownContent.metadata.title
594
+ ```
595
+
596
+ </Tab>
490
597
  </Tabs>
491
598
 
492
599
  ### 2. Yardımcı Araçlar (Yalnızca Markdown Dizeleri)
@@ -698,6 +805,60 @@ Bu yardımcı programlar **yalnızca ham Markdown dizelerini** oluşturur ve `us
698
805
  ```
699
806
 
700
807
  </Tab>
808
+ <Tab label="Remix" value="remix">
809
+ #### `useMarkdownRenderer()` Hook
810
+
811
+ `installIntlayerMarkdown()` tarafından önceden yapılandırılmış bir işleyici fonksiyonu alın. Bir HTML dizesi döndürür.
812
+
813
+ ```tsx
814
+ import { useMarkdownRenderer } from "remix-intlayer/markdown";
815
+
816
+ const renderMarkdown = useMarkdownRenderer({ forceBlock: true });
817
+
818
+ return <div innerHTML={renderMarkdown("# My Title")} />;
819
+ ```
820
+
821
+ #### `renderMarkdown()` Yardımcı Aracı
822
+
823
+ Genel yapılandırmayı yok sayan bağımsız yardımcı araç.
824
+
825
+ ```tsx
826
+ import { renderMarkdown } from "remix-intlayer/markdown";
827
+
828
+ const html = renderMarkdown("# My Title", { forceBlock: true });
829
+ ```
830
+
831
+ </Tab>
832
+ <Tab label="Astro" value="astro">
833
+ #### `useMarkdownRenderer()` Hook
834
+
835
+ `installIntlayerMarkdown()` tarafından önceden yapılandırılmış bir işleyici fonksiyonu alın. Bir HTML dizesi döndürür.
836
+
837
+ ```astro
838
+ ---
839
+ import { useMarkdownRenderer } from "astro-intlayer/markdown";
840
+
841
+ const renderMarkdown = useMarkdownRenderer({ forceBlock: true });
842
+ ---
843
+
844
+ <div set:html={renderMarkdown("# My Title")} />
845
+ ```
846
+
847
+ #### `renderMarkdown()` Yardımcı Aracı
848
+
849
+ Genel yapılandırmayı yok sayan bağımsız yardımcı araç.
850
+
851
+ ```astro
852
+ ---
853
+ import { renderMarkdown } from "astro-intlayer/markdown";
854
+
855
+ const html = renderMarkdown("# My Title", { forceBlock: true });
856
+ ---
857
+
858
+ <div set:html={html} />
859
+ ```
860
+
861
+ </Tab>
701
862
  </Tabs>
702
863
 
703
864
  ## `MarkdownProvider` ile Global Yapılandırma
@@ -997,6 +1158,73 @@ Bu yardımcı programlar **yalnızca ham Markdown dizelerini** oluşturur ve `us
997
1158
  > Markdown oluşturucunuzu dinamik olarak içe aktarmak, uygulamanızın bundle boyutunu azaltmanın harika bir yoludur.
998
1159
 
999
1160
  </Tab>
1161
+ <Tab label="Remix" value="remix">
1162
+
1163
+ Remix'in bir sağlayıcı tutacak bileşen ağacı yoktur, bu nedenle yapılandırma sunucu başlangıcında tekil (singleton) olarak bir kez kurulur. `useMarkdownRenderer()` tarafından döndürülen oluşturucuyu yapılandırır. `useIntlayer` tarafından döndürülen `md` düğümleri varsayılan derleyiciyle işlenir; düğüm başına etiketlerini `.use()` ile geçersiz kılın.
1164
+
1165
+ ```typescript fileName="src/router.ts"
1166
+ import { installIntlayerMarkdown } from "remix-intlayer/markdown";
1167
+
1168
+ installIntlayerMarkdown({
1169
+ forceBlock: true,
1170
+ components: {
1171
+ h1: ({ children }) => `<h1 class="text-2xl font-bold">${children}</h1>`,
1172
+ },
1173
+ });
1174
+ ```
1175
+
1176
+ Ayrıca kendi markdown işleyicinizi de kullanabilirsiniz:
1177
+
1178
+ ```typescript fileName="src/router.ts"
1179
+ import { installIntlayerMarkdown } from "remix-intlayer/markdown";
1180
+
1181
+ installIntlayerMarkdown({
1182
+ renderMarkdown: async (md) => {
1183
+ const { marked } = await import("marked");
1184
+ return marked(md) as string;
1185
+ },
1186
+ });
1187
+ ```
1188
+
1189
+ > Oluşturucunun kendisini tembelce yüklemek için `installIntlayerMarkdownDynamic(async () => …)` kullanın; yükleyici yalnızca ilk çağrıda çalışır.
1190
+
1191
+ </Tab>
1192
+ <Tab label="Astro" value="astro">
1193
+
1194
+ Astro'nun bir sağlayıcı tutacak bileşen ağacı yoktur, bu nedenle yapılandırma ara yazılımda (sunucu) ve bir istemci `<script>` (tarayıcı) içinde tekil (singleton) olarak bir kez kurulur. `useMarkdownRenderer()` tarafından döndürülen oluşturucuyu yapılandırır. `useIntlayer` tarafından döndürülen `md` düğümleri varsayılan derleyiciyle işlenir; düğüm başına etiketlerini `.use()` ile geçersiz kılın.
1195
+
1196
+ ```typescript fileName="src/middleware.ts"
1197
+ import { installIntlayerMarkdown } from "astro-intlayer/markdown";
1198
+ import { defineMiddleware } from "astro:middleware";
1199
+
1200
+ // Sunucu başladığında bir kez çalışır; Intlayer ara yazılımının kendisi
1201
+ // bu dosyadan önce entegrasyon tarafından kaydedilir.
1202
+ installIntlayerMarkdown({
1203
+ forceBlock: true,
1204
+ components: {
1205
+ h1: ({ children }) => `<h1 class="text-2xl font-bold">${children}</h1>`,
1206
+ },
1207
+ });
1208
+
1209
+ export const onRequest = defineMiddleware((_context, next) => next());
1210
+ ```
1211
+
1212
+ Ayrıca kendi markdown işleyicinizi de kullanabilirsiniz:
1213
+
1214
+ ```typescript fileName="src/middleware.ts"
1215
+ import { installIntlayerMarkdown } from "astro-intlayer/markdown";
1216
+
1217
+ installIntlayerMarkdown({
1218
+ renderMarkdown: async (md) => {
1219
+ const { marked } = await import("marked");
1220
+ return marked(md) as string;
1221
+ },
1222
+ });
1223
+ ```
1224
+
1225
+ > Oluşturucunun kendisini tembelce yüklemek için `installIntlayerMarkdownDynamic(async () => …)` kullanın; yükleyici yalnızca ilk çağrıda çalışır.
1226
+
1227
+ </Tab>
1000
1228
  </Tabs>
1001
1229
 
1002
1230
  ## Suspense
@@ -1325,6 +1553,40 @@ Serileştirilebilir bir AST (`ParsedMarkdown` nesnesi) oluşturmak için sunucu
1325
1553
  ```
1326
1554
 
1327
1555
  </Tab>
1556
+ <Tab label="Remix" value="remix">
1557
+
1558
+ Remix 3 sunucuda işler ve HTML akışı sağlar, bu nedenle istemciye hiçbir AST'nin geçmesi gerekmez. Bir kez ayrıştırın ve sayfanın oluşturulduğu her yerde AST'yi işleyin:
1559
+
1560
+ ```tsx fileName="src/views/article.tsx"
1561
+ import { parseMarkdown, renderMarkdown } from "remix-intlayer/markdown";
1562
+
1563
+ // 1. Markdown'ı serileştirilebilir bir AST'ye ayrıştırın (örneğin modül yüklenirken bir kez)
1564
+ const ast = parseMarkdown("## My title \n\nLorem Ipsum");
1565
+
1566
+ export const ArticlePage = () => () => (
1567
+ // 2. AST'yi işleyin: işleyici ham bir dizeyi veya ayrıştırılmış AST'yi kabul eder
1568
+ <article innerHTML={renderMarkdown(ast)} />
1569
+ );
1570
+ ```
1571
+
1572
+ </Tab>
1573
+ <Tab label="Astro" value="astro">
1574
+
1575
+ Astro sayfaları sunucuda işlenir, bu nedenle istemciye hiçbir AST'nin geçmesi gerekmez. Frontmatter'daki Markdown'ı ayrıştırın ve `set:html` ile işleyin:
1576
+
1577
+ ```astro fileName="src/pages/article.astro"
1578
+ ---
1579
+ import { parseMarkdown, renderMarkdown } from "astro-intlayer/markdown";
1580
+
1581
+ // 1. Markdown'ı serileştirilebilir bir AST'ye ayrıştırın
1582
+ const ast = parseMarkdown("## My title \n\nLorem Ipsum");
1583
+ ---
1584
+
1585
+ <!-- 2. AST'yi işleyin: işleyici ham bir dizeyi veya ayrıştırılmış AST'yi kabul eder -->
1586
+ <article set:html={renderMarkdown(ast)} />
1587
+ ```
1588
+
1589
+ </Tab>
1328
1590
  </Tabs>
1329
1591
 
1330
1592
  Bu model, Markdown ayrıştırma mantığının tamamen sunucuda çalıştırılmasını sağlayarak istemci tarafındaki yürütme süresini önemli ölçüde azaltır ve ilk hidrasyon hızını artırır.
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-04-18
3
- updatedAt: 2026-05-31
3
+ updatedAt: 2026-09-21
4
4
  title: "Analog i18n - Uygulamanızı çevirmek için eksiksiz kılavuz"
5
5
  description: "Artık i18next yok. 2026 yılı için çok dilli (i18n) Analog uygulaması oluşturma kılavuzu. Yapay zeka ajanlarıyla çevirin ve bundle boyutu, SEO ve performansı optimize edin."
6
6
  keywords:
@@ -157,6 +157,28 @@ bun add intlayer angular-intlayer vite-intlayer
157
157
  </Step>
158
158
  <Step number={2} title="Projenizin Yapılandırılması">
159
159
 
160
+ ### Mimari
161
+
162
+ Bu mimaride, `angular-intlayer` her bileşenin ve dosya tabanlı sayfanın içeriğini `useIntlayer` sinyali aracılığıyla okuyabilmesi için `src/app/app.config.ts` içinde kaydedilen `provideIntlayer()` işlevini sağlar. Analog, Vite üzerine inşa edilmiştir; bu nedenle `vite-intlayer` kütüphanesinin `intlayer()` eklentisi, içerik bildirimlerinizi izlemek, yeniden derlemek ve yerel ayar proxy'sini çalıştırmak için `vite.config.ts` dosyasında `analog()` eklentisinin yanına eklenir. İçerik bildirimleri `src/app/` içinde bileşenlerin ve sayfaların yanında yer alır.
163
+
164
+ ```bash
165
+ .
166
+ ├── src
167
+ │ ├── app
168
+ │ │ ├── pages
169
+ │ │ │ └── index.page.ts # File-based route using useIntlayer
170
+ │ │ ├── app.config.ts # Application config with provideIntlayer()
171
+ │ │ ├── app.content.ts # App content declaration
172
+ │ │ └── locale-switcher.component.ts
173
+ │ └── main.ts
174
+ ├── intlayer.config.ts
175
+ ├── package.json
176
+ ├── tsconfig.json
177
+ └── vite.config.ts # analog() and intlayer() Vite plugins
178
+ ```
179
+
180
+ ### Yapılandırma
181
+
160
182
  Uygulamanızın dillerini yapılandırmak için bir yapılandırma dosyası oluşturun:
161
183
 
162
184
  ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-04-18
3
- updatedAt: 2026-05-31
3
+ updatedAt: 2026-09-21
4
4
  title: "Angular 19 i18n - Uygulamanızı çevirmek için eksiksiz kılavuz"
5
5
  description: "Artık i18next yok. 2026 yılı için çok dilli (i18n) Angular 19 uygulaması oluşturma kılavuzu. Yapay zeka ajanlarıyla çevirin ve bundle boyutu, SEO ve performansı optimize edin."
6
6
  keywords:
@@ -164,6 +164,29 @@ bun add @angular-builders/custom-webpack --dev
164
164
  </Step>
165
165
  <Step number={2} title="Projenizin Yapılandırılması">
166
166
 
167
+ ### Mimari
168
+
169
+ Bu mimaride, `angular-intlayer` her bileşenin içeriğini `useIntlayer` sinyali aracılığıyla okuyabilmesi için `src/app/app.config.ts` içinde kaydedilen `provideIntlayer()` işlevini sağlar. Angular CLI özel Webpack derleyicisine geçirilir ve `webpack.config.ts`, içerik bildirimlerinizi izlemek ve yeniden derlemek için Intlayer eklentisini derleme sürecine dahil eder. İçerik bildirimleri `src/app/` içinde bileşenlerin yanında yer alır.
170
+
171
+ ```bash
172
+ .
173
+ ├── src
174
+ │ ├── app
175
+ │ │ ├── app.component.html # Root template reading the content signal
176
+ │ │ ├── app.component.ts # Root component using useIntlayer
177
+ │ │ ├── app.config.ts # Application config with provideIntlayer()
178
+ │ │ ├── app.content.ts # App content declaration
179
+ │ │ └── locale-switcher.component.ts
180
+ │ └── main.ts
181
+ ├── angular.json # Custom Webpack builder for build and serve
182
+ ├── intlayer.config.ts
183
+ ├── package.json
184
+ ├── tsconfig.json
185
+ └── webpack.config.ts # mergeConfig() from angular-intlayer/webpack
186
+ ```
187
+
188
+ ### Yapılandırma
189
+
167
190
  Uygulamanızın dillerini yapılandırmak için bir yapılandırma dosyası oluşturun:
168
191
 
169
192
  ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2025-04-18
3
- updatedAt: 2026-05-31
3
+ updatedAt: 2026-09-21
4
4
  title: "Angular 22 i18n - Uygulamanızı çevirmek için eksiksiz kılavuz"
5
5
  description: "Artık i18next yok. 2026 yılı için çok dilli (i18n) Angular 22 uygulaması oluşturma kılavuzu. Yapay zeka ajanlarıyla çevirin ve bundle boyutu, SEO ve performansı optimize edin."
6
6
  keywords:
@@ -166,6 +166,29 @@ bun add @angular-builders/custom-esbuild --dev
166
166
  </Step>
167
167
  <Step number={2} title="Projenizin Yapılandırması">
168
168
 
169
+ ### Mimari
170
+
171
+ Bu mimaride, `angular-intlayer` her bileşenin içeriğini `useIntlayer` sinyali aracılığıyla okuyabilmesi için `src/app/app.config.ts` içinde kaydedilen `provideIntlayer()` işlevini sağlar. Angular CLI özel esbuild derleyicisine geçirilir ve `esbuild.plugins.ts`, içerik bildirimlerinizi izlemek ve yeniden derlemek için Intlayer eklentisini derleme sürecine kaydeder. İçerik bildirimleri `src/app/` içinde bileşenlerin yanında yer alır.
172
+
173
+ ```bash
174
+ .
175
+ ├── src
176
+ │ ├── app
177
+ │ │ ├── app.component.html # Root template reading the content signal
178
+ │ │ ├── app.component.ts # Root component using useIntlayer
179
+ │ │ ├── app.config.ts # Application config with provideIntlayer()
180
+ │ │ ├── app.content.ts # App content declaration
181
+ │ │ └── locale-switcher.component.ts
182
+ │ └── main.ts
183
+ ├── angular.json # Custom esbuild builder for build and serve
184
+ ├── esbuild.plugins.ts # intlayerEsbuildPlugin() from angular-intlayer/esbuild
185
+ ├── intlayer.config.ts
186
+ ├── package.json
187
+ └── tsconfig.json
188
+ ```
189
+
190
+ ### Yapılandırma
191
+
169
192
  Uygulamanızın dillerini yapılandırmak için bir yapılandırma dosyası oluşturun:
170
193
 
171
194
  ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  createdAt: 2024-03-07
3
- updatedAt: 2026-09-20
3
+ updatedAt: 2026-09-21
4
4
  title: "Astro i18n - Uygulamanızı çevirmek için eksiksiz kılavuz"
5
5
  description: "Artık i18next yok. 2026 yılı için çok dilli (i18n) Astro uygulaması oluşturma kılavuzu. Yapay zeka ajanlarıyla çevirin ve bundle boyutu, SEO ve performansı optimize edin."
6
6
  keywords:
@@ -160,6 +160,29 @@ bun add intlayer astro-intlayer
160
160
  </Step>
161
161
  <Step number={2} title="Projenizi Yapılandırın">
162
162
 
163
+ ### Mimari
164
+
165
+ Bu mimaride, `astro.config.ts` içinde tanımlanan `intlayer()` entegrasyonu sözlüklerinizi derler ve her isteğin yerel ayarını (locale) çözümleyip `Astro.locals.intlayer` üzerinde sunan bir ara yazılım (middleware) ekler. Sayfalar `src/pages/[...locale]/` rest segmenti altında yer alır, bu sayede varsayılan yerel ayar ön ek olmadan sunulurken diğer tüm yerel ayarlar kendilerine ait özel bir URL alır. `.astro` dosyaları içeriği `astro-intlayer` kütüphanesinin `useIntlayer` / `useLocale` kancalarıyla okur ve içerik bildirimleri `src/` içinde bileşenlerinizin yanında yer alır.
166
+
167
+ ```bash
168
+ .
169
+ ├── src
170
+ │ ├── app.content.tsx # App content declaration
171
+ │ ├── components
172
+ │ │ └── LocaleSwitcher.astro # Locale switcher component
173
+ │ └── pages
174
+ │ ├── [...locale]
175
+ │ │ └── index.astro # Localized page (rest param also serves the default locale)
176
+ │ ├── robots.txt.ts # robots.txt endpoint
177
+ │ └── sitemap.xml.ts # Localized sitemap endpoint
178
+ ├── astro.config.ts # Astro config with the intlayer() integration
179
+ ├── intlayer.config.ts
180
+ ├── package.json
181
+ └── tsconfig.json
182
+ ```
183
+
184
+ ### Yapılandırma
185
+
163
186
  Uygulamanızın dillerini tanımlamak için bir konfigürasyon dosyası oluşturun:
164
187
 
165
188
  ```typescript fileName="intlayer.config.ts"