@modern-js/main-doc 2.59.0 → 2.60.1-alpha.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (414) hide show
  1. package/docs/en/_meta.json +10 -5
  2. package/docs/en/apis/app/hooks/api/lambda.mdx +4 -48
  3. package/docs/en/apis/app/hooks/api/middleware.mdx +11 -0
  4. package/docs/en/community/blog/v2-release-note.mdx +1 -1
  5. package/docs/en/community/contributing-guide.mdx +0 -1
  6. package/docs/en/components/builder.mdx +3 -0
  7. package/docs/en/components/bundler.mdx +3 -0
  8. package/docs/en/components/enable-bff.mdx +19 -2
  9. package/docs/en/components/enableSwc.mdx +17 -0
  10. package/docs/en/components/esbuild.mdx +3 -0
  11. package/docs/en/components/extend-bff-function.mdx +5 -0
  12. package/docs/en/components/micro-frontend.mdx +6 -0
  13. package/docs/en/components/module-federation.mdx +7 -0
  14. package/docs/en/components/nodeVersion.mdx +26 -0
  15. package/docs/en/components/other-plugins.mdx +0 -0
  16. package/docs/en/components/output-asset-prefix-extend.mdx +0 -0
  17. package/docs/en/components/output-polyfill-extend.mdx +0 -0
  18. package/docs/en/components/prerequisites.mdx +1 -1
  19. package/docs/en/components/rsbuild-config-tooltip.mdx +5 -0
  20. package/docs/en/components/rsbuild.mdx +3 -0
  21. package/docs/en/components/rspack.mdx +3 -0
  22. package/docs/en/components/rspackPrecautions.mdx +6 -0
  23. package/docs/en/components/rspackTip.mdx +7 -0
  24. package/docs/en/components/swc.mdx +3 -0
  25. package/docs/en/configure/app/auto-load-plugin.mdx +4 -0
  26. package/docs/en/configure/app/dev/asset-prefix.mdx +12 -2
  27. package/docs/en/configure/app/dev/before-start-url.mdx +14 -2
  28. package/docs/en/configure/app/dev/client.mdx +20 -16
  29. package/docs/en/configure/app/dev/hmr.mdx +8 -2
  30. package/docs/en/configure/app/dev/host.mdx +15 -2
  31. package/docs/en/configure/app/dev/https.mdx +71 -2
  32. package/docs/en/configure/app/dev/live-reload.mdx +3 -15
  33. package/docs/en/configure/app/dev/port.mdx +18 -2
  34. package/docs/en/configure/app/dev/progress-bar.mdx +17 -2
  35. package/docs/en/configure/app/dev/setup-middlewares.mdx +25 -39
  36. package/docs/en/configure/app/dev/start-url.mdx +46 -2
  37. package/docs/en/configure/app/dev/watch-files.mdx +5 -39
  38. package/docs/en/configure/app/dev/write-to-disk.mdx +4 -27
  39. package/docs/en/configure/app/experiments/lazy-compilation.mdx +84 -2
  40. package/docs/en/configure/app/experiments/source-build.mdx +28 -3
  41. package/docs/en/configure/app/html/app-icon.mdx +48 -2
  42. package/docs/en/configure/app/html/crossorigin.mdx +8 -2
  43. package/docs/en/configure/app/html/disable-html-folder.mdx +35 -2
  44. package/docs/en/configure/app/html/favicon-by-entries.mdx +29 -2
  45. package/docs/en/configure/app/html/favicon.mdx +14 -2
  46. package/docs/en/configure/app/html/inject-by-entries.mdx +29 -2
  47. package/docs/en/configure/app/html/inject.mdx +8 -2
  48. package/docs/en/configure/app/html/meta-by-entries.mdx +41 -2
  49. package/docs/en/configure/app/html/meta.mdx +22 -2
  50. package/docs/en/configure/app/html/mount-id.mdx +8 -2
  51. package/docs/en/configure/app/html/script-loading.mdx +8 -2
  52. package/docs/en/configure/app/html/tags-by-entries.mdx +37 -2
  53. package/docs/en/configure/app/html/tags.mdx +13 -2
  54. package/docs/en/configure/app/html/template-by-entries.mdx +26 -2
  55. package/docs/en/configure/app/html/template-parameters-by-entries.mdx +28 -2
  56. package/docs/en/configure/app/html/template-parameters.mdx +31 -2
  57. package/docs/en/configure/app/html/template.mdx +8 -2
  58. package/docs/en/configure/app/html/title-by-entries.mdx +30 -2
  59. package/docs/en/configure/app/html/title.mdx +16 -2
  60. package/docs/en/configure/app/output/asset-prefix.mdx +12 -2
  61. package/docs/en/configure/app/output/assets-retry.mdx +72 -2
  62. package/docs/en/configure/app/output/charset.mdx +8 -2
  63. package/docs/en/configure/app/output/clean-dist-path.mdx +13 -2
  64. package/docs/en/configure/app/output/convert-to-rem.mdx +76 -2
  65. package/docs/en/configure/app/output/copy.mdx +5 -2
  66. package/docs/en/configure/app/output/css-module-local-ident-name.mdx +14 -2
  67. package/docs/en/configure/app/output/css-modules.mdx +46 -2
  68. package/docs/en/configure/app/output/data-uri-limit.mdx +24 -2
  69. package/docs/en/configure/app/output/disable-css-extract.mdx +9 -2
  70. package/docs/en/configure/app/output/disable-css-module-extension.mdx +52 -2
  71. package/docs/en/configure/app/output/disable-filename-hash.mdx +9 -2
  72. package/docs/en/configure/app/output/disable-inline-runtime-chunk.mdx +38 -2
  73. package/docs/en/configure/app/output/disable-minimize.mdx +7 -2
  74. package/docs/en/configure/app/output/disable-source-map.mdx +24 -2
  75. package/docs/en/configure/app/output/disable-svgr.mdx +13 -2
  76. package/docs/en/configure/app/output/disable-ts-checker.mdx +46 -2
  77. package/docs/en/configure/app/output/dist-path.mdx +39 -2
  78. package/docs/en/configure/app/output/enable-asset-fallback.mdx +29 -2
  79. package/docs/en/configure/app/output/enable-asset-manifest.mdx +33 -2
  80. package/docs/en/configure/app/output/enable-css-module-tsdeclaration.mdx +25 -2
  81. package/docs/en/configure/app/output/enable-inline-scripts.mdx +15 -2
  82. package/docs/en/configure/app/output/enable-inline-styles.mdx +15 -2
  83. package/docs/en/configure/app/output/enable-latest-decorators.mdx +7 -2
  84. package/docs/en/configure/app/output/externals.mdx +18 -2
  85. package/docs/en/configure/app/output/filename-hash.mdx +3 -27
  86. package/docs/en/configure/app/output/filename.mdx +47 -2
  87. package/docs/en/configure/app/output/inject-styles.mdx +15 -0
  88. package/docs/en/configure/app/output/inline-scripts.mdx +34 -0
  89. package/docs/en/configure/app/output/inline-styles.mdx +34 -0
  90. package/docs/en/configure/app/output/legal-comments.mdx +16 -2
  91. package/docs/en/configure/app/output/minify.mdx +27 -0
  92. package/docs/en/configure/app/output/override-browserslist.mdx +18 -2
  93. package/docs/en/configure/app/output/polyfill.mdx +12 -2
  94. package/docs/en/configure/app/output/source-map.mdx +30 -0
  95. package/docs/en/configure/app/output/ssg.mdx +20 -17
  96. package/docs/en/configure/app/output/svg-default-export.mdx +27 -2
  97. package/docs/en/configure/app/performance/build-cache.mdx +78 -2
  98. package/docs/en/configure/app/performance/bundle-analyze.mdx +18 -2
  99. package/docs/en/configure/app/performance/chunk-split.mdx +38 -2
  100. package/docs/en/configure/app/performance/dns-prefetch.mdx +13 -2
  101. package/docs/en/configure/app/performance/preconnect.mdx +14 -2
  102. package/docs/en/configure/app/performance/prefetch.mdx +19 -2
  103. package/docs/en/configure/app/performance/preload.mdx +21 -2
  104. package/docs/en/configure/app/performance/print-file-size.mdx +38 -2
  105. package/docs/en/configure/app/performance/profile.mdx +8 -2
  106. package/docs/en/configure/app/performance/remove-console.mdx +8 -2
  107. package/docs/en/configure/app/performance/remove-moment-locale.mdx +8 -2
  108. package/docs/en/configure/app/performance/transform-lodash.mdx +42 -2
  109. package/docs/en/configure/app/plugins.mdx +3 -3
  110. package/docs/en/configure/app/security/check-syntax.mdx +66 -2
  111. package/docs/en/configure/app/security/nonce.mdx +13 -2
  112. package/docs/en/configure/app/security/sri.mdx +19 -2
  113. package/docs/en/configure/app/server/port.mdx +5 -0
  114. package/docs/en/configure/app/server/ssr.mdx +10 -9
  115. package/docs/en/configure/app/source/alias-strategy.mdx +8 -2
  116. package/docs/en/configure/app/source/alias.mdx +17 -2
  117. package/docs/en/configure/app/source/config-dir.mdx +1 -1
  118. package/docs/en/configure/app/source/decorators.mdx +8 -21
  119. package/docs/en/configure/app/source/define.mdx +14 -2
  120. package/docs/en/configure/app/source/enable-async-entry.mdx +1 -1
  121. package/docs/en/configure/app/source/entries-dir.mdx +1 -1
  122. package/docs/en/configure/app/source/exclude.mdx +8 -2
  123. package/docs/en/configure/app/source/global-vars.mdx +103 -2
  124. package/docs/en/configure/app/source/include.mdx +19 -2
  125. package/docs/en/configure/app/source/mainEntryName.mdx +1 -1
  126. package/docs/en/configure/app/source/module-scopes.mdx +62 -2
  127. package/docs/en/configure/app/source/pre-entry.mdx +8 -2
  128. package/docs/en/configure/app/source/resolve-extension-prefix.mdx +48 -2
  129. package/docs/en/configure/app/source/resolve-main-fields.mdx +39 -2
  130. package/docs/en/configure/app/source/transform-import.mdx +56 -2
  131. package/docs/en/configure/app/tools/autoprefixer.mdx +41 -2
  132. package/docs/en/configure/app/tools/babel.mdx +218 -2
  133. package/docs/en/configure/app/tools/bundler-chain.mdx +23 -2
  134. package/docs/en/configure/app/tools/css-extract.mdx +31 -2
  135. package/docs/en/configure/app/tools/css-loader.mdx +14 -2
  136. package/docs/en/configure/app/tools/dev-server.mdx +435 -2
  137. package/docs/en/configure/app/tools/esbuild.mdx +2 -2
  138. package/docs/en/configure/app/tools/html-plugin.mdx +21 -2
  139. package/docs/en/configure/app/tools/less.mdx +78 -2
  140. package/docs/en/configure/app/tools/minify-css.mdx +50 -2
  141. package/docs/en/configure/app/tools/postcss.mdx +30 -2
  142. package/docs/en/configure/app/tools/pug.mdx +47 -2
  143. package/docs/en/configure/app/tools/rspack.mdx +8 -2
  144. package/docs/en/configure/app/tools/sass.mdx +75 -2
  145. package/docs/en/configure/app/tools/style-loader.mdx +8 -2
  146. package/docs/en/configure/app/tools/styled-components.mdx +48 -2
  147. package/docs/en/configure/app/tools/swc.mdx +34 -3
  148. package/docs/en/configure/app/tools/terser.mdx +49 -2
  149. package/docs/en/configure/app/tools/ts-checker.mdx +49 -2
  150. package/docs/en/configure/app/tools/ts-loader.mdx +63 -2
  151. package/docs/en/configure/app/tools/webpack-chain.mdx +239 -2
  152. package/docs/en/configure/app/tools/webpack.mdx +295 -2
  153. package/docs/en/guides/_meta.json +0 -5
  154. package/docs/en/guides/advanced-features/_meta.json +7 -5
  155. package/docs/en/guides/advanced-features/bff/_meta.json +1 -1
  156. package/docs/en/guides/advanced-features/bff/extend-server.mdx +154 -0
  157. package/docs/en/guides/advanced-features/bff/frameworks.mdx +52 -123
  158. package/docs/en/guides/advanced-features/bff/function.mdx +108 -80
  159. package/docs/en/guides/advanced-features/bff/sdk.mdx +40 -51
  160. package/docs/en/guides/advanced-features/build-performance.mdx +6 -21
  161. package/docs/en/guides/advanced-features/page-performance/_meta.json +1 -0
  162. package/docs/en/guides/advanced-features/rspack-start.mdx +2 -2
  163. package/docs/en/guides/basic-features/css/css-modules.mdx +2 -2
  164. package/docs/en/guides/basic-features/output-files.mdx +1 -1
  165. package/docs/en/guides/basic-features/render/ssg.mdx +1 -1
  166. package/docs/en/guides/basic-features/render/streaming-ssr.mdx +1 -1
  167. package/docs/en/guides/basic-features/routes.mdx +2 -3
  168. package/docs/en/guides/basic-features/static-assets.mdx +1 -1
  169. package/docs/en/guides/concept/builder.mdx +1 -1
  170. package/docs/en/guides/deprecated.md +2 -0
  171. package/docs/en/guides/get-started/glossary.mdx +7 -7
  172. package/docs/en/guides/get-started/quick-start.mdx +1 -1
  173. package/docs/en/guides/topic-detail/_meta.json +0 -6
  174. package/docs/en/guides/topic-detail/micro-frontend/c01-introduction.mdx +1 -1
  175. package/docs/en/guides/troubleshooting/builder.mdx +2 -2
  176. package/docs/en/plugin/_meta.json +19 -0
  177. package/docs/en/plugin/cli-plugins/_meta.json +1 -0
  178. package/docs/en/plugin/cli-plugins/plugin-bff.mdx +5 -0
  179. package/docs/en/plugin/cli-plugins/plugin-ssg.mdx +5 -0
  180. package/docs/en/{guides/rsbuild-plugins → plugin/cli-plugins}/plugin-swc.mdx +11 -4
  181. package/docs/en/plugin/cli-plugins/plugin-tailwind.mdx +5 -0
  182. package/docs/en/plugin/cli-plugins.mdx +6 -0
  183. package/docs/en/{guides/advanced-features/rsbuild-plugin.mdx → plugin/introduction.mdx} +34 -9
  184. package/docs/en/{guides/topic-detail/framework-plugin → plugin/plugin-system}/extend.mdx +1 -1
  185. package/docs/en/{guides/topic-detail/framework-plugin → plugin/plugin-system}/implement.mdx +3 -3
  186. package/docs/en/{guides/topic-detail/framework-plugin → plugin/plugin-system}/plugin-api.mdx +2 -2
  187. package/docs/en/plugin/rsbuild-plugins/_meta.json +1 -0
  188. package/docs/en/{guides → plugin}/rsbuild-plugins/plugin-esbuild.mdx +4 -4
  189. package/docs/en/plugin/rsbuild-plugins.mdx +3 -0
  190. package/docs/zh/_meta.json +10 -5
  191. package/docs/zh/apis/app/hooks/api/lambda.mdx +5 -48
  192. package/docs/zh/apis/app/hooks/api/middleware.mdx +11 -0
  193. package/docs/zh/community/blog/v2-release-note.mdx +1 -1
  194. package/docs/zh/community/contributing-guide.mdx +0 -1
  195. package/docs/zh/components/builder.mdx +3 -0
  196. package/docs/zh/components/bundler.mdx +4 -0
  197. package/docs/zh/components/enable-bff.mdx +19 -2
  198. package/docs/zh/components/enableSwc.mdx +17 -0
  199. package/docs/zh/components/esbuild.mdx +3 -0
  200. package/docs/zh/components/extend-bff-function.mdx +5 -0
  201. package/docs/zh/components/micro-frontend.mdx +6 -0
  202. package/docs/zh/components/module-federation.mdx +7 -0
  203. package/docs/zh/components/nodeVersion.mdx +28 -0
  204. package/docs/zh/components/other-plugins.mdx +0 -0
  205. package/docs/zh/components/output-asset-prefix-extend.mdx +0 -0
  206. package/docs/zh/components/output-polyfill-extend.mdx +0 -0
  207. package/docs/zh/components/prerequisites.mdx +1 -1
  208. package/docs/zh/components/rsbuild-config-tooltip.mdx +5 -0
  209. package/docs/zh/components/rsbuild.mdx +3 -0
  210. package/docs/zh/components/rspack.mdx +3 -0
  211. package/docs/zh/components/rspackPrecautions.mdx +6 -0
  212. package/docs/zh/components/rspackTip.mdx +7 -0
  213. package/docs/zh/components/swc.mdx +3 -0
  214. package/docs/zh/configure/app/auto-load-plugin.mdx +4 -0
  215. package/docs/zh/configure/app/dev/asset-prefix.mdx +12 -2
  216. package/docs/zh/configure/app/dev/before-start-url.mdx +14 -2
  217. package/docs/zh/configure/app/dev/client.mdx +20 -16
  218. package/docs/zh/configure/app/dev/hmr.mdx +8 -2
  219. package/docs/zh/configure/app/dev/host.mdx +15 -2
  220. package/docs/zh/configure/app/dev/https.mdx +72 -2
  221. package/docs/zh/configure/app/dev/live-reload.mdx +3 -15
  222. package/docs/zh/configure/app/dev/port.mdx +18 -2
  223. package/docs/zh/configure/app/dev/progress-bar.mdx +17 -2
  224. package/docs/zh/configure/app/dev/setup-middlewares.mdx +26 -39
  225. package/docs/zh/configure/app/dev/start-url.mdx +47 -2
  226. package/docs/zh/configure/app/dev/watch-files.mdx +5 -39
  227. package/docs/zh/configure/app/dev/write-to-disk.mdx +3 -26
  228. package/docs/zh/configure/app/experiments/lazy-compilation.mdx +84 -2
  229. package/docs/zh/configure/app/experiments/source-build.mdx +29 -2
  230. package/docs/zh/configure/app/html/app-icon.mdx +48 -2
  231. package/docs/zh/configure/app/html/crossorigin.mdx +9 -2
  232. package/docs/zh/configure/app/html/disable-html-folder.mdx +34 -2
  233. package/docs/zh/configure/app/html/favicon-by-entries.mdx +30 -2
  234. package/docs/zh/configure/app/html/favicon.mdx +15 -2
  235. package/docs/zh/configure/app/html/inject-by-entries.mdx +30 -2
  236. package/docs/zh/configure/app/html/inject.mdx +8 -2
  237. package/docs/zh/configure/app/html/meta-by-entries.mdx +41 -2
  238. package/docs/zh/configure/app/html/meta.mdx +22 -2
  239. package/docs/zh/configure/app/html/mount-id.mdx +8 -2
  240. package/docs/zh/configure/app/html/script-loading.mdx +8 -2
  241. package/docs/zh/configure/app/html/tags-by-entries.mdx +37 -2
  242. package/docs/zh/configure/app/html/tags.mdx +13 -2
  243. package/docs/zh/configure/app/html/template-by-entries.mdx +26 -2
  244. package/docs/zh/configure/app/html/template-parameters-by-entries.mdx +29 -2
  245. package/docs/zh/configure/app/html/template-parameters.mdx +31 -2
  246. package/docs/zh/configure/app/html/template.mdx +8 -2
  247. package/docs/zh/configure/app/html/title-by-entries.mdx +30 -2
  248. package/docs/zh/configure/app/html/title.mdx +16 -2
  249. package/docs/zh/configure/app/output/asset-prefix.mdx +12 -2
  250. package/docs/zh/configure/app/output/assets-retry.mdx +72 -2
  251. package/docs/zh/configure/app/output/charset.mdx +8 -2
  252. package/docs/zh/configure/app/output/clean-dist-path.mdx +13 -2
  253. package/docs/zh/configure/app/output/convert-to-rem.mdx +77 -2
  254. package/docs/zh/configure/app/output/copy.mdx +6 -2
  255. package/docs/zh/configure/app/output/css-module-local-ident-name.mdx +14 -2
  256. package/docs/zh/configure/app/output/css-modules.mdx +46 -2
  257. package/docs/zh/configure/app/output/data-uri-limit.mdx +24 -2
  258. package/docs/zh/configure/app/output/disable-css-extract.mdx +9 -2
  259. package/docs/zh/configure/app/output/disable-css-module-extension.mdx +52 -2
  260. package/docs/zh/configure/app/output/disable-filename-hash.mdx +9 -2
  261. package/docs/zh/configure/app/output/disable-inline-runtime-chunk.mdx +38 -2
  262. package/docs/zh/configure/app/output/disable-minimize.mdx +7 -2
  263. package/docs/zh/configure/app/output/disable-source-map.mdx +24 -2
  264. package/docs/zh/configure/app/output/disable-svgr.mdx +14 -2
  265. package/docs/zh/configure/app/output/disable-ts-checker.mdx +46 -2
  266. package/docs/zh/configure/app/output/dist-path.mdx +39 -2
  267. package/docs/zh/configure/app/output/enable-asset-fallback.mdx +29 -2
  268. package/docs/zh/configure/app/output/enable-asset-manifest.mdx +33 -2
  269. package/docs/zh/configure/app/output/enable-css-module-tsdeclaration.mdx +25 -2
  270. package/docs/zh/configure/app/output/enable-inline-scripts.mdx +15 -2
  271. package/docs/zh/configure/app/output/enable-inline-styles.mdx +15 -2
  272. package/docs/zh/configure/app/output/enable-latest-decorators.mdx +7 -2
  273. package/docs/zh/configure/app/output/externals.mdx +18 -2
  274. package/docs/zh/configure/app/output/filename-hash.mdx +4 -27
  275. package/docs/zh/configure/app/output/filename.mdx +47 -2
  276. package/docs/zh/configure/app/output/inject-styles.mdx +15 -0
  277. package/docs/zh/configure/app/output/inline-scripts.mdx +34 -0
  278. package/docs/zh/configure/app/output/inline-styles.mdx +34 -0
  279. package/docs/zh/configure/app/output/legal-comments.mdx +16 -2
  280. package/docs/zh/configure/app/output/minify.mdx +27 -0
  281. package/docs/zh/configure/app/output/override-browserslist.mdx +20 -2
  282. package/docs/zh/configure/app/output/polyfill.mdx +12 -2
  283. package/docs/zh/configure/app/output/source-map.mdx +30 -0
  284. package/docs/zh/configure/app/output/ssg.mdx +19 -15
  285. package/docs/zh/configure/app/output/svg-default-export.mdx +27 -2
  286. package/docs/zh/configure/app/performance/build-cache.mdx +77 -2
  287. package/docs/zh/configure/app/performance/bundle-analyze.mdx +18 -2
  288. package/docs/zh/configure/app/performance/chunk-split.mdx +38 -2
  289. package/docs/zh/configure/app/performance/dns-prefetch.mdx +13 -2
  290. package/docs/zh/configure/app/performance/preconnect.mdx +14 -2
  291. package/docs/zh/configure/app/performance/prefetch.mdx +19 -2
  292. package/docs/zh/configure/app/performance/preload.mdx +21 -2
  293. package/docs/zh/configure/app/performance/print-file-size.mdx +38 -2
  294. package/docs/zh/configure/app/performance/profile.mdx +8 -2
  295. package/docs/zh/configure/app/performance/remove-console.mdx +8 -2
  296. package/docs/zh/configure/app/performance/remove-moment-locale.mdx +8 -2
  297. package/docs/zh/configure/app/performance/transform-lodash.mdx +42 -2
  298. package/docs/zh/configure/app/plugins.mdx +3 -3
  299. package/docs/zh/configure/app/security/check-syntax.mdx +66 -2
  300. package/docs/zh/configure/app/security/nonce.mdx +13 -2
  301. package/docs/zh/configure/app/security/sri.mdx +19 -2
  302. package/docs/zh/configure/app/server/port.mdx +5 -0
  303. package/docs/zh/configure/app/server/ssr.mdx +10 -9
  304. package/docs/zh/configure/app/source/alias-strategy.mdx +8 -2
  305. package/docs/zh/configure/app/source/alias.mdx +17 -2
  306. package/docs/zh/configure/app/source/config-dir.mdx +1 -1
  307. package/docs/zh/configure/app/source/decorators.mdx +8 -20
  308. package/docs/zh/configure/app/source/define.mdx +14 -2
  309. package/docs/zh/configure/app/source/enable-async-entry.mdx +1 -1
  310. package/docs/zh/configure/app/source/entries-dir.mdx +1 -1
  311. package/docs/zh/configure/app/source/exclude.mdx +8 -2
  312. package/docs/zh/configure/app/source/global-vars.mdx +102 -2
  313. package/docs/zh/configure/app/source/include.mdx +19 -2
  314. package/docs/zh/configure/app/source/mainEntryName.mdx +1 -1
  315. package/docs/zh/configure/app/source/module-scopes.mdx +62 -2
  316. package/docs/zh/configure/app/source/pre-entry.mdx +8 -2
  317. package/docs/zh/configure/app/source/resolve-extension-prefix.mdx +50 -2
  318. package/docs/zh/configure/app/source/resolve-main-fields.mdx +39 -2
  319. package/docs/zh/configure/app/source/transform-import.mdx +56 -2
  320. package/docs/zh/configure/app/tools/autoprefixer.mdx +41 -2
  321. package/docs/zh/configure/app/tools/babel.mdx +218 -2
  322. package/docs/zh/configure/app/tools/bundler-chain.mdx +26 -2
  323. package/docs/zh/configure/app/tools/css-extract.mdx +28 -2
  324. package/docs/zh/configure/app/tools/css-loader.mdx +15 -2
  325. package/docs/zh/configure/app/tools/dev-server.mdx +435 -2
  326. package/docs/zh/configure/app/tools/esbuild.mdx +2 -2
  327. package/docs/zh/configure/app/tools/html-plugin.mdx +21 -2
  328. package/docs/zh/configure/app/tools/less.mdx +79 -2
  329. package/docs/zh/configure/app/tools/minify-css.mdx +50 -2
  330. package/docs/zh/configure/app/tools/postcss.mdx +31 -2
  331. package/docs/zh/configure/app/tools/pug.mdx +47 -2
  332. package/docs/zh/configure/app/tools/rspack.mdx +8 -2
  333. package/docs/zh/configure/app/tools/sass.mdx +73 -2
  334. package/docs/zh/configure/app/tools/style-loader.mdx +8 -2
  335. package/docs/zh/configure/app/tools/styled-components.mdx +47 -2
  336. package/docs/zh/configure/app/tools/swc.mdx +34 -3
  337. package/docs/zh/configure/app/tools/terser.mdx +49 -2
  338. package/docs/zh/configure/app/tools/ts-checker.mdx +49 -2
  339. package/docs/zh/configure/app/tools/ts-loader.mdx +63 -2
  340. package/docs/zh/configure/app/tools/webpack-chain.mdx +243 -2
  341. package/docs/zh/configure/app/tools/webpack.mdx +295 -2
  342. package/docs/zh/guides/_meta.json +0 -5
  343. package/docs/zh/guides/advanced-features/_meta.json +7 -5
  344. package/docs/zh/guides/advanced-features/bff/_meta.json +1 -1
  345. package/docs/zh/guides/advanced-features/bff/extend-server.mdx +156 -0
  346. package/docs/zh/guides/advanced-features/bff/frameworks.mdx +51 -117
  347. package/docs/zh/guides/advanced-features/bff/function.mdx +69 -59
  348. package/docs/zh/guides/advanced-features/bff/sdk.mdx +27 -36
  349. package/docs/zh/guides/advanced-features/build-performance.mdx +6 -21
  350. package/docs/zh/guides/advanced-features/page-performance/_meta.json +1 -0
  351. package/docs/zh/guides/advanced-features/rspack-start.mdx +4 -4
  352. package/docs/zh/guides/basic-features/alias.mdx +5 -11
  353. package/docs/zh/guides/basic-features/css/css-modules.mdx +1 -1
  354. package/docs/zh/guides/basic-features/env-vars.mdx +1 -1
  355. package/docs/zh/guides/basic-features/output-files.mdx +2 -2
  356. package/docs/zh/guides/basic-features/routes.mdx +1 -2
  357. package/docs/zh/guides/basic-features/static-assets.mdx +1 -1
  358. package/docs/zh/guides/concept/builder.mdx +1 -1
  359. package/docs/zh/guides/deprecated.md +4 -0
  360. package/docs/zh/guides/get-started/glossary.mdx +7 -7
  361. package/docs/zh/guides/get-started/quick-start.mdx +1 -1
  362. package/docs/zh/guides/topic-detail/_meta.json +0 -6
  363. package/docs/zh/guides/topic-detail/micro-frontend/c01-introduction.mdx +1 -1
  364. package/docs/zh/guides/troubleshooting/builder.mdx +2 -2
  365. package/docs/zh/plugin/_meta.json +19 -0
  366. package/docs/zh/plugin/cli-plugins/_meta.json +1 -0
  367. package/docs/zh/plugin/cli-plugins/plugin-bff.mdx +5 -0
  368. package/docs/zh/plugin/cli-plugins/plugin-ssg.mdx +5 -0
  369. package/docs/zh/{guides/rsbuild-plugins → plugin/cli-plugins}/plugin-swc.mdx +11 -4
  370. package/docs/zh/plugin/cli-plugins/plugin-tailwind.mdx +5 -0
  371. package/docs/zh/plugin/cli-plugins.mdx +6 -0
  372. package/docs/zh/{guides/advanced-features/rsbuild-plugin.mdx → plugin/introduction.mdx} +36 -11
  373. package/docs/zh/{guides/topic-detail/framework-plugin → plugin/plugin-system}/extend.mdx +1 -1
  374. package/docs/zh/{guides/topic-detail/framework-plugin → plugin/plugin-system}/implement.mdx +3 -3
  375. package/docs/zh/{guides/topic-detail/framework-plugin → plugin/plugin-system}/plugin-api.mdx +2 -2
  376. package/docs/zh/plugin/rsbuild-plugins/_meta.json +1 -0
  377. package/docs/zh/{guides → plugin}/rsbuild-plugins/plugin-esbuild.mdx +6 -6
  378. package/docs/zh/plugin/rsbuild-plugins.mdx +4 -0
  379. package/i18n.json +27 -3
  380. package/package.json +8 -13
  381. package/rspress.config.ts +1 -58
  382. package/src/components/Footer/index.tsx +1 -1
  383. package/src/components/RsbuildLink/index.tsx +19 -0
  384. package/src/pages/index.tsx +0 -1
  385. package/docs/en/apis/app/hooks/api/api.mdx +0 -80
  386. package/docs/en/apis/app/hooks/api/app.mdx +0 -12
  387. package/docs/en/guides/advanced-features/bff/type.mdx +0 -46
  388. package/docs/en/guides/advanced-features/eslint.mdx +0 -148
  389. package/docs/zh/apis/app/hooks/api/api.mdx +0 -81
  390. package/docs/zh/apis/app/hooks/api/app.mdx +0 -12
  391. package/docs/zh/guides/advanced-features/bff/type.mdx +0 -46
  392. package/docs/zh/guides/advanced-features/eslint.mdx +0 -152
  393. /package/docs/en/configure/app/output/{splitRouteChunks.mdx → split-route-chunks.mdx} +0 -0
  394. /package/docs/en/guides/advanced-features/{bff/index.mdx → bff.mdx} +0 -0
  395. /package/docs/en/guides/advanced-features/{code-split.mdx → page-performance/code-split.mdx} +0 -0
  396. /package/docs/en/guides/advanced-features/{inline-assets.mdx → page-performance/inline-assets.mdx} +0 -0
  397. /package/docs/en/guides/advanced-features/{optimize-bundle.mdx → page-performance/optimize-bundle.mdx} +0 -0
  398. /package/docs/en/{guides/topic-detail/framework-plugin → plugin/plugin-system}/_meta.json +0 -0
  399. /package/docs/en/{guides/topic-detail/framework-plugin → plugin/plugin-system}/hook-list.mdx +0 -0
  400. /package/docs/en/{guides/topic-detail/framework-plugin → plugin/plugin-system}/hook.mdx +0 -0
  401. /package/docs/en/{guides/topic-detail/framework-plugin → plugin/plugin-system}/introduction.mdx +0 -0
  402. /package/docs/en/{guides/topic-detail/framework-plugin → plugin/plugin-system}/lifecycle.mdx +0 -0
  403. /package/docs/en/{guides/topic-detail/framework-plugin → plugin/plugin-system}/relationship.mdx +0 -0
  404. /package/docs/zh/configure/app/output/{splitRouteChunks.mdx → split-route-chunks.mdx} +0 -0
  405. /package/docs/zh/guides/advanced-features/{bff/index.mdx → bff.mdx} +0 -0
  406. /package/docs/zh/guides/advanced-features/{code-split.mdx → page-performance/code-split.mdx} +0 -0
  407. /package/docs/zh/guides/advanced-features/{inline-assets.mdx → page-performance/inline-assets.mdx} +0 -0
  408. /package/docs/zh/guides/advanced-features/{optimize-bundle.mdx → page-performance/optimize-bundle.mdx} +0 -0
  409. /package/docs/zh/{guides/topic-detail/framework-plugin → plugin/plugin-system}/_meta.json +0 -0
  410. /package/docs/zh/{guides/topic-detail/framework-plugin → plugin/plugin-system}/hook-list.mdx +0 -0
  411. /package/docs/zh/{guides/topic-detail/framework-plugin → plugin/plugin-system}/hook.mdx +0 -0
  412. /package/docs/zh/{guides/topic-detail/framework-plugin → plugin/plugin-system}/introduction.mdx +0 -0
  413. /package/docs/zh/{guides/topic-detail/framework-plugin → plugin/plugin-system}/lifecycle.mdx +0 -0
  414. /package/docs/zh/{guides/topic-detail/framework-plugin → plugin/plugin-system}/relationship.mdx +0 -0
@@ -1,9 +1,15 @@
1
1
  ---
2
2
  title: mountId
3
+ configName: html.mountId
3
4
  ---
4
5
 
5
6
  # html.mountId
6
7
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/html/mountId.md';
8
+ - **Type:** `string`
9
+ - **Default:** `'root'`
8
10
 
9
- <Main />
11
+ By default, the `root` element is included in the HTML template for component mounting, and the element id can be modified through `mountId`.
12
+
13
+ import RsbuildConig from '@site-docs-en/components/rsbuild-config-tooltip';
14
+
15
+ <RsbuildConig />
@@ -1,9 +1,15 @@
1
1
  ---
2
2
  title: scriptLoading
3
+ configName: html.scriptLoading
3
4
  ---
4
5
 
5
6
  # html.scriptLoading
6
7
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/html/scriptLoading.md';
8
+ - **Type:** `'defer' | 'blocking' | 'module'`
9
+ - **Default:** `'defer'`
8
10
 
9
- <Main />
11
+ Used to set how `<script>` tags are loaded.
12
+
13
+ import RsbuildConig from '@site-docs-en/components/rsbuild-config-tooltip';
14
+
15
+ <RsbuildConig />
@@ -4,6 +4,41 @@ title: tagsByEntries
4
4
 
5
5
  # html.tagsByEntries
6
6
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/html/tagsByEntries.md';
7
+ - **Type:** `Record<string, ArrayOrNot<HtmlInjectTag | HtmlInjectTagHandler>>`
8
+ - **Default:** `undefined`
9
+
10
+ Used for multiple entry applications, injecting different tags for each entry.
11
+
12
+ The usage is the same as `tags`, and you can use the "entry name" as the key to set each page individually.
13
+
14
+ `tagsByEntries` will override the value set in `tags`.
15
+
16
+ :::warning
17
+ **Deprecated**: This configuration is deprecated, please use the function usage of `html.tags` instead.
18
+ :::
19
+
20
+ ### Example
21
+
22
+ ```js
23
+ export default {
24
+ html: {
25
+ tags: [{ tag: 'script', attrs: { src: 'a.js' } }],
26
+ tagsByEntries: {
27
+ foo: [{ tag: 'script', attrs: { src: 'b.js' } }],
28
+ },
29
+ },
30
+ };
31
+ ```
32
+
33
+ Compile the application and you can see a tag injected on the `foo` page:
34
+
35
+ ```html
36
+ <script src="b.js"></script>
37
+ ```
38
+
39
+ And for any other pages:
40
+
41
+ ```html
42
+ <script src="a.js"></script>
43
+ ```
8
44
 
9
- <Main />
@@ -1,9 +1,20 @@
1
1
  ---
2
2
  title: tags
3
+ configName: html.tags
3
4
  ---
4
5
 
5
6
  # html.tags
6
7
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/html/tags.md';
8
+ - **Type:**
8
9
 
9
- <Main />
10
+ ```ts
11
+ type TagsConfig = HtmlTag | HtmlTagHandler | Array<HtmlTag | HtmlTagHandler>;
12
+ ```
13
+
14
+ - **Default:** `undefined`
15
+
16
+ Modifies the tags that are injected into the HTML page.
17
+
18
+ import RsbuildConig from '@site-docs-en/components/rsbuild-config-tooltip';
19
+
20
+ <RsbuildConig />
@@ -4,6 +4,30 @@ title: templateByEntries
4
4
 
5
5
  # html.templateByEntries
6
6
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/html/templateByEntries.md';
7
+ - **Type:** `Object`
8
+ - **Default:** `undefined`
9
+
10
+ Set different template file for different pages.
11
+
12
+ The usage is same as `template`, and you can use the "entry name" as the key to set each page individually.
13
+
14
+ `templateByEntries` will overrides the value set in `template`.
15
+
16
+ :::warning
17
+ **Deprecated**: This configuration is deprecated, please use the function usage of `html.template` instead.
18
+ :::
19
+
20
+ ### Example
21
+
22
+ ```js
23
+ export default {
24
+ html: {
25
+ template: './static/index.html',
26
+ templateByEntries: {
27
+ foo: './src/pages/foo/index.html',
28
+ bar: './src/pages/bar/index.html',
29
+ },
30
+ },
31
+ };
32
+ ```
8
33
 
9
- <Main />
@@ -4,6 +4,32 @@ title: templateParametersByEntries
4
4
 
5
5
  # html.templateParametersByEntries
6
6
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/html/templateParametersByEntries.md';
7
+ - **Type:** `Object`
8
+ - **Default:** `undefined`
8
9
 
9
- <Main />
10
+ Set different template parameters for different pages.
11
+
12
+ The usage is same as `templateParameters`, and you can use the "entry name" as the key to set each page individually.
13
+
14
+ `templateParametersByEntries` will overrides the value set in `templateParameters`.
15
+
16
+ :::warning
17
+ **Deprecated**: This configuration is deprecated, please use the function usage of `html.templateParameters` instead.
18
+ :::
19
+
20
+ ### Example
21
+
22
+ ```js
23
+ export default {
24
+ html: {
25
+ templateParametersByEntries: {
26
+ foo: {
27
+ type: 'a',
28
+ },
29
+ bar: {
30
+ type: 'b',
31
+ },
32
+ },
33
+ },
34
+ };
35
+ ```
@@ -1,9 +1,38 @@
1
1
  ---
2
2
  title: templateParameters
3
+ configName: html.templateParameters
3
4
  ---
4
5
 
5
6
  # html.templateParameters
6
7
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/html/templateParameters.md';
8
+ - **Type:** `Record<string, unknown> | Function`
9
+ - **Default:**
8
10
 
9
- <Main />
11
+ ```ts
12
+ type DefaultParameters = {
13
+ mountId: string; // the value of `html.mountId` config
14
+ entryName: string; // entry name
15
+ assetPrefix: string; // the value of dev.assetPrefix or output.assetPrefix configs
16
+ compilation: Compilation; // Compilation object of Rspack
17
+ rspackConfig: Rspack.Configuration; // Rspack config object
18
+ // generated by html-rspack-plugin
19
+ htmlPlugin: {
20
+ tags: {
21
+ headTags: HtmlTagObject[];
22
+ bodyTags: HtmlTagObject[];
23
+ };
24
+ files: {
25
+ publicPath: string;
26
+ js: Array<string>;
27
+ css: Array<string>;
28
+ favicon?: string;
29
+ };
30
+ };
31
+ };
32
+ ```
33
+
34
+ Define the parameters in the HTML template, corresponding to the `templateParameters` config of [html-rspack-plugin](https://github.com/rspack-contrib/html-rspack-plugin). You can use the config as an object or a function.
35
+
36
+ import RsbuildConig from '@site-docs-en/components/rsbuild-config-tooltip';
37
+
38
+ <RsbuildConig />
@@ -1,9 +1,15 @@
1
1
  ---
2
2
  title: template
3
+ configName: html.template
3
4
  ---
4
5
 
5
6
  # html.template
6
7
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/html/template.md';
8
+ - **Type:** `string | Function`
9
+ - **Default:**
8
10
 
9
- <Main />
11
+ Specifies the file path for the HTML template, which can be a relative or absolute path.
12
+
13
+ import RsbuildConig from '@site-docs-en/components/rsbuild-config-tooltip';
14
+
15
+ <RsbuildConig />
@@ -4,6 +4,34 @@ title: titleByEntries
4
4
 
5
5
  # html.titleByEntries
6
6
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/html/titleByEntries.md';
7
+ - **Type:** `Record<string, string>`
8
+ - **Default:** `undefined`
9
+
10
+ Set different title for different pages.
11
+
12
+ The usage is same as `title`, and you can use the "entry name" as the key to set each page individually.
13
+
14
+ `titleByEntries` will overrides the value set in `title`.
15
+
16
+ :::warning
17
+ **Deprecated**: This configuration is deprecated, please use the function usage of `html.title` instead.
18
+ :::
19
+
20
+ ### Example
21
+
22
+ ```js
23
+ export default {
24
+ html: {
25
+ title: 'ByteDance',
26
+ titleByEntries: {
27
+ foo: 'TikTok',
28
+ },
29
+ },
30
+ };
31
+ ```
32
+
33
+ After recompiling, you can see:
34
+
35
+ - The title of the page `foo` is `TikTok`.
36
+ - The title of other pages is `ByteDance`.
8
37
 
9
- <Main />
@@ -1,9 +1,23 @@
1
1
  ---
2
2
  title: title
3
+ configName: html.title
3
4
  ---
4
5
 
5
6
  # html.title
6
7
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/html/title.md';
8
+ - **Type:** `string | Function`
9
+ - **Default:** `''`
8
10
 
9
- <Main />
11
+ Set the title tag of the HTML page, for example:
12
+
13
+ ```js
14
+ export default {
15
+ html: {
16
+ title: 'example',
17
+ },
18
+ };
19
+ ```
20
+
21
+ import RsbuildConig from '@site-docs-en/components/rsbuild-config-tooltip';
22
+
23
+ <RsbuildConig />
@@ -1,9 +1,19 @@
1
1
  ---
2
2
  title: assetPrefix
3
+ configName: output.assetPrefix
3
4
  ---
4
5
 
5
6
  # output.assetPrefix
6
7
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/output/assetPrefix.md';
8
+ - **Type:** `string | 'auto'`
9
+ - **Default:** `'/'`
8
10
 
9
- <Main />
11
+ In production mode, use this option to set the URL prefix for static assets, such as setting it to a CDN URL.
12
+
13
+ import OutputAssetPrefixExtend from '@site-docs-en/components/output-asset-prefix-extend';
14
+
15
+ <OutputAssetPrefixExtend />
16
+
17
+ import RsbuildConig from '@site-docs-en/components/rsbuild-config-tooltip';
18
+
19
+ <RsbuildConig />
@@ -4,6 +4,76 @@ title: assetsRetry
4
4
 
5
5
  # output.assetsRetry
6
6
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/output/assetsRetry.md';
7
+ - **Type:** `Object`
8
8
 
9
- <Main />
9
+ `output.assetsRetry` is used to configure the retry of assets.The type of `AssetsRetryOptions` is as follows:
10
+
11
+ ```ts
12
+ export type AssetsRetryHookContext = {
13
+ times: number;
14
+ domain: string;
15
+ url: string;
16
+ tagName: string;
17
+ };
18
+
19
+ export type AssetsRetryOptions = {
20
+ type?: string[];
21
+ domain?: string[];
22
+ max?: number;
23
+ test?: string | ((url: string) => boolean);
24
+ crossOrigin?: boolean | 'anonymous' | 'use-credentials';
25
+ inlineScript?: boolean;
26
+ onRetry?: (options: AssetsRetryHookContext) => void;
27
+ onSuccess?: (options: AssetsRetryHookContext) => void;
28
+ onFail?: (options: AssetsRetryHookContext) => void;
29
+ };
30
+ ```
31
+
32
+ - **Default:** `undefined`
33
+
34
+ Since the ability will inject some extra runtime code into HTML, we have disabled this ability by default. If you need to enable it, you can configure it in the form of an object, for example:
35
+
36
+ ```js
37
+ export default {
38
+ output: {
39
+ assetsRetry: {},
40
+ },
41
+ };
42
+ ```
43
+
44
+ When you enable this ability, the default config of `assetsRetry` is as follows:
45
+
46
+ ```ts
47
+ export const defaultAssetsRetryOptions: AssetsRetryOptions = {
48
+ type: ['script', 'link', 'img'],
49
+ domain: [],
50
+ max: 3,
51
+ test: '',
52
+ crossOrigin: false,
53
+ onRetry: () => {},
54
+ onSuccess: () => {},
55
+ onFail: () => {},
56
+ };
57
+ ```
58
+
59
+ ### Example
60
+
61
+ You can also customize your retry logic using the `assetsRetry` options.
62
+
63
+ For example, setting `assetsRetry.domain` to specify the retry domain when assets fail to load.
64
+
65
+ ```js
66
+ export default {
67
+ output: {
68
+ assetsRetry: {
69
+ domain: ['https://cdn1.com', 'https://cdn2.com', 'https://cdn3.com'],
70
+ },
71
+ },
72
+ };
73
+ ```
74
+
75
+ After adding the above configuration, when assets fail to load from the `cdn1.com` domain, the request domain will automatically fallback to `cdn2.com`.
76
+
77
+ If the assets request for `cdn2.com` also fails, the request will fallback to `cdn3.com`.
78
+
79
+ `assetsRetry` is implemented based on the Assets Retry plugin of Rsbuild and provides the same configuration options. You can refer to [Rsbuild - Assets Retry Plugin](https://rsbuild.dev/plugins/list/plugin-assets-retry#options) to understand all available configuration options.
@@ -1,9 +1,15 @@
1
1
  ---
2
2
  title: charset
3
+ configName: output.charset
3
4
  ---
4
5
 
5
6
  # output.charset
6
7
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/output/charset.md';
8
+ - **Type:** `'ascii' | 'utf8'`
9
+ - **Default:** `'ascii'`
8
10
 
9
- <Main />
11
+ The `charset` config allows you to specify the [character encoding](https://developer.mozilla.org/en-US/docs/Glossary/Character_encoding) for output files to ensure they are displayed correctly in different environments.
12
+
13
+ import RsbuildConig from '@site-docs-en/components/rsbuild-config-tooltip';
14
+
15
+ <RsbuildConig />
@@ -4,6 +4,17 @@ title: cleanDistPath
4
4
 
5
5
  # output.cleanDistPath
6
6
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/output/cleanDistPath.md';
7
+ - **Type:** `boolean`
8
+ - **Default:** `true`
8
9
 
9
- <Main />
10
+ Whether to clean all files in the dist path before starting compilation.
11
+
12
+ By default, Modern.js will automatically clean up the files in the dist directory, you can disable this behavior by setting `cleanDistPath` to `false`.
13
+
14
+ ```js
15
+ export default {
16
+ output: {
17
+ cleanDistPath: false,
18
+ },
19
+ };
20
+ ```
@@ -4,6 +4,80 @@ title: convertToRem
4
4
 
5
5
  # output.convertToRem
6
6
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/output/convertToRem.md';
7
+ - **Type:** `boolean | object`
8
+ - **Default:** `false`
8
9
 
9
- <Main />
10
+ By setting `output.convertToRem`, Modern.js can do the following things:
11
+
12
+ - Convert px to rem in CSS.
13
+ - Insert runtime code into the HTML template to set the fontSize of the root element.
14
+
15
+ ### Boolean Type
16
+
17
+ If `output.convertToRem` is set to `true`, Rem processing capability will be turned on.
18
+
19
+ ```js
20
+ export default {
21
+ output: {
22
+ convertToRem: true,
23
+ },
24
+ };
25
+ ```
26
+
27
+ At this point, the rem configuration defaults as follows:
28
+
29
+ ```js
30
+ {
31
+ enableRuntime: true,
32
+ rootFontSize: 50,
33
+ screenWidth: 375,
34
+ rootFontSize: 50,
35
+ maxRootFontSize: 64,
36
+ widthQueryKey: '',
37
+ excludeEntries: [],
38
+ supportLandscape: false,
39
+ useRootFontSizeBeyondMax: false,
40
+ pxtorem: {
41
+ rootValue: 50,
42
+ unitPrecision: 5,
43
+ propList: ['*'],
44
+ }
45
+ }
46
+ ```
47
+
48
+ ### Object Type
49
+
50
+ When the value of `output.convertToRem` is `object` type, Modern.js will perform Rem processing based on the current configuration.
51
+
52
+ options:
53
+
54
+ | Name | Type | Default | Description |
55
+ | ------------------------ | ---------- | -------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
56
+ | enableRuntime | `boolean` | `true` | Whether to generate runtime code to calculate and set the font size of the root element |
57
+ | inlineRuntime | `boolean` | `true` | Whether to inline the runtime code to HTML. If set to `false`, the runtime code will be extracted into a separate `convert-rem.[version].js` file and output to the dist directory |
58
+ | rootFontSize | `number` | `50` | The root element font size |
59
+ | maxRootFontSize | `number` | `64` | The root element max font size |
60
+ | widthQueryKey | `string` | `'' ` | Get clientWidth from the url query based on widthQueryKey |
61
+ | screenWidth | `number` | `375` | The screen width for UI design drawings (Usually, `fontSize = (clientWidth * rootFontSize) / screenWidth`) |
62
+ | excludeEntries | `string[]` | `[]` | To exclude some page entries from injecting runtime code, it is usually used with `pxtorem.exclude` |
63
+ | supportLandscape | `boolean` | `false` | Use height to calculate rem in landscape |
64
+ | useRootFontSizeBeyondMax | `boolean` | `false` | Whether to use rootFontSize when large than maxRootFontSize |
65
+ | pxtorem | `object` | <ul><li>rootValue (Default is the same as rootFontSize) </li><li>unitPrecision: 5 </li><li>propList: ['*']</li></ul> | [postcss-pxtorem](https://github.com/cuth/postcss-pxtorem#options) options |
66
+
67
+ ### Example
68
+
69
+ ```js
70
+ export default {
71
+ output: {
72
+ convertToRem: {
73
+ rootFontSize: 30,
74
+ excludeEntries: ['404', 'page2'],
75
+ pxtorem: {
76
+ propList: ['font-size'],
77
+ },
78
+ },
79
+ },
80
+ };
81
+ ```
82
+
83
+ For detailed usage, please refer to [rsbuild-plugin-rem](https://github.com/rspack-contrib/rsbuild-plugin-rem).
@@ -4,6 +4,9 @@ title: copy
4
4
 
5
5
  # output.copy
6
6
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/output/copy.md';
7
+ - **Type:**`Rspack.CopyRspackPluginOptions | Rspack.CopyRspackPluginOptions['patterns']`
8
+ - **Default:** `undefined`
8
9
 
9
- <Main />
10
+ Copies the specified file or directory to the dist directory, implemented based on [rspack.CopyRspackPlugin](https://rspack.dev/zh/plugins/rspack/copy-rspack-plugin).
11
+
12
+ For more detailed configuration, please refer to: [rspack.CopyRspackPlugin](https://rspack.dev/zh/plugins/rspack/copy-rspack-plugin).
@@ -4,6 +4,18 @@ title: cssModuleLocalIdentName
4
4
 
5
5
  # output.cssModuleLocalIdentName
6
6
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/output/cssModuleLocalIdentName.md';
7
+ - **Type:** `string`
8
+ - **Default:**
8
9
 
9
- <Main />
10
+ ```ts
11
+ // isProd indicates that the production build
12
+ const localIdentName = isProd
13
+ ? '[local]-[hash:base64:6]'
14
+ : '[path][name]__[local]-[hash:base64:6]';
15
+ ```
16
+
17
+ Sets the format of the className generated by CSS Modules after compilation.
18
+
19
+ :::warning
20
+ **Deprecated**: This configuration is deprecated, please use the `cssModules.localIdentName` instead.
21
+ :::
@@ -1,9 +1,53 @@
1
1
  ---
2
2
  title: cssModules
3
+ configName: output.cssModules
3
4
  ---
4
5
 
5
6
  # output.cssModules
6
7
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/output/cssModules.md';
8
+ - **Type:**
8
9
 
9
- <Main />
10
+ ```ts
11
+ type CssModules = {
12
+ auto?:
13
+ | boolean
14
+ | RegExp
15
+ | ((
16
+ resourcePath: string,
17
+ resourceQuery: string,
18
+ resourceFragment: string,
19
+ ) => boolean);
20
+ exportLocalsConvention?:
21
+ | 'asIs'
22
+ | 'camelCase'
23
+ | 'camelCaseOnly'
24
+ | 'dashes'
25
+ | 'dashesOnly';
26
+ exportGlobals?: boolean;
27
+ localIdentName?: string;
28
+ mode?:
29
+ | 'local'
30
+ | 'global'
31
+ | 'pure'
32
+ | 'icss'
33
+ | ((resourcePath: string) => 'local' | 'global' | 'pure' | 'icss');
34
+ namedExport?: boolean;
35
+ };
36
+ ```
37
+
38
+ - **Default:**
39
+
40
+ ```ts
41
+ const defaultCssModules = {
42
+ auto: true,
43
+ namedExport: false,
44
+ exportGlobals: false,
45
+ exportLocalsConvention: 'camelCase',
46
+ };
47
+ ```
48
+
49
+ For custom CSS Modules configuration.
50
+
51
+ import RsbuildConig from '@site-docs-en/components/rsbuild-config-tooltip';
52
+
53
+ <RsbuildConig />
@@ -1,9 +1,31 @@
1
1
  ---
2
2
  title: dataUriLimit
3
+ configName: output.dataUriLimit
3
4
  ---
4
5
 
5
6
  # output.dataUriLimit
6
7
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/output/dataUriLimit.md';
8
+ - **Type:**
8
9
 
9
- <Main />
10
+ ```ts
11
+ type DataUriLimitConfig =
12
+ | number
13
+ | {
14
+ svg?: number;
15
+ font?: number;
16
+ image?: number;
17
+ media?: number;
18
+ };
19
+ ```
20
+
21
+ - **Default:**
22
+
23
+ ```js
24
+ const defaultDatUriLimit = 10000;
25
+ ```
26
+
27
+ Set the size threshold to inline static assets such as images and fonts.
28
+
29
+ import RsbuildConig from '@site-docs-en/components/rsbuild-config-tooltip';
30
+
31
+ <RsbuildConig />
@@ -4,6 +4,13 @@ title: disableCssExtract
4
4
 
5
5
  # output.disableCssExtract
6
6
 
7
- import Main from '@modern-js/builder-doc/docs/en/config/output/disableCssExtract.md';
7
+ - **Type:** `boolean`
8
+ - **Default:** `false`
8
9
 
9
- <Main />
10
+ Whether to disable CSS extract and inline CSS files into JS files.
11
+
12
+ By default, Modern.js will extract CSS into a separate `.css` file and output it to the dist directory. When this option is set to `true`, CSS files will be inlined into JS files and inserted on the page at runtime via `<style>` tags.
13
+
14
+ :::warning
15
+ **Deprecated**: This configuration is deprecated, please use the `output.injectStyles` instead.
16
+ :::