@intlayer/docs 9.4.0 → 9.4.2

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 (1198) hide show
  1. package/README.md +1 -1
  2. package/blog/ar/hreflang_guide_multilingual_seo.md +317 -0
  3. package/blog/ar/intlayer_with_i18next.md +0 -2
  4. package/blog/ar/intlayer_with_next-i18next.md +0 -4
  5. package/blog/ar/intlayer_with_vue-i18n.md +0 -4
  6. package/blog/de/hreflang_guide_multilingual_seo.md +314 -0
  7. package/blog/de/intlayer_with_vue-i18n.md +0 -4
  8. package/blog/en/hreflang_guide_multilingual_seo.md +314 -0
  9. package/blog/en/intlayer_with_i18next.md +0 -2
  10. package/blog/en/intlayer_with_next-i18next.md +0 -2
  11. package/blog/en/intlayer_with_next-intl.md +0 -2
  12. package/blog/en/intlayer_with_react-intl.md +0 -2
  13. package/blog/en/intlayer_with_vue-i18n.md +0 -2
  14. package/blog/en-GB/hreflang_guide_multilingual_seo.md +314 -0
  15. package/blog/es/hreflang_guide_multilingual_seo.md +314 -0
  16. package/blog/fr/hreflang_guide_multilingual_seo.md +315 -0
  17. package/blog/hi/hreflang_guide_multilingual_seo.md +323 -0
  18. package/blog/hi/intlayer_with_i18next.md +0 -2
  19. package/blog/hi/intlayer_with_next-i18next.md +0 -4
  20. package/blog/hi/intlayer_with_vue-i18n.md +0 -4
  21. package/blog/id/hreflang_guide_multilingual_seo.md +314 -0
  22. package/blog/id/intlayer_with_i18next.md +0 -2
  23. package/blog/id/intlayer_with_next-i18next.md +0 -4
  24. package/blog/id/intlayer_with_vue-i18n.md +0 -4
  25. package/blog/it/hreflang_guide_multilingual_seo.md +315 -0
  26. package/blog/it/intlayer_with_i18next.md +0 -2
  27. package/blog/it/intlayer_with_next-i18next.md +0 -4
  28. package/blog/it/intlayer_with_vue-i18n.md +0 -4
  29. package/blog/ja/hreflang_guide_multilingual_seo.md +320 -0
  30. package/blog/ko/hreflang_guide_multilingual_seo.md +314 -0
  31. package/blog/ko/intlayer_with_i18next.md +0 -2
  32. package/blog/ko/intlayer_with_next-i18next.md +0 -4
  33. package/blog/ko/intlayer_with_vue-i18n.md +0 -4
  34. package/blog/pl/hreflang_guide_multilingual_seo.md +316 -0
  35. package/blog/pt/hreflang_guide_multilingual_seo.md +314 -0
  36. package/blog/pt/intlayer_with_i18next.md +0 -2
  37. package/blog/pt/intlayer_with_next-i18next.md +0 -4
  38. package/blog/pt/intlayer_with_vue-i18n.md +0 -4
  39. package/blog/ru/hreflang_guide_multilingual_seo.md +314 -0
  40. package/blog/tr/hreflang_guide_multilingual_seo.md +314 -0
  41. package/blog/tr/intlayer_with_i18next.md +0 -2
  42. package/blog/tr/intlayer_with_next-i18next.md +0 -4
  43. package/blog/tr/intlayer_with_vue-i18n.md +0 -4
  44. package/blog/uk/hreflang_guide_multilingual_seo.md +314 -0
  45. package/blog/uk/intlayer_with_i18next.md +0 -2
  46. package/blog/uk/intlayer_with_next-i18next.md +0 -2
  47. package/blog/uk/intlayer_with_next-intl.md +0 -2
  48. package/blog/uk/intlayer_with_react-intl.md +0 -2
  49. package/blog/uk/intlayer_with_vue-i18n.md +0 -2
  50. package/blog/vi/hreflang_guide_multilingual_seo.md +314 -0
  51. package/blog/vi/intlayer_with_i18next.md +0 -2
  52. package/blog/vi/intlayer_with_next-i18next.md +0 -4
  53. package/blog/vi/intlayer_with_vue-i18n.md +0 -4
  54. package/blog/zh/hreflang_guide_multilingual_seo.md +314 -0
  55. package/blog/zh/intlayer_with_i18next.md +0 -2
  56. package/blog/zh/intlayer_with_next-i18next.md +0 -2
  57. package/blog/zh/intlayer_with_next-intl.md +0 -2
  58. package/blog/zh/intlayer_with_react-intl.md +0 -2
  59. package/blog/zh/intlayer_with_vue-i18n.md +0 -2
  60. package/dist/cjs/common.cjs +29 -6
  61. package/dist/cjs/common.cjs.map +1 -1
  62. package/dist/cjs/generated/blog.entry.cjs +20 -0
  63. package/dist/cjs/generated/blog.entry.cjs.map +1 -1
  64. package/dist/cjs/generated/docs.entry.cjs +20 -0
  65. package/dist/cjs/generated/docs.entry.cjs.map +1 -1
  66. package/dist/esm/common.mjs +29 -6
  67. package/dist/esm/common.mjs.map +1 -1
  68. package/dist/esm/generated/blog.entry.mjs +20 -0
  69. package/dist/esm/generated/blog.entry.mjs.map +1 -1
  70. package/dist/esm/generated/docs.entry.mjs +20 -0
  71. package/dist/esm/generated/docs.entry.mjs.map +1 -1
  72. package/dist/types/common.d.ts.map +1 -1
  73. package/dist/types/generated/blog.entry.d.ts +1 -0
  74. package/dist/types/generated/blog.entry.d.ts.map +1 -1
  75. package/dist/types/generated/docs.entry.d.ts +1 -0
  76. package/dist/types/generated/docs.entry.d.ts.map +1 -1
  77. package/docs/ar/analytics.md +458 -12
  78. package/docs/ar/configuration.md +98 -0
  79. package/docs/ar/dictionary/content_file.md +4 -4
  80. package/docs/ar/dictionary/html.md +117 -1
  81. package/docs/ar/dictionary/markdown.md +18 -1
  82. package/docs/ar/dictionary/plurial.md +5 -2
  83. package/docs/ar/how_works_intlayer.md +92 -0
  84. package/docs/ar/interest_of_intlayer.md +106 -9
  85. package/docs/ar/intlayer_CMS.md +92 -0
  86. package/docs/ar/intlayer_visual_editor.md +87 -1
  87. package/docs/ar/intlayer_with_adonisjs.md +121 -0
  88. package/docs/ar/intlayer_with_analog.md +116 -8
  89. package/docs/ar/intlayer_with_angular_19.md +115 -8
  90. package/docs/ar/intlayer_with_angular_21.md +109 -8
  91. package/docs/ar/intlayer_with_astro.md +117 -20
  92. package/docs/ar/intlayer_with_astro_lit.md +118 -10
  93. package/docs/ar/intlayer_with_astro_preact.md +118 -10
  94. package/docs/ar/intlayer_with_astro_react.md +118 -10
  95. package/docs/ar/intlayer_with_astro_solid.md +118 -10
  96. package/docs/ar/intlayer_with_astro_svelte.md +118 -10
  97. package/docs/ar/intlayer_with_astro_vanilla.md +112 -10
  98. package/docs/ar/intlayer_with_astro_vue.md +118 -10
  99. package/docs/ar/intlayer_with_create_react_app.md +105 -0
  100. package/docs/ar/intlayer_with_elysia.md +121 -0
  101. package/docs/ar/intlayer_with_express.md +114 -0
  102. package/docs/ar/intlayer_with_fastify.md +115 -0
  103. package/docs/ar/intlayer_with_hono.md +114 -0
  104. package/docs/ar/intlayer_with_htmx.md +771 -0
  105. package/docs/ar/intlayer_with_lynx+react.md +7 -14
  106. package/docs/ar/intlayer_with_nestjs.md +115 -0
  107. package/docs/ar/intlayer_with_nextjs_14.md +144 -120
  108. package/docs/ar/intlayer_with_nextjs_15.md +126 -51
  109. package/docs/ar/intlayer_with_nextjs_16.md +127 -49
  110. package/docs/ar/intlayer_with_nextjs_compiler.md +122 -13
  111. package/docs/ar/intlayer_with_nextjs_no_locale_path.md +121 -9
  112. package/docs/ar/intlayer_with_nextjs_page_router.md +139 -107
  113. package/docs/ar/intlayer_with_nuxt.md +110 -8
  114. package/docs/ar/intlayer_with_react_native+expo.md +102 -7
  115. package/docs/ar/intlayer_with_react_router_v7.md +119 -10
  116. package/docs/ar/intlayer_with_react_router_v7_fs_routes.md +122 -22
  117. package/docs/ar/intlayer_with_solid_start.md +115 -1
  118. package/docs/ar/intlayer_with_storybook.md +7 -20
  119. package/docs/ar/intlayer_with_svelte_kit.md +107 -17
  120. package/docs/ar/intlayer_with_tanstack+solid.md +124 -22
  121. package/docs/ar/intlayer_with_tanstack.md +134 -43
  122. package/docs/ar/intlayer_with_vanilla.md +117 -9
  123. package/docs/ar/intlayer_with_vite+lit.md +118 -8
  124. package/docs/ar/intlayer_with_vite+preact.md +148 -40
  125. package/docs/ar/intlayer_with_vite+react.md +108 -20
  126. package/docs/ar/intlayer_with_vite+react_compiler.md +106 -1
  127. package/docs/ar/intlayer_with_vite+solid.md +114 -5
  128. package/docs/ar/intlayer_with_vite+svelte.md +118 -8
  129. package/docs/ar/intlayer_with_vite+vanilla.md +125 -8
  130. package/docs/ar/intlayer_with_vite+vue.md +105 -9
  131. package/docs/ar/introduction.md +104 -1
  132. package/docs/ar/migration_from_i18next_to_intlayer.md +0 -2
  133. package/docs/ar/migration_from_next-i18next_to_intlayer.md +0 -2
  134. package/docs/ar/migration_from_next-intl_to_intlayer.md +0 -2
  135. package/docs/ar/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  136. package/docs/ar/migration_from_react-i18next_to_intlayer.md +0 -2
  137. package/docs/ar/migration_from_vue-i18n_to_intlayer.md +0 -2
  138. package/docs/ar/packages/vite-intlayer/intlayerMinify.md +1 -1
  139. package/docs/bn/introduction.md +0 -1
  140. package/docs/cs/interest_of_intlayer.md +0 -1
  141. package/docs/cs/intlayer_with_storybook.md +0 -12
  142. package/docs/cs/intlayer_with_vanilla.md +2 -1
  143. package/docs/cs/introduction.md +0 -1
  144. package/docs/de/analytics.md +458 -12
  145. package/docs/de/configuration.md +99 -1
  146. package/docs/de/dictionary/content_file.md +4 -4
  147. package/docs/de/dictionary/markdown.md +3 -0
  148. package/docs/de/dictionary/plurial.md +6 -3
  149. package/docs/de/how_works_intlayer.md +93 -1
  150. package/docs/de/interest_of_intlayer.md +97 -2
  151. package/docs/de/intlayer_CMS.md +93 -1
  152. package/docs/de/intlayer_visual_editor.md +88 -2
  153. package/docs/de/intlayer_with_adonisjs.md +121 -1
  154. package/docs/de/intlayer_with_analog.md +111 -2
  155. package/docs/de/intlayer_with_angular_19.md +109 -2
  156. package/docs/de/intlayer_with_angular_21.md +103 -2
  157. package/docs/de/intlayer_with_astro.md +111 -14
  158. package/docs/de/intlayer_with_astro_lit.md +112 -4
  159. package/docs/de/intlayer_with_astro_preact.md +112 -4
  160. package/docs/de/intlayer_with_astro_react.md +112 -4
  161. package/docs/de/intlayer_with_astro_solid.md +112 -4
  162. package/docs/de/intlayer_with_astro_svelte.md +112 -4
  163. package/docs/de/intlayer_with_astro_vanilla.md +106 -4
  164. package/docs/de/intlayer_with_astro_vue.md +112 -4
  165. package/docs/de/intlayer_with_create_react_app.md +107 -2
  166. package/docs/de/intlayer_with_elysia.md +121 -1
  167. package/docs/de/intlayer_with_express.md +115 -1
  168. package/docs/de/intlayer_with_fastify.md +115 -1
  169. package/docs/de/intlayer_with_hono.md +115 -1
  170. package/docs/de/intlayer_with_htmx.md +770 -0
  171. package/docs/de/intlayer_with_lynx+react.md +0 -7
  172. package/docs/de/intlayer_with_nestjs.md +115 -1
  173. package/docs/de/intlayer_with_nextjs_14.md +138 -110
  174. package/docs/de/intlayer_with_nextjs_15.md +120 -45
  175. package/docs/de/intlayer_with_nextjs_16.md +147 -51
  176. package/docs/de/intlayer_with_nextjs_compiler.md +113 -3
  177. package/docs/de/intlayer_with_nextjs_no_locale_path.md +115 -3
  178. package/docs/de/intlayer_with_nextjs_page_router.md +121 -95
  179. package/docs/de/intlayer_with_nuxt.md +104 -2
  180. package/docs/de/intlayer_with_react_native+expo.md +103 -8
  181. package/docs/de/intlayer_with_react_router_v7.md +113 -4
  182. package/docs/de/intlayer_with_react_router_v7_fs_routes.md +111 -4
  183. package/docs/de/intlayer_with_solid_start.md +117 -2
  184. package/docs/de/intlayer_with_storybook.md +0 -13
  185. package/docs/de/intlayer_with_svelte_kit.md +99 -2
  186. package/docs/de/intlayer_with_tanstack+solid.md +119 -16
  187. package/docs/de/intlayer_with_tanstack.md +231 -152
  188. package/docs/de/intlayer_with_vanilla.md +111 -3
  189. package/docs/de/intlayer_with_vite+lit.md +113 -2
  190. package/docs/de/intlayer_with_vite+preact.md +170 -33
  191. package/docs/de/intlayer_with_vite+react.md +102 -6
  192. package/docs/de/intlayer_with_vite+react_compiler.md +107 -2
  193. package/docs/de/intlayer_with_vite+solid.md +113 -2
  194. package/docs/de/intlayer_with_vite+svelte.md +113 -2
  195. package/docs/de/intlayer_with_vite+vanilla.md +119 -2
  196. package/docs/de/intlayer_with_vite+vue.md +98 -2
  197. package/docs/de/introduction.md +105 -2
  198. package/docs/de/migration_from_i18next_to_intlayer.md +0 -2
  199. package/docs/de/migration_from_next-i18next_to_intlayer.md +0 -2
  200. package/docs/de/migration_from_next-intl_to_intlayer.md +0 -2
  201. package/docs/de/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  202. package/docs/de/migration_from_react-i18next_to_intlayer.md +0 -2
  203. package/docs/de/migration_from_vue-i18n_to_intlayer.md +0 -2
  204. package/docs/de/packages/vite-intlayer/intlayerMinify.md +1 -1
  205. package/docs/en/configuration.md +99 -1
  206. package/docs/en/dictionary/content_file.md +4 -4
  207. package/docs/en/how_works_intlayer.md +93 -1
  208. package/docs/en/interest_of_intlayer.md +97 -2
  209. package/docs/en/intlayer_CMS.md +93 -1
  210. package/docs/en/intlayer_visual_editor.md +88 -2
  211. package/docs/en/intlayer_with_adonisjs.md +121 -1
  212. package/docs/en/intlayer_with_analog.md +111 -2
  213. package/docs/en/intlayer_with_angular_19.md +109 -2
  214. package/docs/en/intlayer_with_angular_21.md +103 -2
  215. package/docs/en/intlayer_with_astro.md +107 -4
  216. package/docs/en/intlayer_with_astro_lit.md +112 -4
  217. package/docs/en/intlayer_with_astro_preact.md +112 -4
  218. package/docs/en/intlayer_with_astro_react.md +112 -4
  219. package/docs/en/intlayer_with_astro_solid.md +112 -4
  220. package/docs/en/intlayer_with_astro_svelte.md +112 -4
  221. package/docs/en/intlayer_with_astro_vanilla.md +106 -4
  222. package/docs/en/intlayer_with_astro_vue.md +112 -4
  223. package/docs/en/intlayer_with_create_react_app.md +105 -2
  224. package/docs/en/intlayer_with_elysia.md +121 -1
  225. package/docs/en/intlayer_with_express.md +115 -1
  226. package/docs/en/intlayer_with_fastify.md +115 -1
  227. package/docs/en/intlayer_with_hono.md +115 -1
  228. package/docs/en/intlayer_with_htmx.md +754 -0
  229. package/docs/en/intlayer_with_lynx+react.md +0 -7
  230. package/docs/en/intlayer_with_nestjs.md +115 -1
  231. package/docs/en/intlayer_with_nextjs_14.md +120 -43
  232. package/docs/en/intlayer_with_nextjs_15.md +120 -44
  233. package/docs/en/intlayer_with_nextjs_16.md +121 -43
  234. package/docs/en/intlayer_with_nextjs_compiler.md +111 -2
  235. package/docs/en/intlayer_with_nextjs_no_locale_path.md +115 -3
  236. package/docs/en/intlayer_with_nextjs_page_router.md +110 -95
  237. package/docs/en/intlayer_with_nuxt.md +104 -2
  238. package/docs/en/intlayer_with_react_native+expo.md +103 -8
  239. package/docs/en/intlayer_with_react_router_v7.md +113 -4
  240. package/docs/en/intlayer_with_react_router_v7_fs_routes.md +112 -5
  241. package/docs/en/intlayer_with_solid_start.md +117 -2
  242. package/docs/en/intlayer_with_storybook.md +0 -13
  243. package/docs/en/intlayer_with_svelte_kit.md +99 -2
  244. package/docs/en/intlayer_with_tanstack+solid.md +120 -16
  245. package/docs/en/intlayer_with_tanstack.md +114 -16
  246. package/docs/en/intlayer_with_vanilla.md +111 -3
  247. package/docs/en/intlayer_with_vite+lit.md +113 -2
  248. package/docs/en/intlayer_with_vite+preact.md +143 -34
  249. package/docs/en/intlayer_with_vite+react.md +101 -4
  250. package/docs/en/intlayer_with_vite+react_compiler.md +107 -2
  251. package/docs/en/intlayer_with_vite+solid.md +113 -2
  252. package/docs/en/intlayer_with_vite+svelte.md +113 -2
  253. package/docs/en/intlayer_with_vite+vanilla.md +119 -2
  254. package/docs/en/intlayer_with_vite+vue.md +98 -2
  255. package/docs/en/introduction.md +105 -2
  256. package/docs/en/migration_from_i18next_to_intlayer.md +0 -2
  257. package/docs/en/migration_from_next-i18next_to_intlayer.md +0 -2
  258. package/docs/en/migration_from_next-intl_to_intlayer.md +0 -2
  259. package/docs/en/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  260. package/docs/en/migration_from_react-i18next_to_intlayer.md +0 -2
  261. package/docs/en/migration_from_vue-i18n_to_intlayer.md +0 -2
  262. package/docs/en/packages/vite-intlayer/intlayerMinify.md +1 -1
  263. package/docs/en-GB/analytics.md +527 -58
  264. package/docs/en-GB/configuration.md +99 -1
  265. package/docs/en-GB/dictionary/content_file.md +4 -4
  266. package/docs/en-GB/dictionary/html.md +117 -1
  267. package/docs/en-GB/dictionary/markdown.md +18 -1
  268. package/docs/en-GB/dictionary/plurial.md +5 -2
  269. package/docs/en-GB/dictionary/translation.md +1 -1
  270. package/docs/en-GB/how_works_intlayer.md +93 -1
  271. package/docs/en-GB/interest_of_intlayer.md +97 -2
  272. package/docs/en-GB/intlayer_CMS.md +93 -1
  273. package/docs/en-GB/intlayer_visual_editor.md +88 -2
  274. package/docs/en-GB/intlayer_with_adonisjs.md +121 -1
  275. package/docs/en-GB/intlayer_with_analog.md +111 -2
  276. package/docs/en-GB/intlayer_with_angular_19.md +109 -2
  277. package/docs/en-GB/intlayer_with_angular_21.md +103 -2
  278. package/docs/en-GB/intlayer_with_astro.md +111 -14
  279. package/docs/en-GB/intlayer_with_astro_lit.md +112 -4
  280. package/docs/en-GB/intlayer_with_astro_preact.md +112 -4
  281. package/docs/en-GB/intlayer_with_astro_react.md +112 -4
  282. package/docs/en-GB/intlayer_with_astro_solid.md +112 -4
  283. package/docs/en-GB/intlayer_with_astro_svelte.md +112 -4
  284. package/docs/en-GB/intlayer_with_astro_vanilla.md +106 -4
  285. package/docs/en-GB/intlayer_with_astro_vue.md +112 -4
  286. package/docs/en-GB/intlayer_with_create_react_app.md +105 -2
  287. package/docs/en-GB/intlayer_with_elysia.md +121 -1
  288. package/docs/en-GB/intlayer_with_express.md +115 -1
  289. package/docs/en-GB/intlayer_with_fastify.md +115 -1
  290. package/docs/en-GB/intlayer_with_hono.md +115 -1
  291. package/docs/en-GB/intlayer_with_htmx.md +757 -0
  292. package/docs/en-GB/intlayer_with_lynx+react.md +0 -7
  293. package/docs/en-GB/intlayer_with_nestjs.md +115 -1
  294. package/docs/en-GB/intlayer_with_nextjs_14.md +120 -44
  295. package/docs/en-GB/intlayer_with_nextjs_15.md +123 -45
  296. package/docs/en-GB/intlayer_with_nextjs_16.md +121 -44
  297. package/docs/en-GB/intlayer_with_nextjs_compiler.md +121 -12
  298. package/docs/en-GB/intlayer_with_nextjs_no_locale_path.md +115 -3
  299. package/docs/en-GB/intlayer_with_nextjs_page_router.md +122 -137
  300. package/docs/en-GB/intlayer_with_nuxt.md +104 -2
  301. package/docs/en-GB/intlayer_with_react_native+expo.md +103 -8
  302. package/docs/en-GB/intlayer_with_react_router_v7.md +113 -4
  303. package/docs/en-GB/intlayer_with_react_router_v7_fs_routes.md +111 -4
  304. package/docs/en-GB/intlayer_with_solid_start.md +117 -2
  305. package/docs/en-GB/intlayer_with_storybook.md +0 -13
  306. package/docs/en-GB/intlayer_with_svelte_kit.md +99 -2
  307. package/docs/en-GB/intlayer_with_tanstack+solid.md +120 -16
  308. package/docs/en-GB/intlayer_with_tanstack.md +255 -167
  309. package/docs/en-GB/intlayer_with_vanilla.md +111 -3
  310. package/docs/en-GB/intlayer_with_vite+lit.md +113 -2
  311. package/docs/en-GB/intlayer_with_vite+preact.md +179 -32
  312. package/docs/en-GB/intlayer_with_vite+react.md +101 -13
  313. package/docs/en-GB/intlayer_with_vite+react_compiler.md +107 -2
  314. package/docs/en-GB/intlayer_with_vite+solid.md +118 -2
  315. package/docs/en-GB/intlayer_with_vite+svelte.md +113 -11
  316. package/docs/en-GB/intlayer_with_vite+vanilla.md +119 -2
  317. package/docs/en-GB/intlayer_with_vite+vue.md +102 -8
  318. package/docs/en-GB/introduction.md +105 -2
  319. package/docs/en-GB/migration_from_i18next_to_intlayer.md +0 -2
  320. package/docs/en-GB/migration_from_next-i18next_to_intlayer.md +0 -2
  321. package/docs/en-GB/migration_from_next-intl_to_intlayer.md +0 -2
  322. package/docs/en-GB/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  323. package/docs/en-GB/migration_from_react-i18next_to_intlayer.md +0 -2
  324. package/docs/en-GB/migration_from_vue-i18n_to_intlayer.md +0 -2
  325. package/docs/en-GB/packages/vite-intlayer/intlayerMinify.md +1 -1
  326. package/docs/es/analytics.md +458 -12
  327. package/docs/es/configuration.md +99 -1
  328. package/docs/es/dictionary/content_file.md +4 -4
  329. package/docs/es/dictionary/markdown.md +18 -1
  330. package/docs/es/dictionary/plurial.md +5 -2
  331. package/docs/es/how_works_intlayer.md +93 -1
  332. package/docs/es/interest_of_intlayer.md +97 -2
  333. package/docs/es/intlayer_CMS.md +93 -1
  334. package/docs/es/intlayer_visual_editor.md +88 -2
  335. package/docs/es/intlayer_with_adonisjs.md +121 -1
  336. package/docs/es/intlayer_with_analog.md +111 -2
  337. package/docs/es/intlayer_with_angular_19.md +109 -2
  338. package/docs/es/intlayer_with_angular_21.md +103 -2
  339. package/docs/es/intlayer_with_astro.md +111 -14
  340. package/docs/es/intlayer_with_astro_lit.md +112 -4
  341. package/docs/es/intlayer_with_astro_preact.md +112 -4
  342. package/docs/es/intlayer_with_astro_react.md +112 -4
  343. package/docs/es/intlayer_with_astro_solid.md +112 -4
  344. package/docs/es/intlayer_with_astro_svelte.md +112 -4
  345. package/docs/es/intlayer_with_astro_vanilla.md +106 -4
  346. package/docs/es/intlayer_with_astro_vue.md +112 -4
  347. package/docs/es/intlayer_with_create_react_app.md +107 -2
  348. package/docs/es/intlayer_with_elysia.md +121 -1
  349. package/docs/es/intlayer_with_express.md +115 -1
  350. package/docs/es/intlayer_with_fastify.md +115 -1
  351. package/docs/es/intlayer_with_hono.md +115 -1
  352. package/docs/es/intlayer_with_htmx.md +763 -0
  353. package/docs/es/intlayer_with_lynx+react.md +0 -7
  354. package/docs/es/intlayer_with_nestjs.md +115 -1
  355. package/docs/es/intlayer_with_nextjs_14.md +120 -44
  356. package/docs/es/intlayer_with_nextjs_15.md +123 -45
  357. package/docs/es/intlayer_with_nextjs_16.md +142 -52
  358. package/docs/es/intlayer_with_nextjs_compiler.md +122 -12
  359. package/docs/es/intlayer_with_nextjs_no_locale_path.md +115 -3
  360. package/docs/es/intlayer_with_nextjs_page_router.md +110 -95
  361. package/docs/es/intlayer_with_nuxt.md +104 -2
  362. package/docs/es/intlayer_with_react_native+expo.md +103 -8
  363. package/docs/es/intlayer_with_react_router_v7.md +113 -4
  364. package/docs/es/intlayer_with_react_router_v7_fs_routes.md +111 -4
  365. package/docs/es/intlayer_with_solid_start.md +117 -2
  366. package/docs/es/intlayer_with_storybook.md +0 -13
  367. package/docs/es/intlayer_with_svelte_kit.md +99 -2
  368. package/docs/es/intlayer_with_tanstack+solid.md +119 -16
  369. package/docs/es/intlayer_with_tanstack.md +252 -147
  370. package/docs/es/intlayer_with_vanilla.md +111 -3
  371. package/docs/es/intlayer_with_vite+lit.md +113 -2
  372. package/docs/es/intlayer_with_vite+preact.md +143 -34
  373. package/docs/es/intlayer_with_vite+react.md +101 -4
  374. package/docs/es/intlayer_with_vite+react_compiler.md +107 -2
  375. package/docs/es/intlayer_with_vite+solid.md +114 -2
  376. package/docs/es/intlayer_with_vite+svelte.md +113 -2
  377. package/docs/es/intlayer_with_vite+vanilla.md +119 -2
  378. package/docs/es/intlayer_with_vite+vue.md +99 -3
  379. package/docs/es/introduction.md +105 -2
  380. package/docs/es/migration_from_i18next_to_intlayer.md +0 -2
  381. package/docs/es/migration_from_next-i18next_to_intlayer.md +0 -2
  382. package/docs/es/migration_from_next-intl_to_intlayer.md +0 -2
  383. package/docs/es/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  384. package/docs/es/migration_from_react-i18next_to_intlayer.md +0 -2
  385. package/docs/es/migration_from_vue-i18n_to_intlayer.md +0 -2
  386. package/docs/es/packages/vite-intlayer/intlayerMinify.md +1 -1
  387. package/docs/fr/analytics.md +437 -13
  388. package/docs/fr/configuration.md +99 -1
  389. package/docs/fr/dictionary/content_file.md +4 -4
  390. package/docs/fr/dictionary/markdown.md +18 -1
  391. package/docs/fr/dictionary/plurial.md +5 -2
  392. package/docs/fr/how_works_intlayer.md +93 -1
  393. package/docs/fr/interest_of_intlayer.md +97 -2
  394. package/docs/fr/intlayer_CMS.md +93 -1
  395. package/docs/fr/intlayer_visual_editor.md +88 -2
  396. package/docs/fr/intlayer_with_adonisjs.md +121 -1
  397. package/docs/fr/intlayer_with_analog.md +111 -2
  398. package/docs/fr/intlayer_with_angular_19.md +109 -2
  399. package/docs/fr/intlayer_with_angular_21.md +103 -2
  400. package/docs/fr/intlayer_with_astro.md +111 -14
  401. package/docs/fr/intlayer_with_astro_lit.md +112 -4
  402. package/docs/fr/intlayer_with_astro_preact.md +112 -4
  403. package/docs/fr/intlayer_with_astro_react.md +112 -4
  404. package/docs/fr/intlayer_with_astro_solid.md +112 -4
  405. package/docs/fr/intlayer_with_astro_svelte.md +112 -4
  406. package/docs/fr/intlayer_with_astro_vanilla.md +106 -4
  407. package/docs/fr/intlayer_with_astro_vue.md +112 -4
  408. package/docs/fr/intlayer_with_create_react_app.md +107 -2
  409. package/docs/fr/intlayer_with_elysia.md +121 -1
  410. package/docs/fr/intlayer_with_express.md +115 -1
  411. package/docs/fr/intlayer_with_fastify.md +115 -1
  412. package/docs/fr/intlayer_with_hono.md +115 -1
  413. package/docs/fr/intlayer_with_htmx.md +756 -0
  414. package/docs/fr/intlayer_with_lynx+react.md +0 -7
  415. package/docs/fr/intlayer_with_nestjs.md +115 -1
  416. package/docs/fr/intlayer_with_nextjs_14.md +138 -110
  417. package/docs/fr/intlayer_with_nextjs_15.md +124 -46
  418. package/docs/fr/intlayer_with_nextjs_16.md +121 -43
  419. package/docs/fr/intlayer_with_nextjs_compiler.md +122 -12
  420. package/docs/fr/intlayer_with_nextjs_no_locale_path.md +115 -3
  421. package/docs/fr/intlayer_with_nextjs_page_router.md +110 -95
  422. package/docs/fr/intlayer_with_nuxt.md +104 -2
  423. package/docs/fr/intlayer_with_react_native+expo.md +103 -8
  424. package/docs/fr/intlayer_with_react_router_v7.md +117 -10
  425. package/docs/fr/intlayer_with_react_router_v7_fs_routes.md +111 -4
  426. package/docs/fr/intlayer_with_solid_start.md +117 -2
  427. package/docs/fr/intlayer_with_storybook.md +0 -13
  428. package/docs/fr/intlayer_with_svelte_kit.md +99 -2
  429. package/docs/fr/intlayer_with_tanstack+solid.md +119 -16
  430. package/docs/fr/intlayer_with_tanstack.md +235 -128
  431. package/docs/fr/intlayer_with_vanilla.md +111 -3
  432. package/docs/fr/intlayer_with_vite+lit.md +113 -2
  433. package/docs/fr/intlayer_with_vite+preact.md +143 -34
  434. package/docs/fr/intlayer_with_vite+react.md +101 -4
  435. package/docs/fr/intlayer_with_vite+react_compiler.md +107 -2
  436. package/docs/fr/intlayer_with_vite+solid.md +114 -2
  437. package/docs/fr/intlayer_with_vite+svelte.md +113 -2
  438. package/docs/fr/intlayer_with_vite+vanilla.md +119 -2
  439. package/docs/fr/intlayer_with_vite+vue.md +99 -3
  440. package/docs/fr/introduction.md +105 -2
  441. package/docs/fr/migration_from_i18next_to_intlayer.md +0 -2
  442. package/docs/fr/migration_from_next-i18next_to_intlayer.md +0 -2
  443. package/docs/fr/migration_from_next-intl_to_intlayer.md +0 -2
  444. package/docs/fr/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  445. package/docs/fr/migration_from_react-i18next_to_intlayer.md +0 -2
  446. package/docs/fr/migration_from_vue-i18n_to_intlayer.md +0 -2
  447. package/docs/fr/packages/vite-intlayer/intlayerMinify.md +1 -1
  448. package/docs/hi/analytics.md +488 -21
  449. package/docs/hi/configuration.md +98 -0
  450. package/docs/hi/dictionary/content_file.md +4 -4
  451. package/docs/hi/dictionary/html.md +100 -3
  452. package/docs/hi/dictionary/markdown.md +3 -0
  453. package/docs/hi/dictionary/plurial.md +6 -3
  454. package/docs/hi/how_works_intlayer.md +92 -0
  455. package/docs/hi/interest_of_intlayer.md +106 -9
  456. package/docs/hi/intlayer_CMS.md +92 -0
  457. package/docs/hi/intlayer_visual_editor.md +87 -1
  458. package/docs/hi/intlayer_with_adonisjs.md +121 -0
  459. package/docs/hi/intlayer_with_analog.md +116 -8
  460. package/docs/hi/intlayer_with_angular_19.md +115 -8
  461. package/docs/hi/intlayer_with_angular_21.md +109 -8
  462. package/docs/hi/intlayer_with_astro.md +117 -20
  463. package/docs/hi/intlayer_with_astro_lit.md +118 -10
  464. package/docs/hi/intlayer_with_astro_preact.md +118 -10
  465. package/docs/hi/intlayer_with_astro_react.md +118 -10
  466. package/docs/hi/intlayer_with_astro_solid.md +118 -10
  467. package/docs/hi/intlayer_with_astro_svelte.md +118 -10
  468. package/docs/hi/intlayer_with_astro_vanilla.md +112 -10
  469. package/docs/hi/intlayer_with_astro_vue.md +118 -10
  470. package/docs/hi/intlayer_with_create_react_app.md +106 -1
  471. package/docs/hi/intlayer_with_elysia.md +121 -0
  472. package/docs/hi/intlayer_with_express.md +114 -0
  473. package/docs/hi/intlayer_with_fastify.md +115 -0
  474. package/docs/hi/intlayer_with_hono.md +114 -0
  475. package/docs/hi/intlayer_with_htmx.md +771 -0
  476. package/docs/hi/intlayer_with_lynx+react.md +7 -14
  477. package/docs/hi/intlayer_with_nestjs.md +115 -0
  478. package/docs/hi/intlayer_with_nextjs_14.md +144 -120
  479. package/docs/hi/intlayer_with_nextjs_15.md +129 -51
  480. package/docs/hi/intlayer_with_nextjs_16.md +129 -50
  481. package/docs/hi/intlayer_with_nextjs_compiler.md +121 -12
  482. package/docs/hi/intlayer_with_nextjs_no_locale_path.md +121 -9
  483. package/docs/hi/intlayer_with_nextjs_page_router.md +123 -96
  484. package/docs/hi/intlayer_with_nuxt.md +110 -8
  485. package/docs/hi/intlayer_with_react_native+expo.md +102 -7
  486. package/docs/hi/intlayer_with_react_router_v7.md +119 -10
  487. package/docs/hi/intlayer_with_react_router_v7_fs_routes.md +122 -22
  488. package/docs/hi/intlayer_with_solid_start.md +115 -1
  489. package/docs/hi/intlayer_with_storybook.md +7 -20
  490. package/docs/hi/intlayer_with_svelte_kit.md +105 -8
  491. package/docs/hi/intlayer_with_tanstack+solid.md +124 -22
  492. package/docs/hi/intlayer_with_tanstack.md +269 -155
  493. package/docs/hi/intlayer_with_vanilla.md +117 -9
  494. package/docs/hi/intlayer_with_vite+lit.md +118 -8
  495. package/docs/hi/intlayer_with_vite+preact.md +170 -41
  496. package/docs/hi/intlayer_with_vite+react.md +108 -20
  497. package/docs/hi/intlayer_with_vite+react_compiler.md +106 -1
  498. package/docs/hi/intlayer_with_vite+solid.md +118 -8
  499. package/docs/hi/intlayer_with_vite+svelte.md +120 -9
  500. package/docs/hi/intlayer_with_vite+vanilla.md +125 -8
  501. package/docs/hi/intlayer_with_vite+vue.md +104 -8
  502. package/docs/hi/introduction.md +104 -1
  503. package/docs/hi/migration_from_i18next_to_intlayer.md +0 -2
  504. package/docs/hi/migration_from_next-i18next_to_intlayer.md +0 -2
  505. package/docs/hi/migration_from_next-intl_to_intlayer.md +0 -2
  506. package/docs/hi/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  507. package/docs/hi/migration_from_react-i18next_to_intlayer.md +0 -2
  508. package/docs/hi/migration_from_vue-i18n_to_intlayer.md +0 -2
  509. package/docs/hi/packages/vite-intlayer/intlayerMinify.md +1 -1
  510. package/docs/id/analytics.md +488 -21
  511. package/docs/id/configuration.md +98 -0
  512. package/docs/id/dictionary/content_file.md +4 -4
  513. package/docs/id/dictionary/markdown.md +3 -0
  514. package/docs/id/dictionary/plurial.md +5 -2
  515. package/docs/id/how_works_intlayer.md +92 -0
  516. package/docs/id/interest_of_intlayer.md +96 -1
  517. package/docs/id/intlayer_CMS.md +92 -0
  518. package/docs/id/intlayer_visual_editor.md +87 -1
  519. package/docs/id/intlayer_with_adonisjs.md +121 -0
  520. package/docs/id/intlayer_with_analog.md +109 -1
  521. package/docs/id/intlayer_with_angular_19.md +108 -1
  522. package/docs/id/intlayer_with_angular_21.md +102 -1
  523. package/docs/id/intlayer_with_astro.md +110 -13
  524. package/docs/id/intlayer_with_astro_lit.md +111 -3
  525. package/docs/id/intlayer_with_astro_preact.md +111 -3
  526. package/docs/id/intlayer_with_astro_react.md +111 -3
  527. package/docs/id/intlayer_with_astro_solid.md +111 -3
  528. package/docs/id/intlayer_with_astro_svelte.md +111 -3
  529. package/docs/id/intlayer_with_astro_vanilla.md +105 -3
  530. package/docs/id/intlayer_with_astro_vue.md +111 -3
  531. package/docs/id/intlayer_with_create_react_app.md +106 -1
  532. package/docs/id/intlayer_with_elysia.md +121 -0
  533. package/docs/id/intlayer_with_express.md +114 -0
  534. package/docs/id/intlayer_with_fastify.md +115 -0
  535. package/docs/id/intlayer_with_hono.md +114 -0
  536. package/docs/id/intlayer_with_htmx.md +761 -0
  537. package/docs/id/intlayer_with_lynx+react.md +0 -7
  538. package/docs/id/intlayer_with_nestjs.md +115 -0
  539. package/docs/id/intlayer_with_nextjs_14.md +132 -66
  540. package/docs/id/intlayer_with_nextjs_15.md +119 -43
  541. package/docs/id/intlayer_with_nextjs_16.md +122 -42
  542. package/docs/id/intlayer_with_nextjs_compiler.md +122 -14
  543. package/docs/id/intlayer_with_nextjs_no_locale_path.md +114 -2
  544. package/docs/id/intlayer_with_nextjs_page_router.md +111 -94
  545. package/docs/id/intlayer_with_nuxt.md +103 -1
  546. package/docs/id/intlayer_with_react_native+expo.md +102 -7
  547. package/docs/id/intlayer_with_react_router_v7.md +112 -3
  548. package/docs/id/intlayer_with_react_router_v7_fs_routes.md +116 -16
  549. package/docs/id/intlayer_with_solid_start.md +115 -1
  550. package/docs/id/intlayer_with_storybook.md +0 -13
  551. package/docs/id/intlayer_with_svelte_kit.md +98 -1
  552. package/docs/id/intlayer_with_tanstack+solid.md +117 -15
  553. package/docs/id/intlayer_with_tanstack.md +229 -129
  554. package/docs/id/intlayer_with_vanilla.md +110 -2
  555. package/docs/id/intlayer_with_vite+lit.md +111 -1
  556. package/docs/id/intlayer_with_vite+preact.md +141 -33
  557. package/docs/id/intlayer_with_vite+react.md +101 -13
  558. package/docs/id/intlayer_with_vite+react_compiler.md +106 -1
  559. package/docs/id/intlayer_with_vite+solid.md +112 -1
  560. package/docs/id/intlayer_with_vite+svelte.md +111 -1
  561. package/docs/id/intlayer_with_vite+vanilla.md +118 -1
  562. package/docs/id/intlayer_with_vite+vue.md +97 -1
  563. package/docs/id/introduction.md +104 -1
  564. package/docs/id/migration_from_i18next_to_intlayer.md +0 -2
  565. package/docs/id/migration_from_next-i18next_to_intlayer.md +0 -2
  566. package/docs/id/migration_from_next-intl_to_intlayer.md +0 -2
  567. package/docs/id/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  568. package/docs/id/migration_from_react-i18next_to_intlayer.md +0 -2
  569. package/docs/id/migration_from_vue-i18n_to_intlayer.md +0 -2
  570. package/docs/id/packages/vite-intlayer/intlayerMinify.md +1 -1
  571. package/docs/it/analytics.md +488 -21
  572. package/docs/it/configuration.md +99 -1
  573. package/docs/it/dictionary/content_file.md +4 -4
  574. package/docs/it/dictionary/markdown.md +18 -1
  575. package/docs/it/dictionary/plurial.md +5 -2
  576. package/docs/it/how_works_intlayer.md +93 -1
  577. package/docs/it/interest_of_intlayer.md +97 -2
  578. package/docs/it/intlayer_CMS.md +93 -1
  579. package/docs/it/intlayer_visual_editor.md +88 -2
  580. package/docs/it/intlayer_with_adonisjs.md +121 -1
  581. package/docs/it/intlayer_with_analog.md +111 -2
  582. package/docs/it/intlayer_with_angular_19.md +109 -2
  583. package/docs/it/intlayer_with_angular_21.md +103 -2
  584. package/docs/it/intlayer_with_astro.md +111 -14
  585. package/docs/it/intlayer_with_astro_lit.md +112 -4
  586. package/docs/it/intlayer_with_astro_preact.md +112 -4
  587. package/docs/it/intlayer_with_astro_react.md +112 -4
  588. package/docs/it/intlayer_with_astro_solid.md +112 -4
  589. package/docs/it/intlayer_with_astro_svelte.md +112 -4
  590. package/docs/it/intlayer_with_astro_vanilla.md +106 -4
  591. package/docs/it/intlayer_with_astro_vue.md +112 -4
  592. package/docs/it/intlayer_with_create_react_app.md +107 -2
  593. package/docs/it/intlayer_with_elysia.md +121 -1
  594. package/docs/it/intlayer_with_express.md +115 -1
  595. package/docs/it/intlayer_with_fastify.md +115 -1
  596. package/docs/it/intlayer_with_hono.md +115 -1
  597. package/docs/it/intlayer_with_htmx.md +761 -0
  598. package/docs/it/intlayer_with_lynx+react.md +0 -7
  599. package/docs/it/intlayer_with_nestjs.md +115 -1
  600. package/docs/it/intlayer_with_nextjs_14.md +138 -115
  601. package/docs/it/intlayer_with_nextjs_15.md +124 -47
  602. package/docs/it/intlayer_with_nextjs_16.md +123 -44
  603. package/docs/it/intlayer_with_nextjs_compiler.md +123 -14
  604. package/docs/it/intlayer_with_nextjs_no_locale_path.md +115 -3
  605. package/docs/it/intlayer_with_nextjs_page_router.md +119 -95
  606. package/docs/it/intlayer_with_nuxt.md +104 -2
  607. package/docs/it/intlayer_with_react_native+expo.md +103 -8
  608. package/docs/it/intlayer_with_react_router_v7.md +113 -4
  609. package/docs/it/intlayer_with_react_router_v7_fs_routes.md +111 -4
  610. package/docs/it/intlayer_with_solid_start.md +117 -2
  611. package/docs/it/intlayer_with_storybook.md +0 -13
  612. package/docs/it/intlayer_with_svelte_kit.md +99 -2
  613. package/docs/it/intlayer_with_tanstack+solid.md +119 -16
  614. package/docs/it/intlayer_with_tanstack.md +232 -131
  615. package/docs/it/intlayer_with_vanilla.md +111 -3
  616. package/docs/it/intlayer_with_vite+lit.md +113 -2
  617. package/docs/it/intlayer_with_vite+preact.md +143 -34
  618. package/docs/it/intlayer_with_vite+react.md +102 -14
  619. package/docs/it/intlayer_with_vite+react_compiler.md +107 -2
  620. package/docs/it/intlayer_with_vite+solid.md +114 -2
  621. package/docs/it/intlayer_with_vite+svelte.md +113 -2
  622. package/docs/it/intlayer_with_vite+vanilla.md +119 -2
  623. package/docs/it/intlayer_with_vite+vue.md +99 -3
  624. package/docs/it/introduction.md +105 -2
  625. package/docs/it/migration_from_i18next_to_intlayer.md +0 -2
  626. package/docs/it/migration_from_next-i18next_to_intlayer.md +0 -2
  627. package/docs/it/migration_from_next-intl_to_intlayer.md +0 -2
  628. package/docs/it/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  629. package/docs/it/migration_from_react-i18next_to_intlayer.md +0 -2
  630. package/docs/it/migration_from_vue-i18n_to_intlayer.md +0 -2
  631. package/docs/it/packages/vite-intlayer/intlayerMinify.md +1 -1
  632. package/docs/ja/analytics.md +458 -12
  633. package/docs/ja/configuration.md +99 -1
  634. package/docs/ja/dictionary/content_file.md +4 -4
  635. package/docs/ja/dictionary/plurial.md +5 -2
  636. package/docs/ja/how_works_intlayer.md +93 -1
  637. package/docs/ja/interest_of_intlayer.md +107 -10
  638. package/docs/ja/intlayer_CMS.md +93 -1
  639. package/docs/ja/intlayer_visual_editor.md +88 -2
  640. package/docs/ja/intlayer_with_adonisjs.md +121 -1
  641. package/docs/ja/intlayer_with_analog.md +119 -10
  642. package/docs/ja/intlayer_with_angular_19.md +117 -10
  643. package/docs/ja/intlayer_with_angular_21.md +111 -10
  644. package/docs/ja/intlayer_with_astro.md +119 -22
  645. package/docs/ja/intlayer_with_astro_lit.md +120 -12
  646. package/docs/ja/intlayer_with_astro_preact.md +120 -12
  647. package/docs/ja/intlayer_with_astro_react.md +120 -12
  648. package/docs/ja/intlayer_with_astro_solid.md +120 -12
  649. package/docs/ja/intlayer_with_astro_svelte.md +120 -12
  650. package/docs/ja/intlayer_with_astro_vanilla.md +114 -12
  651. package/docs/ja/intlayer_with_astro_vue.md +120 -12
  652. package/docs/ja/intlayer_with_create_react_app.md +107 -2
  653. package/docs/ja/intlayer_with_elysia.md +121 -1
  654. package/docs/ja/intlayer_with_express.md +121 -1
  655. package/docs/ja/intlayer_with_fastify.md +115 -1
  656. package/docs/ja/intlayer_with_hono.md +115 -1
  657. package/docs/ja/intlayer_with_htmx.md +769 -0
  658. package/docs/ja/intlayer_with_lynx+react.md +8 -15
  659. package/docs/ja/intlayer_with_nestjs.md +115 -1
  660. package/docs/ja/intlayer_with_nextjs_14.md +128 -51
  661. package/docs/ja/intlayer_with_nextjs_15.md +136 -59
  662. package/docs/ja/intlayer_with_nextjs_16.md +131 -52
  663. package/docs/ja/intlayer_with_nextjs_compiler.md +123 -15
  664. package/docs/ja/intlayer_with_nextjs_no_locale_path.md +123 -11
  665. package/docs/ja/intlayer_with_nextjs_page_router.md +215 -110
  666. package/docs/ja/intlayer_with_nuxt.md +112 -10
  667. package/docs/ja/intlayer_with_react_native+expo.md +103 -8
  668. package/docs/ja/intlayer_with_react_router_v7.md +121 -11
  669. package/docs/ja/intlayer_with_react_router_v7_fs_routes.md +123 -23
  670. package/docs/ja/intlayer_with_solid_start.md +117 -2
  671. package/docs/ja/intlayer_with_storybook.md +8 -21
  672. package/docs/ja/intlayer_with_svelte_kit.md +107 -10
  673. package/docs/ja/intlayer_with_tanstack+solid.md +128 -24
  674. package/docs/ja/intlayer_with_tanstack.md +254 -203
  675. package/docs/ja/intlayer_with_vanilla.md +119 -11
  676. package/docs/ja/intlayer_with_vite+lit.md +121 -10
  677. package/docs/ja/intlayer_with_vite+preact.md +151 -23
  678. package/docs/ja/intlayer_with_vite+react.md +109 -12
  679. package/docs/ja/intlayer_with_vite+react_compiler.md +107 -2
  680. package/docs/ja/intlayer_with_vite+solid.md +121 -10
  681. package/docs/ja/intlayer_with_vite+svelte.md +121 -10
  682. package/docs/ja/intlayer_with_vite+vanilla.md +127 -10
  683. package/docs/ja/intlayer_with_vite+vue.md +107 -11
  684. package/docs/ja/introduction.md +105 -2
  685. package/docs/ja/migration_from_i18next_to_intlayer.md +0 -2
  686. package/docs/ja/migration_from_next-i18next_to_intlayer.md +0 -2
  687. package/docs/ja/migration_from_next-intl_to_intlayer.md +0 -2
  688. package/docs/ja/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  689. package/docs/ja/migration_from_react-i18next_to_intlayer.md +0 -2
  690. package/docs/ja/migration_from_vue-i18n_to_intlayer.md +0 -2
  691. package/docs/ja/packages/vite-intlayer/intlayerMinify.md +1 -1
  692. package/docs/ko/analytics.md +457 -11
  693. package/docs/ko/configuration.md +99 -1
  694. package/docs/ko/dictionary/content_file.md +4 -4
  695. package/docs/ko/dictionary/markdown.md +18 -1
  696. package/docs/ko/dictionary/plurial.md +6 -3
  697. package/docs/ko/how_works_intlayer.md +93 -1
  698. package/docs/ko/interest_of_intlayer.md +98 -3
  699. package/docs/ko/intlayer_CMS.md +93 -1
  700. package/docs/ko/intlayer_visual_editor.md +88 -2
  701. package/docs/ko/intlayer_with_adonisjs.md +121 -1
  702. package/docs/ko/intlayer_with_analog.md +111 -2
  703. package/docs/ko/intlayer_with_angular_19.md +110 -3
  704. package/docs/ko/intlayer_with_angular_21.md +104 -3
  705. package/docs/ko/intlayer_with_astro.md +119 -19
  706. package/docs/ko/intlayer_with_astro_lit.md +112 -4
  707. package/docs/ko/intlayer_with_astro_preact.md +112 -4
  708. package/docs/ko/intlayer_with_astro_react.md +112 -4
  709. package/docs/ko/intlayer_with_astro_solid.md +112 -4
  710. package/docs/ko/intlayer_with_astro_svelte.md +112 -4
  711. package/docs/ko/intlayer_with_astro_vanilla.md +106 -4
  712. package/docs/ko/intlayer_with_astro_vue.md +112 -4
  713. package/docs/ko/intlayer_with_create_react_app.md +107 -5
  714. package/docs/ko/intlayer_with_elysia.md +121 -1
  715. package/docs/ko/intlayer_with_express.md +115 -1
  716. package/docs/ko/intlayer_with_fastify.md +115 -2
  717. package/docs/ko/intlayer_with_hono.md +115 -1
  718. package/docs/ko/intlayer_with_htmx.md +763 -0
  719. package/docs/ko/intlayer_with_lynx+react.md +0 -7
  720. package/docs/ko/intlayer_with_nestjs.md +115 -1
  721. package/docs/ko/intlayer_with_nextjs_14.md +118 -42
  722. package/docs/ko/intlayer_with_nextjs_15.md +118 -43
  723. package/docs/ko/intlayer_with_nextjs_16.md +121 -43
  724. package/docs/ko/intlayer_with_nextjs_compiler.md +110 -1
  725. package/docs/ko/intlayer_with_nextjs_no_locale_path.md +117 -7
  726. package/docs/ko/intlayer_with_nextjs_page_router.md +110 -94
  727. package/docs/ko/intlayer_with_nuxt.md +104 -2
  728. package/docs/ko/intlayer_with_react_native+expo.md +103 -8
  729. package/docs/ko/intlayer_with_react_router_v7.md +116 -10
  730. package/docs/ko/intlayer_with_react_router_v7_fs_routes.md +113 -11
  731. package/docs/ko/intlayer_with_solid_start.md +122 -7
  732. package/docs/ko/intlayer_with_storybook.md +0 -14
  733. package/docs/ko/intlayer_with_svelte_kit.md +99 -2
  734. package/docs/ko/intlayer_with_tanstack+solid.md +121 -17
  735. package/docs/ko/intlayer_with_tanstack.md +260 -191
  736. package/docs/ko/intlayer_with_vanilla.md +111 -2
  737. package/docs/ko/intlayer_with_vite+lit.md +114 -3
  738. package/docs/ko/intlayer_with_vite+preact.md +143 -34
  739. package/docs/ko/intlayer_with_vite+react.md +101 -5
  740. package/docs/ko/intlayer_with_vite+react_compiler.md +107 -10
  741. package/docs/ko/intlayer_with_vite+solid.md +115 -2
  742. package/docs/ko/intlayer_with_vite+svelte.md +114 -6
  743. package/docs/ko/intlayer_with_vite+vanilla.md +121 -11
  744. package/docs/ko/intlayer_with_vite+vue.md +99 -3
  745. package/docs/ko/introduction.md +105 -2
  746. package/docs/ko/migration_from_i18next_to_intlayer.md +0 -2
  747. package/docs/ko/migration_from_next-i18next_to_intlayer.md +0 -2
  748. package/docs/ko/migration_from_next-intl_to_intlayer.md +0 -2
  749. package/docs/ko/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  750. package/docs/ko/migration_from_react-i18next_to_intlayer.md +0 -2
  751. package/docs/ko/migration_from_vue-i18n_to_intlayer.md +0 -2
  752. package/docs/ko/packages/express-intlayer/t.md +9 -6
  753. package/docs/ko/packages/vite-intlayer/intlayerMinify.md +1 -1
  754. package/docs/nl/interest_of_intlayer.md +0 -1
  755. package/docs/nl/intlayer_with_storybook.md +0 -12
  756. package/docs/nl/intlayer_with_vanilla.md +2 -1
  757. package/docs/nl/introduction.md +0 -1
  758. package/docs/pl/analytics.md +488 -21
  759. package/docs/pl/configuration.md +98 -0
  760. package/docs/pl/dictionary/content_file.md +4 -4
  761. package/docs/pl/dictionary/markdown.md +3 -0
  762. package/docs/pl/dictionary/plurial.md +5 -2
  763. package/docs/pl/how_works_intlayer.md +92 -0
  764. package/docs/pl/interest_of_intlayer.md +96 -1
  765. package/docs/pl/intlayer_CMS.md +92 -0
  766. package/docs/pl/intlayer_visual_editor.md +87 -1
  767. package/docs/pl/intlayer_with_adonisjs.md +120 -0
  768. package/docs/pl/intlayer_with_analog.md +116 -8
  769. package/docs/pl/intlayer_with_angular_19.md +115 -8
  770. package/docs/pl/intlayer_with_angular_21.md +109 -8
  771. package/docs/pl/intlayer_with_astro.md +117 -20
  772. package/docs/pl/intlayer_with_astro_lit.md +118 -10
  773. package/docs/pl/intlayer_with_astro_preact.md +118 -10
  774. package/docs/pl/intlayer_with_astro_react.md +118 -10
  775. package/docs/pl/intlayer_with_astro_solid.md +118 -10
  776. package/docs/pl/intlayer_with_astro_svelte.md +118 -10
  777. package/docs/pl/intlayer_with_astro_vanilla.md +112 -10
  778. package/docs/pl/intlayer_with_astro_vue.md +118 -10
  779. package/docs/pl/intlayer_with_create_react_app.md +106 -1
  780. package/docs/pl/intlayer_with_elysia.md +120 -0
  781. package/docs/pl/intlayer_with_express.md +114 -0
  782. package/docs/pl/intlayer_with_fastify.md +114 -0
  783. package/docs/pl/intlayer_with_hono.md +114 -0
  784. package/docs/pl/intlayer_with_htmx.md +767 -0
  785. package/docs/pl/intlayer_with_lynx+react.md +7 -14
  786. package/docs/pl/intlayer_with_nestjs.md +114 -0
  787. package/docs/pl/intlayer_with_nextjs_14.md +127 -50
  788. package/docs/pl/intlayer_with_nextjs_15.md +141 -62
  789. package/docs/pl/intlayer_with_nextjs_16.md +128 -51
  790. package/docs/pl/intlayer_with_nextjs_compiler.md +122 -13
  791. package/docs/pl/intlayer_with_nextjs_no_locale_path.md +122 -10
  792. package/docs/pl/intlayer_with_nextjs_page_router.md +115 -97
  793. package/docs/pl/intlayer_with_nuxt.md +110 -8
  794. package/docs/pl/intlayer_with_react_native+expo.md +102 -7
  795. package/docs/pl/intlayer_with_react_router_v7.md +131 -22
  796. package/docs/pl/intlayer_with_react_router_v7_fs_routes.md +121 -20
  797. package/docs/pl/intlayer_with_solid_start.md +115 -1
  798. package/docs/pl/intlayer_with_storybook.md +7 -20
  799. package/docs/pl/intlayer_with_svelte_kit.md +105 -8
  800. package/docs/pl/intlayer_with_tanstack+solid.md +124 -22
  801. package/docs/pl/intlayer_with_tanstack.md +238 -160
  802. package/docs/pl/intlayer_with_vanilla.md +117 -9
  803. package/docs/pl/intlayer_with_vite+lit.md +118 -8
  804. package/docs/pl/intlayer_with_vite+preact.md +148 -40
  805. package/docs/pl/intlayer_with_vite+react.md +108 -20
  806. package/docs/pl/intlayer_with_vite+react_compiler.md +108 -3
  807. package/docs/pl/intlayer_with_vite+solid.md +112 -5
  808. package/docs/pl/intlayer_with_vite+svelte.md +118 -8
  809. package/docs/pl/intlayer_with_vite+vanilla.md +125 -8
  810. package/docs/pl/intlayer_with_vite+vue.md +104 -8
  811. package/docs/pl/introduction.md +104 -1
  812. package/docs/pl/migration_from_i18next_to_intlayer.md +0 -2
  813. package/docs/pl/migration_from_next-i18next_to_intlayer.md +0 -2
  814. package/docs/pl/migration_from_next-intl_to_intlayer.md +0 -2
  815. package/docs/pl/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  816. package/docs/pl/migration_from_react-i18next_to_intlayer.md +0 -2
  817. package/docs/pl/migration_from_vue-i18n_to_intlayer.md +0 -2
  818. package/docs/pl/packages/next-intlayer/useIntlayer.md +3 -0
  819. package/docs/pl/packages/vite-intlayer/intlayerMinify.md +1 -1
  820. package/docs/pt/analytics.md +488 -21
  821. package/docs/pt/configuration.md +99 -1
  822. package/docs/pt/dictionary/content_file.md +4 -4
  823. package/docs/pt/dictionary/html.md +18 -1
  824. package/docs/pt/dictionary/markdown.md +3 -0
  825. package/docs/pt/dictionary/plurial.md +5 -2
  826. package/docs/pt/how_works_intlayer.md +93 -1
  827. package/docs/pt/interest_of_intlayer.md +98 -3
  828. package/docs/pt/intlayer_CMS.md +93 -1
  829. package/docs/pt/intlayer_visual_editor.md +88 -2
  830. package/docs/pt/intlayer_with_adonisjs.md +121 -1
  831. package/docs/pt/intlayer_with_analog.md +112 -3
  832. package/docs/pt/intlayer_with_angular_19.md +109 -2
  833. package/docs/pt/intlayer_with_angular_21.md +103 -2
  834. package/docs/pt/intlayer_with_astro.md +111 -14
  835. package/docs/pt/intlayer_with_astro_lit.md +112 -4
  836. package/docs/pt/intlayer_with_astro_preact.md +112 -4
  837. package/docs/pt/intlayer_with_astro_react.md +112 -4
  838. package/docs/pt/intlayer_with_astro_solid.md +112 -4
  839. package/docs/pt/intlayer_with_astro_svelte.md +112 -4
  840. package/docs/pt/intlayer_with_astro_vanilla.md +106 -4
  841. package/docs/pt/intlayer_with_astro_vue.md +111 -3
  842. package/docs/pt/intlayer_with_create_react_app.md +107 -2
  843. package/docs/pt/intlayer_with_elysia.md +121 -1
  844. package/docs/pt/intlayer_with_express.md +115 -1
  845. package/docs/pt/intlayer_with_fastify.md +115 -2
  846. package/docs/pt/intlayer_with_hono.md +115 -1
  847. package/docs/pt/intlayer_with_htmx.md +771 -0
  848. package/docs/pt/intlayer_with_lynx+react.md +0 -7
  849. package/docs/pt/intlayer_with_nestjs.md +115 -1
  850. package/docs/pt/intlayer_with_nextjs_14.md +138 -117
  851. package/docs/pt/intlayer_with_nextjs_15.md +120 -45
  852. package/docs/pt/intlayer_with_nextjs_16.md +122 -45
  853. package/docs/pt/intlayer_with_nextjs_compiler.md +122 -12
  854. package/docs/pt/intlayer_with_nextjs_no_locale_path.md +115 -3
  855. package/docs/pt/intlayer_with_nextjs_page_router.md +121 -95
  856. package/docs/pt/intlayer_with_nuxt.md +104 -2
  857. package/docs/pt/intlayer_with_react_native+expo.md +103 -8
  858. package/docs/pt/intlayer_with_react_router_v7.md +140 -33
  859. package/docs/pt/intlayer_with_react_router_v7_fs_routes.md +115 -8
  860. package/docs/pt/intlayer_with_solid_start.md +121 -6
  861. package/docs/pt/intlayer_with_storybook.md +0 -13
  862. package/docs/pt/intlayer_with_svelte_kit.md +99 -2
  863. package/docs/pt/intlayer_with_tanstack+solid.md +120 -16
  864. package/docs/pt/intlayer_with_tanstack.md +252 -144
  865. package/docs/pt/intlayer_with_vanilla.md +111 -3
  866. package/docs/pt/intlayer_with_vite+lit.md +113 -2
  867. package/docs/pt/intlayer_with_vite+preact.md +143 -34
  868. package/docs/pt/intlayer_with_vite+react.md +101 -4
  869. package/docs/pt/intlayer_with_vite+react_compiler.md +107 -2
  870. package/docs/pt/intlayer_with_vite+solid.md +114 -2
  871. package/docs/pt/intlayer_with_vite+svelte.md +113 -2
  872. package/docs/pt/intlayer_with_vite+vanilla.md +119 -2
  873. package/docs/pt/intlayer_with_vite+vue.md +98 -2
  874. package/docs/pt/introduction.md +105 -2
  875. package/docs/pt/migration_from_i18next_to_intlayer.md +0 -2
  876. package/docs/pt/migration_from_next-i18next_to_intlayer.md +0 -2
  877. package/docs/pt/migration_from_next-intl_to_intlayer.md +0 -2
  878. package/docs/pt/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  879. package/docs/pt/migration_from_react-i18next_to_intlayer.md +0 -2
  880. package/docs/pt/migration_from_vue-i18n_to_intlayer.md +0 -2
  881. package/docs/pt/packages/vite-intlayer/intlayerMinify.md +1 -1
  882. package/docs/ru/analytics.md +458 -12
  883. package/docs/ru/cli/doc-review.md +0 -2
  884. package/docs/ru/configuration.md +99 -1
  885. package/docs/ru/dictionary/content_file.md +4 -4
  886. package/docs/ru/dictionary/markdown.md +0 -2
  887. package/docs/ru/dictionary/plurial.md +6 -3
  888. package/docs/ru/dictionary/translation.md +1 -1
  889. package/docs/ru/how_works_intlayer.md +93 -1
  890. package/docs/ru/interest_of_intlayer.md +97 -2
  891. package/docs/ru/intlayer_CMS.md +93 -1
  892. package/docs/ru/intlayer_visual_editor.md +88 -2
  893. package/docs/ru/intlayer_with_adonisjs.md +121 -1
  894. package/docs/ru/intlayer_with_analog.md +111 -2
  895. package/docs/ru/intlayer_with_angular_19.md +109 -2
  896. package/docs/ru/intlayer_with_angular_21.md +103 -2
  897. package/docs/ru/intlayer_with_astro.md +111 -14
  898. package/docs/ru/intlayer_with_astro_lit.md +112 -4
  899. package/docs/ru/intlayer_with_astro_preact.md +112 -4
  900. package/docs/ru/intlayer_with_astro_react.md +112 -4
  901. package/docs/ru/intlayer_with_astro_solid.md +112 -4
  902. package/docs/ru/intlayer_with_astro_svelte.md +112 -4
  903. package/docs/ru/intlayer_with_astro_vanilla.md +106 -4
  904. package/docs/ru/intlayer_with_astro_vue.md +112 -4
  905. package/docs/ru/intlayer_with_create_react_app.md +107 -2
  906. package/docs/ru/intlayer_with_elysia.md +121 -1
  907. package/docs/ru/intlayer_with_express.md +115 -1
  908. package/docs/ru/intlayer_with_fastify.md +115 -1
  909. package/docs/ru/intlayer_with_hono.md +115 -1
  910. package/docs/ru/intlayer_with_htmx.md +767 -0
  911. package/docs/ru/intlayer_with_lynx+react.md +0 -7
  912. package/docs/ru/intlayer_with_nestjs.md +115 -1
  913. package/docs/ru/intlayer_with_nextjs_14.md +138 -114
  914. package/docs/ru/intlayer_with_nextjs_15.md +123 -62
  915. package/docs/ru/intlayer_with_nextjs_16.md +122 -45
  916. package/docs/ru/intlayer_with_nextjs_compiler.md +123 -14
  917. package/docs/ru/intlayer_with_nextjs_no_locale_path.md +115 -3
  918. package/docs/ru/intlayer_with_nextjs_page_router.md +110 -95
  919. package/docs/ru/intlayer_with_nuxt.md +104 -2
  920. package/docs/ru/intlayer_with_react_native+expo.md +103 -8
  921. package/docs/ru/intlayer_with_react_router_v7.md +113 -4
  922. package/docs/ru/intlayer_with_react_router_v7_fs_routes.md +111 -4
  923. package/docs/ru/intlayer_with_solid_start.md +117 -2
  924. package/docs/ru/intlayer_with_storybook.md +0 -13
  925. package/docs/ru/intlayer_with_svelte_kit.md +99 -2
  926. package/docs/ru/intlayer_with_tanstack+solid.md +119 -16
  927. package/docs/ru/intlayer_with_tanstack.md +230 -151
  928. package/docs/ru/intlayer_with_vanilla.md +111 -3
  929. package/docs/ru/intlayer_with_vite+lit.md +113 -2
  930. package/docs/ru/intlayer_with_vite+preact.md +143 -34
  931. package/docs/ru/intlayer_with_vite+react.md +102 -14
  932. package/docs/ru/intlayer_with_vite+react_compiler.md +107 -2
  933. package/docs/ru/intlayer_with_vite+solid.md +114 -2
  934. package/docs/ru/intlayer_with_vite+svelte.md +115 -12
  935. package/docs/ru/intlayer_with_vite+vanilla.md +119 -2
  936. package/docs/ru/intlayer_with_vite+vue.md +99 -3
  937. package/docs/ru/introduction.md +105 -2
  938. package/docs/ru/migration_from_i18next_to_intlayer.md +0 -2
  939. package/docs/ru/migration_from_next-i18next_to_intlayer.md +0 -2
  940. package/docs/ru/migration_from_next-intl_to_intlayer.md +0 -2
  941. package/docs/ru/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  942. package/docs/ru/migration_from_react-i18next_to_intlayer.md +0 -2
  943. package/docs/ru/migration_from_vue-i18n_to_intlayer.md +0 -2
  944. package/docs/ru/packages/vite-intlayer/intlayerMinify.md +1 -1
  945. package/docs/tr/analytics.md +488 -21
  946. package/docs/tr/cli/doc-review.md +0 -2
  947. package/docs/tr/configuration.md +98 -0
  948. package/docs/tr/dictionary/content_file.md +4 -4
  949. package/docs/tr/dictionary/markdown.md +3 -0
  950. package/docs/tr/dictionary/plurial.md +6 -3
  951. package/docs/tr/how_works_intlayer.md +92 -0
  952. package/docs/tr/interest_of_intlayer.md +96 -1
  953. package/docs/tr/intlayer_CMS.md +92 -0
  954. package/docs/tr/intlayer_visual_editor.md +87 -1
  955. package/docs/tr/intlayer_with_adonisjs.md +121 -0
  956. package/docs/tr/intlayer_with_analog.md +109 -1
  957. package/docs/tr/intlayer_with_angular_19.md +108 -1
  958. package/docs/tr/intlayer_with_angular_21.md +102 -1
  959. package/docs/tr/intlayer_with_astro.md +117 -27
  960. package/docs/tr/intlayer_with_astro_lit.md +111 -3
  961. package/docs/tr/intlayer_with_astro_preact.md +111 -3
  962. package/docs/tr/intlayer_with_astro_react.md +111 -3
  963. package/docs/tr/intlayer_with_astro_solid.md +111 -3
  964. package/docs/tr/intlayer_with_astro_svelte.md +111 -3
  965. package/docs/tr/intlayer_with_astro_vanilla.md +105 -3
  966. package/docs/tr/intlayer_with_astro_vue.md +111 -3
  967. package/docs/tr/intlayer_with_create_react_app.md +106 -1
  968. package/docs/tr/intlayer_with_elysia.md +121 -0
  969. package/docs/tr/intlayer_with_express.md +114 -0
  970. package/docs/tr/intlayer_with_fastify.md +115 -0
  971. package/docs/tr/intlayer_with_hono.md +114 -0
  972. package/docs/tr/intlayer_with_htmx.md +761 -0
  973. package/docs/tr/intlayer_with_lynx+react.md +0 -7
  974. package/docs/tr/intlayer_with_nestjs.md +115 -0
  975. package/docs/tr/intlayer_with_nextjs_14.md +125 -51
  976. package/docs/tr/intlayer_with_nextjs_15.md +119 -44
  977. package/docs/tr/intlayer_with_nextjs_16.md +120 -43
  978. package/docs/tr/intlayer_with_nextjs_compiler.md +121 -13
  979. package/docs/tr/intlayer_with_nextjs_no_locale_path.md +114 -2
  980. package/docs/tr/intlayer_with_nextjs_page_router.md +124 -120
  981. package/docs/tr/intlayer_with_nuxt.md +103 -1
  982. package/docs/tr/intlayer_with_react_native+expo.md +102 -7
  983. package/docs/tr/intlayer_with_react_router_v7.md +112 -3
  984. package/docs/tr/intlayer_with_react_router_v7_fs_routes.md +110 -3
  985. package/docs/tr/intlayer_with_solid_start.md +115 -1
  986. package/docs/tr/intlayer_with_storybook.md +0 -13
  987. package/docs/tr/intlayer_with_svelte_kit.md +98 -1
  988. package/docs/tr/intlayer_with_tanstack+solid.md +117 -15
  989. package/docs/tr/intlayer_with_tanstack.md +259 -128
  990. package/docs/tr/intlayer_with_vanilla.md +110 -2
  991. package/docs/tr/intlayer_with_vite+lit.md +111 -1
  992. package/docs/tr/intlayer_with_vite+preact.md +141 -33
  993. package/docs/tr/intlayer_with_vite+react.md +100 -3
  994. package/docs/tr/intlayer_with_vite+react_compiler.md +106 -1
  995. package/docs/tr/intlayer_with_vite+solid.md +112 -1
  996. package/docs/tr/intlayer_with_vite+svelte.md +111 -1
  997. package/docs/tr/intlayer_with_vite+vanilla.md +118 -1
  998. package/docs/tr/intlayer_with_vite+vue.md +99 -4
  999. package/docs/tr/introduction.md +104 -1
  1000. package/docs/tr/migration_from_i18next_to_intlayer.md +0 -2
  1001. package/docs/tr/migration_from_next-i18next_to_intlayer.md +0 -2
  1002. package/docs/tr/migration_from_next-intl_to_intlayer.md +0 -2
  1003. package/docs/tr/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  1004. package/docs/tr/migration_from_react-i18next_to_intlayer.md +0 -2
  1005. package/docs/tr/migration_from_vue-i18n_to_intlayer.md +0 -2
  1006. package/docs/tr/packages/vite-intlayer/intlayerMinify.md +1 -1
  1007. package/docs/uk/analytics.md +488 -21
  1008. package/docs/uk/configuration.md +98 -0
  1009. package/docs/uk/dictionary/content_file.md +4 -4
  1010. package/docs/uk/dictionary/markdown.md +3 -0
  1011. package/docs/uk/dictionary/plurial.md +6 -3
  1012. package/docs/uk/how_works_intlayer.md +92 -0
  1013. package/docs/uk/interest_of_intlayer.md +96 -1
  1014. package/docs/uk/intlayer_CMS.md +92 -0
  1015. package/docs/uk/intlayer_visual_editor.md +87 -1
  1016. package/docs/uk/intlayer_with_adonisjs.md +121 -0
  1017. package/docs/uk/intlayer_with_analog.md +109 -1
  1018. package/docs/uk/intlayer_with_angular_19.md +108 -1
  1019. package/docs/uk/intlayer_with_angular_21.md +102 -1
  1020. package/docs/uk/intlayer_with_astro.md +110 -13
  1021. package/docs/uk/intlayer_with_astro_lit.md +111 -3
  1022. package/docs/uk/intlayer_with_astro_preact.md +111 -3
  1023. package/docs/uk/intlayer_with_astro_react.md +111 -3
  1024. package/docs/uk/intlayer_with_astro_solid.md +111 -3
  1025. package/docs/uk/intlayer_with_astro_svelte.md +111 -3
  1026. package/docs/uk/intlayer_with_astro_vanilla.md +105 -3
  1027. package/docs/uk/intlayer_with_astro_vue.md +111 -3
  1028. package/docs/uk/intlayer_with_create_react_app.md +106 -1
  1029. package/docs/uk/intlayer_with_elysia.md +121 -0
  1030. package/docs/uk/intlayer_with_express.md +114 -0
  1031. package/docs/uk/intlayer_with_fastify.md +115 -0
  1032. package/docs/uk/intlayer_with_hono.md +114 -0
  1033. package/docs/uk/intlayer_with_htmx.md +760 -0
  1034. package/docs/uk/intlayer_with_lynx+react.md +0 -7
  1035. package/docs/uk/intlayer_with_nestjs.md +115 -0
  1036. package/docs/uk/intlayer_with_nextjs_14.md +119 -44
  1037. package/docs/uk/intlayer_with_nextjs_15.md +133 -56
  1038. package/docs/uk/intlayer_with_nextjs_16.md +121 -44
  1039. package/docs/uk/intlayer_with_nextjs_compiler.md +122 -14
  1040. package/docs/uk/intlayer_with_nextjs_no_locale_path.md +114 -2
  1041. package/docs/uk/intlayer_with_nextjs_page_router.md +111 -96
  1042. package/docs/uk/intlayer_with_nuxt.md +103 -1
  1043. package/docs/uk/intlayer_with_react_native+expo.md +102 -7
  1044. package/docs/uk/intlayer_with_react_router_v7.md +112 -3
  1045. package/docs/uk/intlayer_with_react_router_v7_fs_routes.md +110 -3
  1046. package/docs/uk/intlayer_with_solid_start.md +115 -1
  1047. package/docs/uk/intlayer_with_storybook.md +0 -13
  1048. package/docs/uk/intlayer_with_svelte_kit.md +98 -1
  1049. package/docs/uk/intlayer_with_tanstack+solid.md +117 -15
  1050. package/docs/uk/intlayer_with_tanstack.md +235 -132
  1051. package/docs/uk/intlayer_with_vanilla.md +110 -2
  1052. package/docs/uk/intlayer_with_vite+lit.md +111 -1
  1053. package/docs/uk/intlayer_with_vite+preact.md +167 -31
  1054. package/docs/uk/intlayer_with_vite+react.md +101 -13
  1055. package/docs/uk/intlayer_with_vite+react_compiler.md +106 -1
  1056. package/docs/uk/intlayer_with_vite+solid.md +112 -1
  1057. package/docs/uk/intlayer_with_vite+svelte.md +111 -1
  1058. package/docs/uk/intlayer_with_vite+vanilla.md +118 -1
  1059. package/docs/uk/intlayer_with_vite+vue.md +97 -1
  1060. package/docs/uk/introduction.md +104 -1
  1061. package/docs/uk/migration_from_i18next_to_intlayer.md +0 -2
  1062. package/docs/uk/migration_from_next-i18next_to_intlayer.md +0 -2
  1063. package/docs/uk/migration_from_next-intl_to_intlayer.md +0 -2
  1064. package/docs/uk/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  1065. package/docs/uk/migration_from_react-i18next_to_intlayer.md +0 -2
  1066. package/docs/uk/migration_from_vue-i18n_to_intlayer.md +0 -2
  1067. package/docs/uk/packages/vite-intlayer/intlayerMinify.md +1 -1
  1068. package/docs/ur/intlayer_with_storybook.md +0 -12
  1069. package/docs/ur/intlayer_with_vanilla.md +2 -1
  1070. package/docs/ur/introduction.md +0 -1
  1071. package/docs/vi/analytics.md +488 -21
  1072. package/docs/vi/configuration.md +98 -0
  1073. package/docs/vi/dictionary/content_file.md +4 -4
  1074. package/docs/vi/dictionary/markdown.md +3 -0
  1075. package/docs/vi/dictionary/plurial.md +5 -2
  1076. package/docs/vi/how_works_intlayer.md +92 -0
  1077. package/docs/vi/interest_of_intlayer.md +96 -1
  1078. package/docs/vi/intlayer_CMS.md +92 -0
  1079. package/docs/vi/intlayer_visual_editor.md +87 -1
  1080. package/docs/vi/intlayer_with_adonisjs.md +121 -0
  1081. package/docs/vi/intlayer_with_analog.md +109 -1
  1082. package/docs/vi/intlayer_with_angular_19.md +108 -1
  1083. package/docs/vi/intlayer_with_angular_21.md +102 -1
  1084. package/docs/vi/intlayer_with_astro.md +110 -13
  1085. package/docs/vi/intlayer_with_astro_lit.md +111 -3
  1086. package/docs/vi/intlayer_with_astro_preact.md +111 -3
  1087. package/docs/vi/intlayer_with_astro_react.md +111 -3
  1088. package/docs/vi/intlayer_with_astro_solid.md +111 -3
  1089. package/docs/vi/intlayer_with_astro_svelte.md +111 -3
  1090. package/docs/vi/intlayer_with_astro_vanilla.md +105 -3
  1091. package/docs/vi/intlayer_with_astro_vue.md +111 -3
  1092. package/docs/vi/intlayer_with_create_react_app.md +106 -1
  1093. package/docs/vi/intlayer_with_elysia.md +121 -0
  1094. package/docs/vi/intlayer_with_express.md +114 -0
  1095. package/docs/vi/intlayer_with_fastify.md +115 -0
  1096. package/docs/vi/intlayer_with_hono.md +114 -0
  1097. package/docs/vi/intlayer_with_htmx.md +760 -0
  1098. package/docs/vi/intlayer_with_lynx+react.md +0 -7
  1099. package/docs/vi/intlayer_with_nestjs.md +115 -0
  1100. package/docs/vi/intlayer_with_nextjs_14.md +133 -53
  1101. package/docs/vi/intlayer_with_nextjs_15.md +133 -56
  1102. package/docs/vi/intlayer_with_nextjs_16.md +121 -44
  1103. package/docs/vi/intlayer_with_nextjs_compiler.md +122 -14
  1104. package/docs/vi/intlayer_with_nextjs_no_locale_path.md +114 -2
  1105. package/docs/vi/intlayer_with_nextjs_page_router.md +111 -92
  1106. package/docs/vi/intlayer_with_nuxt.md +103 -1
  1107. package/docs/vi/intlayer_with_react_native+expo.md +102 -7
  1108. package/docs/vi/intlayer_with_react_router_v7.md +112 -3
  1109. package/docs/vi/intlayer_with_react_router_v7_fs_routes.md +116 -16
  1110. package/docs/vi/intlayer_with_solid_start.md +115 -1
  1111. package/docs/vi/intlayer_with_storybook.md +0 -13
  1112. package/docs/vi/intlayer_with_svelte_kit.md +98 -1
  1113. package/docs/vi/intlayer_with_tanstack+solid.md +117 -15
  1114. package/docs/vi/intlayer_with_tanstack.md +249 -169
  1115. package/docs/vi/intlayer_with_vanilla.md +110 -2
  1116. package/docs/vi/intlayer_with_vite+lit.md +111 -1
  1117. package/docs/vi/intlayer_with_vite+preact.md +147 -14
  1118. package/docs/vi/intlayer_with_vite+react.md +101 -13
  1119. package/docs/vi/intlayer_with_vite+react_compiler.md +106 -1
  1120. package/docs/vi/intlayer_with_vite+solid.md +112 -1
  1121. package/docs/vi/intlayer_with_vite+svelte.md +111 -1
  1122. package/docs/vi/intlayer_with_vite+vanilla.md +118 -1
  1123. package/docs/vi/intlayer_with_vite+vue.md +97 -1
  1124. package/docs/vi/introduction.md +104 -1
  1125. package/docs/vi/migration_from_i18next_to_intlayer.md +0 -2
  1126. package/docs/vi/migration_from_next-i18next_to_intlayer.md +0 -2
  1127. package/docs/vi/migration_from_next-intl_to_intlayer.md +0 -2
  1128. package/docs/vi/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  1129. package/docs/vi/migration_from_react-i18next_to_intlayer.md +0 -2
  1130. package/docs/vi/migration_from_vue-i18n_to_intlayer.md +0 -2
  1131. package/docs/vi/packages/vite-intlayer/intlayerMinify.md +1 -1
  1132. package/docs/zh/analytics.md +458 -12
  1133. package/docs/zh/configuration.md +99 -1
  1134. package/docs/zh/dictionary/content_file.md +4 -4
  1135. package/docs/zh/dictionary/markdown.md +18 -1
  1136. package/docs/zh/dictionary/plurial.md +6 -3
  1137. package/docs/zh/how_works_intlayer.md +93 -1
  1138. package/docs/zh/interest_of_intlayer.md +108 -13
  1139. package/docs/zh/intlayer_CMS.md +93 -1
  1140. package/docs/zh/intlayer_visual_editor.md +88 -2
  1141. package/docs/zh/intlayer_with_adonisjs.md +121 -1
  1142. package/docs/zh/intlayer_with_analog.md +118 -9
  1143. package/docs/zh/intlayer_with_angular_19.md +117 -10
  1144. package/docs/zh/intlayer_with_angular_21.md +110 -9
  1145. package/docs/zh/intlayer_with_astro.md +108 -4
  1146. package/docs/zh/intlayer_with_astro_lit.md +114 -7
  1147. package/docs/zh/intlayer_with_astro_preact.md +114 -7
  1148. package/docs/zh/intlayer_with_astro_react.md +114 -7
  1149. package/docs/zh/intlayer_with_astro_solid.md +114 -7
  1150. package/docs/zh/intlayer_with_astro_svelte.md +114 -7
  1151. package/docs/zh/intlayer_with_astro_vanilla.md +108 -7
  1152. package/docs/zh/intlayer_with_astro_vue.md +114 -7
  1153. package/docs/zh/intlayer_with_create_react_app.md +110 -6
  1154. package/docs/zh/intlayer_with_elysia.md +121 -1
  1155. package/docs/zh/intlayer_with_express.md +115 -1
  1156. package/docs/zh/intlayer_with_fastify.md +115 -1
  1157. package/docs/zh/intlayer_with_hono.md +115 -1
  1158. package/docs/zh/intlayer_with_htmx.md +769 -0
  1159. package/docs/zh/intlayer_with_lynx+react.md +8 -13
  1160. package/docs/zh/intlayer_with_nestjs.md +115 -1
  1161. package/docs/zh/intlayer_with_nextjs_14.md +120 -45
  1162. package/docs/zh/intlayer_with_nextjs_15.md +121 -44
  1163. package/docs/zh/intlayer_with_nextjs_16.md +121 -42
  1164. package/docs/zh/intlayer_with_nextjs_compiler.md +121 -14
  1165. package/docs/zh/intlayer_with_nextjs_no_locale_path.md +122 -10
  1166. package/docs/zh/intlayer_with_nextjs_page_router.md +110 -94
  1167. package/docs/zh/intlayer_with_nuxt.md +111 -9
  1168. package/docs/zh/intlayer_with_react_native+expo.md +103 -8
  1169. package/docs/zh/intlayer_with_react_router_v7.md +131 -28
  1170. package/docs/zh/intlayer_with_react_router_v7_fs_routes.md +134 -30
  1171. package/docs/zh/intlayer_with_solid_start.md +122 -7
  1172. package/docs/zh/intlayer_with_storybook.md +7 -20
  1173. package/docs/zh/intlayer_with_svelte_kit.md +106 -9
  1174. package/docs/zh/intlayer_with_tanstack+solid.md +129 -29
  1175. package/docs/zh/intlayer_with_tanstack.md +251 -191
  1176. package/docs/zh/intlayer_with_vanilla.md +118 -10
  1177. package/docs/zh/intlayer_with_vite+lit.md +121 -8
  1178. package/docs/zh/intlayer_with_vite+preact.md +150 -41
  1179. package/docs/zh/intlayer_with_vite+react.md +104 -12
  1180. package/docs/zh/intlayer_with_vite+react_compiler.md +107 -2
  1181. package/docs/zh/intlayer_with_vite+solid.md +113 -2
  1182. package/docs/zh/intlayer_with_vite+svelte.md +127 -14
  1183. package/docs/zh/intlayer_with_vite+vanilla.md +126 -9
  1184. package/docs/zh/intlayer_with_vite+vue.md +99 -3
  1185. package/docs/zh/introduction.md +105 -2
  1186. package/docs/zh/migration_from_i18next_to_intlayer.md +0 -2
  1187. package/docs/zh/migration_from_next-i18next_to_intlayer.md +0 -2
  1188. package/docs/zh/migration_from_next-intl_to_intlayer.md +0 -2
  1189. package/docs/zh/migration_from_nuxtjs_i18n_to_intlayer.md +0 -2
  1190. package/docs/zh/migration_from_react-i18next_to_intlayer.md +0 -2
  1191. package/docs/zh/migration_from_vue-i18n_to_intlayer.md +0 -2
  1192. package/docs/zh/packages/vite-intlayer/intlayerMinify.md +1 -1
  1193. package/docs/zh/releases/v6.md +1 -1
  1194. package/docs/zh-TW/introduction.md +0 -1
  1195. package/package.json +7 -7
  1196. package/src/common.ts +45 -18
  1197. package/src/generated/blog.entry.ts +20 -0
  1198. package/src/generated/docs.entry.ts +20 -0
@@ -0,0 +1,771 @@
1
+ ---
2
+ createdAt: 2026-08-29
3
+ updatedAt: 2026-08-29
4
+ title: "ترجمة تطبيق htmx باستخدام Intlayer - دليل كامل"
5
+ description: "لا مزيد من i18next. دليل 2026 لبناء تطبيق htmx متعدد اللغات (i18n). ترجمة مع وكلاء الذكاء الاصطناعي وتحسين حجم الحزمة و SEO والأداء."
6
+ keywords:
7
+ - Internationalization
8
+ - Documentation
9
+ - Intlayer
10
+ - htmx
11
+ - Hypermedia
12
+ - JavaScript
13
+ - Backend
14
+ slugs:
15
+ - doc
16
+ - environment
17
+ - htmx
18
+ history:
19
+ - version: 9.4.1
20
+ date: 2026-08-29
21
+ changes: "Initial history"
22
+ author: aymericzip
23
+ ---
24
+
25
+ # ترجمة تطبيق htmx باستخدام Intlayer | الدولية (i18n)
26
+
27
+ htmx لا يعرض أي محتوى خاص به. كل تسمية يقرأها الزائر هي HTML أنتجها الخادم، وكل تبديل هو طلب HTTP منفصل. لذا فإن دولي (i18n) لتطبيق htmx يعتبر مسؤولية الخادم: يجب حل locale على كل طلب، وكل جزء يجب أن يتم تصييره في هذا locale.
28
+
29
+ يغطي Intlayer هذا من خلال تكاملاته الخلفية، التي تكتشف locale لكل طلب وتعرض محتوى معلن عليه للمعالج الذي ينشئ HTML.
30
+
31
+ ## جدول المحتويات
32
+
33
+ <TOC/>
34
+
35
+ ## القواعد الثلاث للدولي (i18n) في تطبيق htmx
36
+
37
+ <AccordionGroup>
38
+ <Accordion header="يجب حل locale على كل طلب، وليس فقط على الأول">
39
+
40
+ صفحة واحدة يمكن أن تؤدي إلى عشرات عمليات الاستبدال. كل واحدة منها طلب جديد بدون ذاكرة عن الصفحة التي أصدرتها. إذا كانت اللغة موجودة في متغير تم تعيينه أثناء العرض الأولي، فإن كل جزء بعده سيعود إلى اللغة الافتراضية.
41
+
42
+ يقوم middleware Intlayer بحل اللغة من الطلب نفسه، لذلك يجيب الجزء المقدم في الدقيقة العاشرة باللغة ذاتها التي تم تقديم الصفحة بها في الدقيقة الصفر.
43
+
44
+ </Accordion>
45
+
46
+ <Accordion header="يجب أن تسافر اللغة مع الطلب">
47
+
48
+ يعمل حاملان مع htmx. يتم إرسال ملف تعريف الارتباط (`INTLAYER_LOCALE`) من قبل المتصفح تلقائياً في كل طلب، بما في ذلك طلبات htmx. يمكن إرفاق رأس (`x-intlayer-locale`) بطلبات htmx باستخدام السمة `hx-headers`. يتم قراءة كليهما بشكل افتراضي.
49
+
50
+ </Accordion>
51
+
52
+ <Accordion header="HTML المبدل لا يزال HTML">
53
+
54
+ القيمة المترجمة المدرجة في مقطع هي markup. قم بـ escape لها، تماماً كما تفعل مع أي قيمة ديناميكية أخرى، لذلك لا يمكن لترجمة تحتوي على `<` أن تكسر المستند الذي يتم تبديله فيه.
55
+
56
+ </Accordion>
57
+ </AccordionGroup>
58
+
59
+ ---
60
+
61
+ ## دليل خطوة بخطوة
62
+
63
+ <iframe
64
+ src="https://ide.intlayer.org/aymericzip/intlayer-htmx-template?file=intlayer.config.ts"
65
+ className="m-auto overflow-hidden rounded-lg border-0 max-md:size-full max-md:h-[700px] md:aspect-16/9 md:w-full"
66
+ title="Demo CodeSandbox - كيفية جعل تطبيقك متعدد اللغات باستخدام Intlayer"
67
+ sandbox="allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts"
68
+ loading="lazy"
69
+ />
70
+
71
+ انظر إلى [نموذج التطبيق](https://github.com/aymericzip/intlayer-htmx-template) على GitHub.
72
+
73
+ <Steps>
74
+
75
+ <Step number={1} title="تثبيت المتطلبات">
76
+
77
+ قم بتثبيت `intlayer` بالإضافة إلى التكامل الخاص بخادمك.
78
+
79
+ <Tabs group="backend" defaultTab="express">
80
+ <Tab label="Express" value="express">
81
+
82
+ ```bash packageManager="npm"
83
+ npm install intlayer express-intlayer cookie-parser
84
+ ```
85
+
86
+ ```bash packageManager="pnpm"
87
+ pnpm add intlayer express-intlayer cookie-parser
88
+ ```
89
+
90
+ ```bash packageManager="yarn"
91
+ yarn add intlayer express-intlayer cookie-parser
92
+ ```
93
+
94
+ ```bash packageManager="bun"
95
+ bun add intlayer express-intlayer cookie-parser
96
+ ```
97
+
98
+ </Tab>
99
+ <Tab label="Fastify" value="fastify">
100
+
101
+ ```bash packageManager="npm"
102
+ npm install intlayer fastify-intlayer @fastify/cookie @fastify/formbody
103
+ ```
104
+
105
+ ```bash packageManager="pnpm"
106
+ pnpm add intlayer fastify-intlayer @fastify/cookie @fastify/formbody
107
+ ```
108
+
109
+ ```bash packageManager="yarn"
110
+ yarn add intlayer fastify-intlayer @fastify/cookie @fastify/formbody
111
+ ```
112
+
113
+ ```bash packageManager="bun"
114
+ bun add intlayer fastify-intlayer @fastify/cookie @fastify/formbody
115
+ ```
116
+
117
+ </Tab>
118
+ <Tab label="Hono" value="hono">
119
+
120
+ ```bash packageManager="npm"
121
+ npm install intlayer hono-intlayer
122
+ ```
123
+
124
+ ```bash packageManager="pnpm"
125
+ pnpm add intlayer hono-intlayer
126
+ ```
127
+
128
+ ```bash packageManager="yarn"
129
+ yarn add intlayer hono-intlayer
130
+ ```
131
+
132
+ ```bash packageManager="bun"
133
+ bun add intlayer hono-intlayer
134
+ ```
135
+
136
+ </Tab>
137
+ <Tab label="Elysia" value="elysia">
138
+
139
+ ```bash packageManager="npm"
140
+ npm install intlayer elysia-intlayer
141
+ ```
142
+
143
+ ```bash packageManager="pnpm"
144
+ pnpm add intlayer elysia-intlayer
145
+ ```
146
+
147
+ ```bash packageManager="yarn"
148
+ yarn add intlayer elysia-intlayer
149
+ ```
150
+
151
+ ```bash
152
+ bun add intlayer elysia-intlayer
153
+ ```
154
+
155
+ </Tab>
156
+ </Tabs>
157
+
158
+ > يقرأ Express و Fastify ملف تعريف الارتباط للمنطقة الزمنية من خلال معالجات الملفات الخاصة بهم، لذا يجب تثبيتها جنبًا إلى جنب. يحلل Hono و Elysia ملفات تعريف الارتباط بشكل أصلي.
159
+
160
+ htmx نفسه عبارة عن وسم نصي واحد، مضاف في الخطوة 4.
161
+
162
+ </Step>
163
+
164
+ <Step number={2} title="تكوين مشروعك">
165
+
166
+ أنشئ `intlayer.config.ts` في جذر مشروعك:
167
+
168
+ ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
169
+ import { Locales, type IntlayerConfig } from "intlayer";
170
+
171
+ const config: IntlayerConfig = {
172
+ internationalization: {
173
+ locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH, Locales.ARABIC],
174
+ defaultLocale: Locales.ENGLISH,
175
+ },
176
+ };
177
+
178
+ export default config;
179
+ ```
180
+
181
+ > للحصول على القائمة الكاملة للخيارات، راجع [توثيق التكوين](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/configuration.md).
182
+
183
+ </Step>
184
+
185
+ <Step number={3} title="أعلن عن محتواك">
186
+
187
+ أعلن عن كل التسميات التي سيعيدها الخادم، بما في ذلك تلك التي تظهر فقط داخل جزء:
188
+
189
+ ```typescript fileName="src/app.content.ts" contentDeclarationFormat={["typescript", "esm"]}
190
+ import { insert, t, type Dictionary } from "intlayer";
191
+
192
+ const appContent = {
193
+ key: "app",
194
+ content: {
195
+ pageTitle: "Intlayer + htmx",
196
+
197
+ localeLabel: t({
198
+ ar: "اللغة",
199
+ en: "Language",
200
+ fr: "Langue",
201
+ es: "Idioma",
202
+ }),
203
+
204
+ cartSummary: insert(
205
+ t({
206
+ ar: "المنتجات في سلتك: {{count}}",
207
+ en: "Items in your cart: {{count}}",
208
+ fr: "Articles dans votre panier : {{count}}",
209
+ es: "Artículos en tu carrito: {{count}}",
210
+ })
211
+ ),
212
+
213
+ addItem: t({
214
+ ar: "أضف منتجًا",
215
+ en: "Add an item",
216
+ fr: "Ajouter un article",
217
+ es: "Añadir un artículo",
218
+ }),
219
+ },
220
+ } satisfies Dictionary;
221
+
222
+ export default appContent;
223
+ ```
224
+
225
+ > يمكن أن توجد إعلانات المحتوى في أي مكان تحت `contentDir` (بشكل افتراضي `./src`) وتطابق `.content.{json,ts,tsx,js,jsx,mjs,cjs,md,mdx,yaml,yml}`. انظر إلى [وثائق إعلان المحتوى](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dictionary/content_file.md).
226
+
227
+ </Step>
228
+
229
+ <Step number={4} title="تسجيل middleware Intlayer">
230
+
231
+ يحل الـ middleware لغة كل طلب ويعرّضها لمعالجاتك.
232
+
233
+ <Tabs group="backend" defaultTab="express">
234
+ <Tab label="Express" value="express">
235
+
236
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
237
+ import cookieParser from "cookie-parser";
238
+ import express from "express";
239
+ import { intlayer } from "express-intlayer";
240
+
241
+ const app = express();
242
+
243
+ // يجب تشغيل محلل الكوكيز أولاً: `express-intlayer` يقرأ كوكي اللغة
244
+ // من خلال `req.cookies`.
245
+ app.use(cookieParser());
246
+ app.use(express.urlencoded({ extended: false }));
247
+ app.use(intlayer());
248
+ ```
249
+
250
+ اللغة المحللة موجودة في `res.locals.locale`.
251
+
252
+ </Tab>
253
+ <Tab label="Fastify" value="fastify">
254
+
255
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
256
+ import cookie from "@fastify/cookie";
257
+ import formbody from "@fastify/formbody";
258
+ import Fastify from "fastify";
259
+ import { intlayer } from "fastify-intlayer";
260
+
261
+ const fastify = Fastify();
262
+
263
+ await fastify.register(cookie);
264
+ await fastify.register(formbody);
265
+ await fastify.register(intlayer);
266
+ ```
267
+
268
+ اللغة المحلولة موجودة على `req.intlayer.locale`.
269
+
270
+ </Tab>
271
+ <Tab label="Hono" value="hono">
272
+
273
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
274
+ import { Hono } from "hono";
275
+ import { intlayer } from "hono-intlayer";
276
+
277
+ const app = new Hono();
278
+
279
+ app.use("*", intlayer());
280
+ ```
281
+
282
+ اللغة المحلولة هي `c.get("locale")`.
283
+
284
+ </Tab>
285
+ <Tab label="Elysia" value="elysia">
286
+
287
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
288
+ import { Elysia } from "elysia";
289
+ import { intlayer } from "elysia-intlayer";
290
+
291
+ const app = new Elysia().use(intlayer());
292
+ ```
293
+
294
+ يتم حل locale على `intlayer!.locale` في سياق المسار.
295
+
296
+ </Tab>
297
+ </Tabs>
298
+
299
+ افتراضياً، يتم أخذ locale من ملف تعريف `INTLAYER_LOCALE`، ثم رأس `x-intlayer-locale`، ثم تفاوض `Accept-Language`.
300
+
301
+ </Step>
302
+
303
+ <Step number={5} title="عرض الأجزاء مع locale الطلب">
304
+
305
+ اكتب أداة عرض الأجزاء كدوال نقية لـ locale، وأرسل locale الذي حله الـ middleware. يحافظ تمريره بشكل صريح على ارتباط الجزء بالطلب الذي طلبه، أياً كان الخادم الذي تستخدمه.
306
+
307
+ ```typescript fileName="src/views.ts" codeFormat={["typescript", "esm"]}
308
+ import { currency, getIntlayer, type Locale } from "intlayer";
309
+
310
+ const HTML_ENTITIES: Record<string, string> = {
311
+ "&": "&amp;",
312
+ "<": "&lt;",
313
+ ">": "&gt;",
314
+ '"': "&quot;",
315
+ "'": "&#39;",
316
+ };
317
+
318
+ /** تهريب قيمة مترجمة حتى لا تتمكن من الخروج من الترميز. */
319
+ const escapeHtml = (value: string): string =>
320
+ value.replace(
321
+ /[&<>"']/g,
322
+ (character) => HTML_ENTITIES[character] ?? character
323
+ );
324
+
325
+ export const renderCart = (locale: Locale, itemCount: number): string => {
326
+ const content = getIntlayer("app", locale);
327
+
328
+ return `<section id="cart">
329
+ <p>${escapeHtml(String(content.cartSummary({ count: itemCount })))}</p>
330
+ <p>${escapeHtml(currency(itemCount * 12.5, { locale, currency: "EUR" }))}</p>
331
+ <button
332
+ hx-post="/cart/items"
333
+ hx-vals='{"itemCount": ${itemCount}}'
334
+ hx-target="#cart"
335
+ hx-swap="outerHTML"
336
+ >${escapeHtml(String(content.addItem))}</button>
337
+ </section>`;
338
+ };
339
+ ```
340
+
341
+ قدّمها من مسار:
342
+
343
+ <Tabs group="backend" defaultTab="express">
344
+ <Tab label="Express" value="express">
345
+
346
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
347
+ app.post("/cart/items", (req, res) => {
348
+ // الحصول على عدد العناصر من جسم الطلب وإضافة 1
349
+ const itemCount = Number(req.body?.itemCount ?? 0) + 1;
350
+
351
+ // إرسال استجابة HTML مع بيانات السلة المحدثة
352
+ res.type("html").send(renderCart(res.locals.locale, itemCount));
353
+ });
354
+ ```
355
+
356
+ </Tab>
357
+ <Tab label="Fastify" value="fastify">
358
+
359
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
360
+ fastify.post("/cart/items", async (req, reply) => {
361
+ // الحصول على عدد العناصر من جسم الطلب وإضافة 1
362
+ const itemCount =
363
+ Number((req.body as { itemCount?: string })?.itemCount ?? 0) + 1;
364
+
365
+ // إرسال استجابة HTML مع بيانات السلة المحدثة
366
+ return reply
367
+ .type("text/html")
368
+ .send(renderCart(req.intlayer.locale, itemCount));
369
+ });
370
+ ```
371
+
372
+ </Tab>
373
+ <Tab label="Hono" value="hono">
374
+
375
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
376
+ app.post("/cart/items", async (c) => {
377
+ const body = await c.req.parseBody();
378
+ const itemCount = Number(body["itemCount"] ?? 0) + 1;
379
+
380
+ return c.html(renderCart(c.get("locale"), itemCount));
381
+ });
382
+ ```
383
+
384
+ </Tab>
385
+ <Tab label="Elysia" value="elysia">
386
+
387
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
388
+ app.post("/cart/items", ({ body, intlayer }) => {
389
+ const itemCount =
390
+ Number((body as { itemCount?: string })?.itemCount ?? 0) + 1;
391
+
392
+ return new Response(renderCart(intlayer!.locale, itemCount), {
393
+ headers: { "content-type": "text/html" },
394
+ });
395
+ });
396
+ ```
397
+
398
+ </Tab>
399
+ </Tabs>
400
+
401
+ الآن يجيب نفس المقطع باللغة الفرنسية للزائر الذي تقول ملفات تعريفه `fr`، وباللغة العربية لمن تقول ملفات تعريفه `ar`، بدون أي تغيير في الترميز الذي يستدعيه.
402
+
403
+ </Step>
404
+
405
+ <Step number={6} title="خدمة الصفحة الأولى">
406
+
407
+ قم بتصيير `<body>` بمفردها، بحيث يمكن لمحول اللغة في الخطوة 7 استبدالها بالكامل، ثم قم بلفها في المستند الذي يحمل htmx:
408
+
409
+ ```typescript fileName="src/views.ts" codeFormat={["typescript", "esm"]}
410
+ import { getHTMLTextDir, getIntlayer, type Locale } from "intlayer";
411
+
412
+ export const renderBody = (locale: Locale, itemCount: number): string => {
413
+ // الحصول على محتوى التطبيق للغة المحددة
414
+ const content = getIntlayer("app", locale);
415
+
416
+ return `<body lang="${locale}" dir="${getHTMLTextDir(locale)}">
417
+ <main>
418
+ <h1>${escapeHtml(String(content.pageTitle))}</h1>
419
+ ${renderLocaleSwitcher(locale)}
420
+ ${renderCart(locale, itemCount)}
421
+ </main>
422
+ </body>`;
423
+ };
424
+
425
+ export const renderPage = (locale: Locale, itemCount: number): string =>
426
+ `<!doctype html>
427
+ <html lang="${locale}" dir="${getHTMLTextDir(locale)}">
428
+ <head>
429
+ <meta charset="utf-8" />
430
+ <title>${escapeHtml(String(getIntlayer("app", locale).pageTitle))}</title>
431
+ <script src="https://unpkg.com/htmx.org@2.0.4"></script>
432
+ </head>
433
+ ${renderBody(locale, itemCount)}
434
+ </html>`;
435
+ ```
436
+
437
+ تُرجع `getHTMLTextDir` قيمة `ltr` أو `rtl` أو `auto` للـ locale، وهذا ما يجعل العربية والعبرية تتصرف بشكل صحيح.
438
+
439
+ </Step>
440
+
441
+ <Step number={7} title="تبديل اللغة">
442
+
443
+ تبديل اللغة هو طلب مثل أي طلب آخر. يقوم الخادم بتخزين الاختيار في ملف تعريف الارتباط الذي يقرأه middleware، ثم يُرجع الصفحة معاد تصييرها باللغة الجديدة.
444
+
445
+ قم بتصيير محول اللغة كـ `select` الذي ينشر نفسه ويستبدل كل `<body>`، بحيث تتغير العلامات الثابتة حول أجزائك أيضاً:
446
+
447
+ ```typescript fileName="src/views.ts" codeFormat={["typescript", "esm"]}
448
+ import { getIntlayer, getLocaleName, type Locale, locales } from "intlayer";
449
+
450
+ const renderLocaleSwitcher = (locale: Locale): string => {
451
+ // الحصول على محتوى التطبيق للغة الحالية
452
+ const content = getIntlayer("app", locale);
453
+
454
+ // إنشاء خيارات قائمة الاختيار لكل لغة متاحة
455
+ const options = locales
456
+ .map(
457
+ (availableLocale: Locale) =>
458
+ `<option value="${availableLocale}"${availableLocale === locale ? " selected" : ""}>${escapeHtml(getLocaleName(availableLocale, locale))}</option>`
459
+ )
460
+ .join("");
461
+
462
+ // إرجاع نموذج HTML يحتوي على محول اللغة
463
+ return `<form>
464
+ <label for="locale">${escapeHtml(String(content.localeLabel))}</label>
465
+ <select
466
+ id="locale"
467
+ name="locale"
468
+ hx-post="/locale"
469
+ hx-trigger="change"
470
+ hx-target="body"
471
+ hx-swap="outerHTML"
472
+ >${options}</select>
473
+ </form>`;
474
+ };
475
+ ```
476
+
477
+ > `getLocaleName(availableLocale, locale)` تكتب كل لغة باللغة المعروضة حالياً. لا تمرر أي وسيط ثاني لكتابة كل واحدة بلغتها الخاصة بدلاً من ذلك.
478
+
479
+ تعامل مع المنشور من خلال التحقق من القيمة وتعيين ملف تعريف الارتباط وإرجاع النص الجديد:
480
+
481
+ <Tabs group="backend" defaultTab="express">
482
+ <Tab label="Express" value="express">
483
+
484
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
485
+ import { isDeclaredLocale } from "intlayer";
486
+
487
+ app.post("/locale", (req, res) => {
488
+ // الحصول على اللغة المطلوبة من جسم الطلب
489
+ const requestedLocale = String(req.body?.locale);
490
+
491
+ // التحقق من أن اللغة المطلوبة معلنة
492
+ if (!isDeclaredLocale(requestedLocale)) {
493
+ res.status(400).send("Unknown locale");
494
+ return;
495
+ }
496
+
497
+ res.cookie("INTLAYER_LOCALE", requestedLocale, {
498
+ sameSite: "lax",
499
+ path: "/",
500
+ });
501
+ res.type("html").send(renderBody(requestedLocale, 0));
502
+ });
503
+ ```
504
+
505
+ </Tab>
506
+ <Tab label="Fastify" value="fastify">
507
+
508
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
509
+ import { isDeclaredLocale } from "intlayer";
510
+
511
+ fastify.post("/locale", async (req, reply) => {
512
+ const requestedLocale = String((req.body as { locale?: string })?.locale);
513
+
514
+ if (!isDeclaredLocale(requestedLocale)) {
515
+ return reply.status(400).send("Unknown locale");
516
+ }
517
+
518
+ return reply
519
+ .setCookie("INTLAYER_LOCALE", requestedLocale, {
520
+ sameSite: "lax",
521
+ path: "/",
522
+ })
523
+ .type("text/html")
524
+ .send(renderBody(requestedLocale, 0));
525
+ });
526
+ ```
527
+
528
+ </Tab>
529
+ <Tab label="Hono" value="hono">
530
+
531
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
532
+ import { setCookie } from "hono/cookie";
533
+ import { isDeclaredLocale } from "intlayer";
534
+
535
+ app.post("/locale", async (c) => {
536
+ // استخراج الـ body من الطلب
537
+ const body = await c.req.parseBody();
538
+ // الحصول على اللغة المطلوبة من الـ body
539
+ const requestedLocale = String(body["locale"]);
540
+
541
+ // التحقق من أن اللغة المطلوبة معلنة في الإعدادات
542
+ if (!isDeclaredLocale(requestedLocale)) {
543
+ return c.text("Unknown locale", 400);
544
+ }
545
+
546
+ // تعيين ملف تعريف الارتباط للغة المطلوبة
547
+ setCookie(c, "INTLAYER_LOCALE", requestedLocale, {
548
+ sameSite: "Lax",
549
+ path: "/",
550
+ });
551
+ // إرجاع صفحة HTML بالـ render للغة المطلوبة
552
+ return c.html(renderBody(requestedLocale, 0));
553
+ });
554
+ ```
555
+
556
+ </Tab>
557
+ <Tab label="Elysia" value="elysia">
558
+
559
+ ```typescript fileName="src/index.ts" codeFormat={["typescript", "esm"]}
560
+ import { isDeclaredLocale } from "intlayer";
561
+
562
+ app.post("/locale", ({ body, cookie, status }) => {
563
+ const requestedLocale = String((body as { locale?: string })?.locale);
564
+
565
+ if (!isDeclaredLocale(requestedLocale)) {
566
+ return status(400, "Unknown locale");
567
+ }
568
+
569
+ cookie["INTLAYER_LOCALE"]!.set({
570
+ value: requestedLocale,
571
+ sameSite: "lax",
572
+ path: "/",
573
+ });
574
+
575
+ return new Response(renderBody(requestedLocale, 0), {
576
+ headers: { "content-type": "text/html" },
577
+ });
578
+ });
579
+ ```
580
+
581
+ </Tab>
582
+ </Tabs>
583
+
584
+ > يقوم `isDeclaredLocale` بتضييق نطاق سلسلة نصية عشوائية إلى أحد لغاتك المُعدّة، لذلك لن تصل أي قيمة غير متوقعة إلى معالجاتك.
585
+
586
+ </Step>
587
+
588
+ <Step number={8} title="الحفاظ على lang و dir متزامنة بعد استبدال" isOptional={true}>
589
+
590
+ يمكن للـ swap أن يستبدل `<body>`، لكن ليس العنصر `<html>` حوله. قم بتصيير `lang` و `dir` على الـ body المستبدل وانسخهما مرة أخرى إلى العنصر الجذر مرة واحدة، من الـ head:
591
+
592
+ ```html fileName="src/views.ts"
593
+ <script>
594
+ // استمع إلى حدث afterSwap من htmx
595
+ document.addEventListener("htmx:afterSwap", () => {
596
+ // انسخ خصائص lang و dir من body إلى العنصر الجذر html
597
+ document.documentElement.lang = document.body.lang;
598
+ document.documentElement.dir = document.body.dir;
599
+ });
600
+ </script>
601
+ ```
602
+
603
+ بدون هذا، عند التبديل إلى اللغة العربية، سيتم العرض من اليمين إلى اليسار داخل الـ body بينما لا يزال المستند يعلن اللغة السابقة لتكنولوجيا المساعدة وللزحافات.
604
+
605
+ </Step>
606
+
607
+ <Step number={9} title="إرسال المنطقة الإقليمية كرأس بدلاً من ملف تعريف ارتباط" isOptional={true}>
608
+
609
+ إذا لم تناسبك ملف تعريف الارتباط (cookie)، أرفق الإعدادات المحلية لكل طلب htmx باستخدام `hx-headers` على عنصر أب. ترث العناصر الفرعية هذا:
610
+
611
+ ```html
612
+ <body hx-headers='{"x-intlayer-locale": "fr"}'>
613
+ ...
614
+ </body>
615
+ ```
616
+
617
+ يقرأ middleware `x-intlayer-locale` بشكل افتراضي. يمكنك إعادة تسمية كلا الناقلين في إعدادك:
618
+
619
+ ```typescript fileName="intlayer.config.ts" codeFormat={["typescript", "esm", "commonjs"]}
620
+ import { Locales, type IntlayerConfig } from "intlayer";
621
+
622
+ const config: IntlayerConfig = {
623
+ // ... خيارات الإعدادات الأخرى
624
+ routing: {
625
+ storage: [
626
+ { type: "header", name: "my-locale-header" },
627
+ { type: "cookie", name: "my-locale-cookie" },
628
+ ],
629
+ },
630
+ };
631
+
632
+ export default config;
633
+ ```
634
+
635
+ </Step>
636
+
637
+ </Steps>
638
+
639
+ ### تكوين TypeScript
640
+
641
+ قم بتضمين الأنواع المولدة تلقائياً حتى يكون المفتاح غير المُعلَّن خطأ في وقت الترجمة بدلاً من سلسلة فارغة في وقت التشغيل.
642
+
643
+ ```json5 fileName="tsconfig.json"
644
+ {
645
+ // ... إعدادات TypeScript الموجودة لديك
646
+ "include": [
647
+ // ... إعدادات TypeScript الموجودة لديك
648
+ ".intlayer/**/*.ts", // قم بتضمين الأنواع المولدة تلقائياً
649
+ ],
650
+ }
651
+ ```
652
+
653
+ ### تكوين Git
654
+
655
+ يُنصح بتجاهل الملفات المولدة بواسطة Intlayer:
656
+
657
+ ```plaintext fileName=".gitignore"
658
+ # تجاهل الملفات المولدة بواسطة Intlayer
659
+ .intlayer
660
+ ```
661
+
662
+ ### VS Code Extension
663
+
664
+ لتحسين تجربة التطوير الخاصة بك مع Intlayer، يمكنك تثبيت **Intlayer VS Code Extension** الرسمية.
665
+
666
+ [التثبيت من VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=intlayer.intlayer-vs-code-extension)
667
+
668
+ توفر هذا الامتداد:
669
+
670
+ - **إكمال تلقائي** لمفاتيح الترجمة.
671
+ - **كشف الأخطاء في الوقت الفعلي** للترجمات المفقودة.
672
+ - **معاينات مضمنة** للمحتوى المترجم.
673
+ - **إجراءات سريعة** لإنشاء وتحديث الترجمات بسهولة.
674
+
675
+ للحصول على مزيد من التفاصيل حول كيفية استخدام الامتداد، راجع [وثائق امتداد Intlayer VS Code](https://intlayer.org/doc/vs-code-extension).
676
+
677
+ ---
678
+
679
+ ### المزيد
680
+
681
+ للمتابعة، يمكنك إضفاء طابع خارجي على محتواك باستخدام [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/intlayer_CMS.md)، حتى يتمكن المترجمون من تغيير النسخ دون نشر.
682
+
683
+ ## الأسئلة الشائعة
684
+
685
+ <FAQ>
686
+
687
+ <Question title="لماذا يعود الجزء المتبادل الخاص بي بالغة الخاطئة؟">
688
+
689
+ لأن طلب الجزء لم يحمل أي locale. طلبات htmx مستقلة عن الصفحة التي أصدرتها، لذا يجب أن ينتقل locale عليها، من خلال ملف تعريف الارتباط `INTLAYER_LOCALE` أو رأس `x-intlayer-locale` معين مع `hx-headers`. تحقق من أن محلل ملفات تعريف الارتباط يعمل قبل middleware الـ Intlayer على Express و Fastify، وإلا فلن يتم قراءة ملف تعريف الارتباط أبداً وسيعود كل طلب إلى `Accept-Language`.
690
+
691
+ </Question>
692
+
693
+ <Question title="هل يجب أن أمرر locale إلى `getIntlayer` أم الاعتماد على سياق الطلب؟">
694
+
695
+ مررها. التكاملات تكشف عن locale المحلول (`res.locals.locale`, `req.intlayer.locale`, `c.get("locale")`, `intlayer!.locale`)، وتمريره إلى `getIntlayer` يجعل كل renderer دالة نقية من locale. هذا أسهل للاختبار، ويحافظ على portability لـ fragment renderers الخاصة بك إذا قمت بتغيير الخادم.
696
+
697
+ </Question>
698
+
699
+ <Question title="هل أحتاج إلى مكتبة i18n على جانب العميل بجانب htmx؟">
700
+
701
+ لا. كل شيء يراه الزائر يتم إنتاجه بواسطة الخادم، لذا لا يوجد شيء للترجمة في المتصفح. هذا أيضاً هو السبب في أن تكلفة وزن الصفحة للـ i18n في تطبيق htmx قريبة جداً من الصفر: لا يتم إرسال أي كتالوج إلى العميل أبداً.
702
+
703
+ </Question>
704
+
705
+ <Question title="كيف أقوم بتحديد موقع جغرافي للـ URL أيضاً، لأغراض SEO؟">
706
+
707
+ قدم صفحاتك تحت بادئة لغة (`/fr/cart`) واقرأ اللغة من المسار في معالج المسار الخاص بك، بدلاً من ملف تعريف الارتباط، لعرض الصفحة الكاملة. يمكن للأجزاء أن تستمر في استخدام ملف تعريف الارتباط أو رأس الطلب. انظر إلى [المكونات الإضافية للإعدادات](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/configuration.md) لخيارات التوجيه و[إعادات كتابة عناوين URL المخصصة](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/custom_url_rewrites.md).
708
+
709
+ </Question>
710
+
711
+ <Question title="كيف أتعامل مع اللغات من اليمين إلى اليسار؟">
712
+
713
+ `getHTMLTextDir(locale)` يُرجع `ltr` أو `rtl` أو `auto`. قم بتعيينه على المستند للعرض الأولي، وأعد تطبيقه بعد التبديل كما توضح الخطوة 8. استخدم خصائص CSS المنطقية (`margin-inline-start` بدلاً من `margin-left`) حتى يتبع تخطيطك.
714
+
715
+ </Question>
716
+
717
+ <Question title="هل يجب أن أهرب من القيم المترجمة؟">
718
+
719
+ نعم، لأي شيء تقحمه في سلسلة نص template، تماماً كما هو الحال مع أي قيمة ديناميكية أخرى. المحتوى القادم من CMS أو من مترجم ليس markup تتحكم فيه. الخطوة 5 توضح escaper بسيط.
720
+
721
+ </Question>
722
+
723
+ <Question title="هل يمكن للمحتوى نفسه أن يخدم استجابات API الخاصة بي أيضاً؟">
724
+
725
+ نعم. تعرض تكاملات الـ backend `t()` و `getIntlayer()` لأي معالج، لذلك رسالة خطأ معروضة في toast ونص معروض في fragment يأتيان من نفس المحتوى المُعلَّن. انظر إلى أدلة [Express](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/intlayer_with_express.md) و [Fastify](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/intlayer_with_fastify.md) و [Hono](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/intlayer_with_hono.md) و [Elysia](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/intlayer_with_elysia.md).
726
+
727
+ </Question>
728
+
729
+ <Question title="هل يجب أن أنقل المحتوى الخاص بي مفتاحًا تلو الآخر؟">
730
+
731
+ لا. قم بتشغيل `npx intlayer extract` وسيقرأ Intlayer ملفات المصدر الخاصة بك، ويسحب السلاسل النصية الموجهة للمستخدم ويكتب ملف `.content` بجانب كل منها، بحيث تراجع diff بدلاً من نسخ السلاسل إلى كتالوج واحد تلو الآخر. انظر إلى [أمر الاستخراج](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/extract.md).
732
+
733
+ </Question>
734
+
735
+ <Question title="هل يمكنني الاحتفاظ بملفات الترجمة JSON الموجودة لدي؟">
736
+
737
+ نعم. تحافظ [مكونة مزامنة JSON](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/plugins/sync-json.md) على ملفات `/messages/{locale}/{namespace}.json` كمصدر الحقيقة وتُنشئ قواميس Intlayer منها، في كلا الاتجاهين. تقوم [مكونة مزامنة PO](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/plugins/sync-po.md) بنفس العمل بالنسبة لكتالوجات gettext، و[الملفات المقسمة حسب اللغة](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/per_locale_file.md) تتيح لك تقسيم المحتوى حسب اللغة بدلاً من تجميع اللغات في ملف واحد.
738
+
739
+ </Question>
740
+
741
+ <Question title="كيف أترجم التطبيق تلقائياً باستخدام الذكاء الاصطناعي؟">
742
+
743
+ قم بتشغيل `npx intlayer fill`، والذي يملأ الترجمات المفقودة باستخدام نموذج اللغة (LLM) من اختيارك باستخدام مزودك ومفتاح API الخاص بك. أضف `--git-diff` لترجمة المحتوى المتغير فقط على الفرع. اطلع على [أمر fill](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/cli/fill.md) و [تكامل CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/CI_CD.md).
744
+
745
+ </Question>
746
+
747
+ <Question title="هل يدعم Intlayer النوع الاجتماعي والشروط والقيم المُدرجة؟">
748
+
749
+ نعم: [محتوى قائم على النوع الاجتماعي](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dictionary/gender.md)، الشروط، [التعديلات](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dictionary/enumeration.md)، [الإدراجات](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/dictionary/insertion.md) للقيم المقحمة، و[المنسقات](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/formatters.md) للأرقام والتواريخ والعملات.
750
+
751
+ </Question>
752
+
753
+ <Question title="ما هي أدوات المحررات والوكلاء الذكيين المتاحة؟">
754
+
755
+ خمس قطع، كلها اختيارية:
756
+
757
+ - **[امتداد VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/vs_code_extension.md)**: الانتقال من مفتاح إلى ملف المحتوى الذي يصرح به، استخراج المحتوى من ملف، وتشغيل البناء والملء والاختبار والدفع والسحب من لوحة الأوامر.
758
+ - **[خادم LSP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/lsp.md)**: نفس الوعي في أي محرر يتحدث LSP، مع الانتقال إلى التعريف وعروض المحوم للقيمة المترجمة واكتمال المفاتيح التلقائي وتحذير عند عدم الإعلان عن مفتاح في أي مكان.
759
+ - **[خادم MCP](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/mcp_server.md)**: يكشف عن وثائق Intlayer و CLI إلى Cursor و VS Code و Claude Desktop و Claude Code و ChatGPT.
760
+ - **[Agent skills](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/agent_skills.md)**: مهارات موجهة مثل `intlayer-config` و `intlayer-cli` و `intlayer-content`.
761
+ - **[ESLint plugin](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/eslint.md)**: `no-raw-text` يوضح النصوص المشفرة بشكل ثابت.
762
+
763
+ </Question>
764
+
765
+ <Question title="هل Intlayer مجاني ومفتوح المصدر؟">
766
+
767
+ نعم، بموجب ترخيص Apache 2.0، بما في ذلك الاستخدام التجاري. [CMS](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/intlayer_CMS.md) المستضاف هو خدمة مدفوعة اختيارية يمكن أيضاً [استضافتها ذاتياً](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/self_hosting.md).
768
+
769
+ </Question>
770
+
771
+ </FAQ>