@bleedingdev/modern-js-app-tools 3.5.0-ultramodern.98 → 3.5.0-ultramodern.99

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 (368) hide show
  1. package/dist/cjs/builder/generator/createBuilderProviderConfig.js +5 -1
  2. package/dist/cjs/builder/generator/getBuilderEnvironments.js +7 -0
  3. package/dist/cjs/commands/build.js +2 -1
  4. package/dist/cjs/commands/deploy.js +4 -2
  5. package/dist/cjs/commands/index.js +0 -4
  6. package/dist/cjs/config/default.js +2 -0
  7. package/dist/cjs/index.js +56 -15
  8. package/dist/cjs/plugins/analyze/index.js +2 -2
  9. package/dist/cjs/plugins/analyze/utils.js +3 -2
  10. package/dist/cjs/plugins/initialize/index.js +4 -3
  11. package/dist/cjs/plugins/serverBuild.js +3 -2
  12. package/dist/esm/builder/generator/createBuilderProviderConfig.mjs +5 -1
  13. package/dist/esm/builder/generator/getBuilderEnvironments.mjs +7 -0
  14. package/dist/esm/commands/build.mjs +2 -1
  15. package/dist/esm/commands/deploy.mjs +4 -2
  16. package/dist/esm/commands/index.mjs +0 -4
  17. package/dist/esm/config/default.mjs +2 -0
  18. package/dist/esm/index.mjs +15 -1
  19. package/dist/esm/plugins/analyze/index.mjs +2 -2
  20. package/dist/esm/plugins/analyze/utils.mjs +3 -2
  21. package/dist/esm/plugins/initialize/index.mjs +4 -3
  22. package/dist/esm/plugins/serverBuild.mjs +3 -2
  23. package/dist/esm-node/builder/generator/createBuilderProviderConfig.mjs +5 -1
  24. package/dist/esm-node/builder/generator/getBuilderEnvironments.mjs +7 -0
  25. package/dist/esm-node/commands/build.mjs +2 -1
  26. package/dist/esm-node/commands/deploy.mjs +4 -2
  27. package/dist/esm-node/commands/index.mjs +0 -4
  28. package/dist/esm-node/config/default.mjs +2 -0
  29. package/dist/esm-node/index.mjs +15 -1
  30. package/dist/esm-node/plugins/analyze/index.mjs +2 -2
  31. package/dist/esm-node/plugins/analyze/utils.mjs +3 -2
  32. package/dist/esm-node/plugins/initialize/index.mjs +4 -3
  33. package/dist/esm-node/plugins/serverBuild.mjs +3 -2
  34. package/dist/types/commands/deploy.d.ts +2 -1
  35. package/dist/types/index.d.ts +4 -1
  36. package/dist/types/plugins/analyze/utils.d.ts +1 -1
  37. package/dist/types/types/config/dev.d.ts +6 -0
  38. package/docs/_nav.json +36 -0
  39. package/docs/apis/_meta.json +13 -0
  40. package/docs/apis/app/commands.mdx +205 -0
  41. package/docs/apis/app/hooks/_meta.json +28 -0
  42. package/docs/apis/app/hooks/api/lambda.mdx +13 -0
  43. package/docs/apis/app/hooks/config/_meta.json +1 -0
  44. package/docs/apis/app/hooks/config/favicon.mdx +29 -0
  45. package/docs/apis/app/hooks/config/html.mdx +9 -0
  46. package/docs/apis/app/hooks/config/icon.mdx +29 -0
  47. package/docs/apis/app/hooks/config/mock.mdx +10 -0
  48. package/docs/apis/app/hooks/config/public.mdx +30 -0
  49. package/docs/apis/app/hooks/config/upload.mdx +54 -0
  50. package/docs/apis/app/hooks/modern-config.mdx +9 -0
  51. package/docs/apis/app/hooks/server/server.mdx +10 -0
  52. package/docs/apis/app/hooks/shared.mdx +7 -0
  53. package/docs/apis/app/hooks/src/app.mdx +30 -0
  54. package/docs/apis/app/hooks/src/entry.mdx +39 -0
  55. package/docs/apis/app/hooks/src/entry.server.mdx +56 -0
  56. package/docs/apis/app/hooks/src/modern.runtime.mdx +9 -0
  57. package/docs/apis/app/hooks/src/routes.mdx +90 -0
  58. package/docs/apis/app/hooks/src/server.mdx +7 -0
  59. package/docs/apis/app/runtime/_meta.json +32 -0
  60. package/docs/apis/app/runtime/bff/use-backend-context.mdx +30 -0
  61. package/docs/apis/app/runtime/core/create-root.mdx +22 -0
  62. package/docs/apis/app/runtime/core/render.mdx +42 -0
  63. package/docs/apis/app/runtime/core/runtime-context.mdx +160 -0
  64. package/docs/apis/app/runtime/router/router.mdx +288 -0
  65. package/docs/apis/app/runtime/ssr/no-ssr.mdx +38 -0
  66. package/docs/apis/app/runtime/ssr/renderStreaming.mdx +71 -0
  67. package/docs/apis/app/runtime/ssr/renderString.mdx +64 -0
  68. package/docs/apis/app/runtime/ssr/requestHandler.mdx +48 -0
  69. package/docs/apis/app/runtime/utility/css-in-js.mdx +44 -0
  70. package/docs/apis/app/runtime/utility/head.mdx +38 -0
  71. package/docs/apis/app/runtime/utility/loadable.mdx +85 -0
  72. package/docs/components/auto-upgrade.mdx +0 -0
  73. package/docs/components/bff-upload.mdx +97 -0
  74. package/docs/components/build-output.mdx +45 -0
  75. package/docs/components/bundler.mdx +3 -0
  76. package/docs/components/convention-routing-motivation.mdx +0 -0
  77. package/docs/components/debug-app.mdx +15 -0
  78. package/docs/components/default-browserslist.mdx +7 -0
  79. package/docs/components/deploy-command.mdx +14 -0
  80. package/docs/components/deploy.mdx +1 -0
  81. package/docs/components/enable-bff-caution.mdx +3 -0
  82. package/docs/components/enable-bff.mdx +56 -0
  83. package/docs/components/enable-ssg.mdx +49 -0
  84. package/docs/components/entry-mode.mdx +0 -0
  85. package/docs/components/entry-scan-logic.mdx +7 -0
  86. package/docs/components/extend-bff-function.mdx +3 -0
  87. package/docs/components/hono.mdx +120 -0
  88. package/docs/components/init-app.mdx +93 -0
  89. package/docs/components/init-rspack-app.mdx +5 -0
  90. package/docs/components/internal-logger.mdx +25 -0
  91. package/docs/components/internal-metrics.mdx +20 -0
  92. package/docs/components/international/custom-instance-code.mdx +16 -0
  93. package/docs/components/international/init-options-desc.mdx +1 -0
  94. package/docs/components/international/install-command.mdx +10 -0
  95. package/docs/components/international/instance-code.mdx +16 -0
  96. package/docs/components/international/introduce.mdx +5 -0
  97. package/docs/components/international/platform-support.mdx +0 -0
  98. package/docs/components/language-config.mdx +9 -0
  99. package/docs/components/micro-frontend.mdx +6 -0
  100. package/docs/components/micro-master-manifest-config.mdx +15 -0
  101. package/docs/components/micro-runtime-config.mdx +17 -0
  102. package/docs/components/module-federation.mdx +7 -0
  103. package/docs/components/new-entry-tooltip.mdx +0 -0
  104. package/docs/components/nodeVersion.mdx +28 -0
  105. package/docs/components/other-plugins.mdx +0 -0
  106. package/docs/components/output-asset-prefix-extend.mdx +0 -0
  107. package/docs/components/output-distpath-warning.mdx +0 -0
  108. package/docs/components/output-polyfill-extend.mdx +1 -0
  109. package/docs/components/prerequisites.mdx +18 -0
  110. package/docs/components/release-note.mdx +1 -0
  111. package/docs/components/routes-practice.mdx +0 -0
  112. package/docs/components/rsbuild-config-tooltip.mdx +5 -0
  113. package/docs/components/rsbuild.mdx +3 -0
  114. package/docs/components/rsc-deploy-tip.mdx +1 -0
  115. package/docs/components/rspack.mdx +3 -0
  116. package/docs/components/rspackTip.mdx +7 -0
  117. package/docs/components/runtime-cli-config.mdx +0 -0
  118. package/docs/components/serve-command.mdx +22 -0
  119. package/docs/components/ssr-monitor.mdx +3 -0
  120. package/docs/components/stream-ssr-performance.mdx +0 -0
  121. package/docs/components/swc.mdx +3 -0
  122. package/docs/components/tech-stack-node-framework.mdx +1 -0
  123. package/docs/components/turtorials-example-list.mdx +2 -0
  124. package/docs/components/ua-polyfill.mdx +44 -0
  125. package/docs/components/upgrade-browserslist.mdx +0 -0
  126. package/docs/components/upgrade-config-deploy.mdx +0 -0
  127. package/docs/components/upgrade-faq.mdx +0 -0
  128. package/docs/configure/_meta.json +78 -0
  129. package/docs/configure/app/bff/cross-project.mdx +24 -0
  130. package/docs/configure/app/bff/effect.mdx +319 -0
  131. package/docs/configure/app/bff/prefix.mdx +33 -0
  132. package/docs/configure/app/bff/runtime-framework.mdx +30 -0
  133. package/docs/configure/app/builder-plugins.mdx +70 -0
  134. package/docs/configure/app/dev/asset-prefix.mdx +18 -0
  135. package/docs/configure/app/dev/before-start-url.mdx +21 -0
  136. package/docs/configure/app/dev/client.mdx +45 -0
  137. package/docs/configure/app/dev/hmr.mdx +14 -0
  138. package/docs/configure/app/dev/host.mdx +22 -0
  139. package/docs/configure/app/dev/https.mdx +81 -0
  140. package/docs/configure/app/dev/lazy-compilation.mdx +45 -0
  141. package/docs/configure/app/dev/live-reload.mdx +14 -0
  142. package/docs/configure/app/dev/mock-dir.mdx +35 -0
  143. package/docs/configure/app/dev/progress-bar.mdx +23 -0
  144. package/docs/configure/app/dev/server.mdx +128 -0
  145. package/docs/configure/app/dev/setup-middlewares.mdx +36 -0
  146. package/docs/configure/app/dev/start-url.mdx +53 -0
  147. package/docs/configure/app/dev/watch-files.mdx +31 -0
  148. package/docs/configure/app/dev/write-to-disk.mdx +14 -0
  149. package/docs/configure/app/experiments/source-build.mdx +33 -0
  150. package/docs/configure/app/html/app-icon.mdx +32 -0
  151. package/docs/configure/app/html/crossorigin.mdx +14 -0
  152. package/docs/configure/app/html/favicon.mdx +20 -0
  153. package/docs/configure/app/html/inject.mdx +14 -0
  154. package/docs/configure/app/html/meta.mdx +28 -0
  155. package/docs/configure/app/html/mount-id.mdx +14 -0
  156. package/docs/configure/app/html/output-structure.mdx +14 -0
  157. package/docs/configure/app/html/script-loading.mdx +14 -0
  158. package/docs/configure/app/html/tags.mdx +19 -0
  159. package/docs/configure/app/html/template-parameters.mdx +37 -0
  160. package/docs/configure/app/html/template.mdx +14 -0
  161. package/docs/configure/app/html/title.mdx +22 -0
  162. package/docs/configure/app/output/asset-prefix.mdx +18 -0
  163. package/docs/configure/app/output/assets-retry.mdx +81 -0
  164. package/docs/configure/app/output/charset.mdx +14 -0
  165. package/docs/configure/app/output/clean-dist-path.mdx +20 -0
  166. package/docs/configure/app/output/convert-to-rem.mdx +83 -0
  167. package/docs/configure/app/output/copy.mdx +14 -0
  168. package/docs/configure/app/output/css-modules.mdx +52 -0
  169. package/docs/configure/app/output/data-uri-limit.mdx +30 -0
  170. package/docs/configure/app/output/disable-css-module-extension.mdx +59 -0
  171. package/docs/configure/app/output/disable-inline-runtime-chunk.mdx +45 -0
  172. package/docs/configure/app/output/disable-svgr.mdx +22 -0
  173. package/docs/configure/app/output/disable-ts-checker.mdx +53 -0
  174. package/docs/configure/app/output/dist-path.mdx +51 -0
  175. package/docs/configure/app/output/enable-asset-manifest.mdx +40 -0
  176. package/docs/configure/app/output/enable-css-module-tsdeclaration.mdx +32 -0
  177. package/docs/configure/app/output/enable-inline-route-manifests.mdx +20 -0
  178. package/docs/configure/app/output/externals.mdx +24 -0
  179. package/docs/configure/app/output/filename-hash.mdx +14 -0
  180. package/docs/configure/app/output/filename.mdx +59 -0
  181. package/docs/configure/app/output/inject-styles.mdx +14 -0
  182. package/docs/configure/app/output/inline-scripts.mdx +33 -0
  183. package/docs/configure/app/output/inline-styles.mdx +33 -0
  184. package/docs/configure/app/output/legal-comments.mdx +22 -0
  185. package/docs/configure/app/output/minify.mdx +26 -0
  186. package/docs/configure/app/output/override-browserslist.mdx +26 -0
  187. package/docs/configure/app/output/polyfill.mdx +18 -0
  188. package/docs/configure/app/output/source-map.mdx +34 -0
  189. package/docs/configure/app/output/split-route-chunks.mdx +20 -0
  190. package/docs/configure/app/output/ssg.mdx +85 -0
  191. package/docs/configure/app/output/ssgByEntries.mdx +93 -0
  192. package/docs/configure/app/output/svg-default-export.mdx +34 -0
  193. package/docs/configure/app/output/temp-dir.mdx +24 -0
  194. package/docs/configure/app/performance/build-cache.mdx +48 -0
  195. package/docs/configure/app/performance/chunk-split.mdx +44 -0
  196. package/docs/configure/app/performance/dns-prefetch.mdx +19 -0
  197. package/docs/configure/app/performance/preconnect.mdx +20 -0
  198. package/docs/configure/app/performance/prefetch.mdx +25 -0
  199. package/docs/configure/app/performance/preload.mdx +27 -0
  200. package/docs/configure/app/performance/print-file-size.mdx +44 -0
  201. package/docs/configure/app/performance/profile.mdx +14 -0
  202. package/docs/configure/app/performance/remove-console.mdx +14 -0
  203. package/docs/configure/app/performance/remove-moment-locale.mdx +14 -0
  204. package/docs/configure/app/performance/rsdoctor.mdx +42 -0
  205. package/docs/configure/app/plugins.mdx +59 -0
  206. package/docs/configure/app/resolve/alias-strategy.mdx +14 -0
  207. package/docs/configure/app/resolve/alias.mdx +13 -0
  208. package/docs/configure/app/resolve/condition-names.mdx +18 -0
  209. package/docs/configure/app/resolve/dedupe.mdx +13 -0
  210. package/docs/configure/app/resolve/extensions.mdx +18 -0
  211. package/docs/configure/app/runtime/0-intro.mdx +61 -0
  212. package/docs/configure/app/runtime/plugins.mdx +58 -0
  213. package/docs/configure/app/runtime/router.mdx +39 -0
  214. package/docs/configure/app/security/check-syntax.mdx +73 -0
  215. package/docs/configure/app/security/nonce.mdx +19 -0
  216. package/docs/configure/app/security/sri.mdx +24 -0
  217. package/docs/configure/app/server/base-url.mdx +30 -0
  218. package/docs/configure/app/server/port.mdx +22 -0
  219. package/docs/configure/app/server/public-routes.mdx +26 -0
  220. package/docs/configure/app/server/routes.mdx +90 -0
  221. package/docs/configure/app/server/rsc.mdx +30 -0
  222. package/docs/configure/app/server/ssr-by-entries.mdx +29 -0
  223. package/docs/configure/app/server/ssr.mdx +85 -0
  224. package/docs/configure/app/server/tsconfig-path.mdx +63 -0
  225. package/docs/configure/app/source/alias-strategy.mdx +18 -0
  226. package/docs/configure/app/source/alias.mdx +27 -0
  227. package/docs/configure/app/source/config-dir.mdx +24 -0
  228. package/docs/configure/app/source/decorators.mdx +29 -0
  229. package/docs/configure/app/source/define.mdx +20 -0
  230. package/docs/configure/app/source/disable-default-entries.mdx +32 -0
  231. package/docs/configure/app/source/enable-async-entry.mdx +54 -0
  232. package/docs/configure/app/source/enable-async-pre-entry.mdx +30 -0
  233. package/docs/configure/app/source/entries-dir.mdx +39 -0
  234. package/docs/configure/app/source/entries.mdx +183 -0
  235. package/docs/configure/app/source/exclude.mdx +14 -0
  236. package/docs/configure/app/source/global-vars.mdx +110 -0
  237. package/docs/configure/app/source/include.mdx +40 -0
  238. package/docs/configure/app/source/main-entry-name.mdx +28 -0
  239. package/docs/configure/app/source/pre-entry.mdx +14 -0
  240. package/docs/configure/app/source/react-compiler.mdx +72 -0
  241. package/docs/configure/app/source/transform-import.mdx +31 -0
  242. package/docs/configure/app/split-chunks.mdx +17 -0
  243. package/docs/configure/app/tools/autoprefixer.mdx +48 -0
  244. package/docs/configure/app/tools/bundler-chain.mdx +30 -0
  245. package/docs/configure/app/tools/css-extract.mdx +37 -0
  246. package/docs/configure/app/tools/css-loader.mdx +21 -0
  247. package/docs/configure/app/tools/dev-server.mdx +117 -0
  248. package/docs/configure/app/tools/html-plugin.mdx +45 -0
  249. package/docs/configure/app/tools/less.mdx +85 -0
  250. package/docs/configure/app/tools/lightningcss-loader.mdx +39 -0
  251. package/docs/configure/app/tools/minify-css.mdx +57 -0
  252. package/docs/configure/app/tools/postcss.mdx +38 -0
  253. package/docs/configure/app/tools/rspack.mdx +14 -0
  254. package/docs/configure/app/tools/sass.mdx +82 -0
  255. package/docs/configure/app/tools/style-loader.mdx +14 -0
  256. package/docs/configure/app/tools/swc.mdx +69 -0
  257. package/docs/configure/app/tools/ts-checker.mdx +103 -0
  258. package/docs/configure/app/usage.mdx +276 -0
  259. package/docs/guides/_meta.json +37 -0
  260. package/docs/guides/advanced-features/_meta.json +32 -0
  261. package/docs/guides/advanced-features/bff/_meta.json +10 -0
  262. package/docs/guides/advanced-features/bff/cross-project.mdx +110 -0
  263. package/docs/guides/advanced-features/bff/data-platform.mdx +120 -0
  264. package/docs/guides/advanced-features/bff/extend-server.mdx +120 -0
  265. package/docs/guides/advanced-features/bff/frameworks.mdx +131 -0
  266. package/docs/guides/advanced-features/bff/function.mdx +265 -0
  267. package/docs/guides/advanced-features/bff/operators.mdx +629 -0
  268. package/docs/guides/advanced-features/bff/sdk.mdx +116 -0
  269. package/docs/guides/advanced-features/bff/upload.mdx +7 -0
  270. package/docs/guides/advanced-features/bff.mdx +22 -0
  271. package/docs/guides/advanced-features/build-performance.mdx +134 -0
  272. package/docs/guides/advanced-features/compatibility.mdx +81 -0
  273. package/docs/guides/advanced-features/international/_meta.json +10 -0
  274. package/docs/guides/advanced-features/international/advanced.mdx +132 -0
  275. package/docs/guides/advanced-features/international/api.mdx +271 -0
  276. package/docs/guides/advanced-features/international/best-practices.mdx +290 -0
  277. package/docs/guides/advanced-features/international/configuration.mdx +222 -0
  278. package/docs/guides/advanced-features/international/locale-detection.mdx +130 -0
  279. package/docs/guides/advanced-features/international/quick-start.mdx +112 -0
  280. package/docs/guides/advanced-features/international/resource-loading.mdx +158 -0
  281. package/docs/guides/advanced-features/international/routing.mdx +177 -0
  282. package/docs/guides/advanced-features/international.mdx +29 -0
  283. package/docs/guides/advanced-features/low-level.mdx +50 -0
  284. package/docs/guides/advanced-features/page-performance/_meta.json +1 -0
  285. package/docs/guides/advanced-features/page-performance/code-split.mdx +81 -0
  286. package/docs/guides/advanced-features/page-performance/inline-assets.mdx +163 -0
  287. package/docs/guides/advanced-features/page-performance/optimize-bundle.mdx +101 -0
  288. package/docs/guides/advanced-features/page-performance/react-compiler.mdx +51 -0
  289. package/docs/guides/advanced-features/server-monitor/_meta.json +1 -0
  290. package/docs/guides/advanced-features/server-monitor/logger.mdx +19 -0
  291. package/docs/guides/advanced-features/server-monitor/metrics.mdx +41 -0
  292. package/docs/guides/advanced-features/server-monitor/monitors.mdx +242 -0
  293. package/docs/guides/advanced-features/source-build.mdx +168 -0
  294. package/docs/guides/advanced-features/web-server.mdx +296 -0
  295. package/docs/guides/basic-features/_meta.json +49 -0
  296. package/docs/guides/basic-features/alias.mdx +106 -0
  297. package/docs/guides/basic-features/css/_meta.json +1 -0
  298. package/docs/guides/basic-features/css/css-in-js.mdx +69 -0
  299. package/docs/guides/basic-features/css/css-modules.mdx +212 -0
  300. package/docs/guides/basic-features/css/css.mdx +31 -0
  301. package/docs/guides/basic-features/css/tailwindcss.mdx +27 -0
  302. package/docs/guides/basic-features/data/_meta.json +1 -0
  303. package/docs/guides/basic-features/data/data-cache.mdx +515 -0
  304. package/docs/guides/basic-features/data/data-fetch.mdx +419 -0
  305. package/docs/guides/basic-features/data/data-write.mdx +230 -0
  306. package/docs/guides/basic-features/debug/_meta.json +1 -0
  307. package/docs/guides/basic-features/debug/mock.mdx +113 -0
  308. package/docs/guides/basic-features/debug/proxy.mdx +25 -0
  309. package/docs/guides/basic-features/debug/rsdoctor.mdx +47 -0
  310. package/docs/guides/basic-features/debug/using-storybook.mdx +100 -0
  311. package/docs/guides/basic-features/deploy.mdx +448 -0
  312. package/docs/guides/basic-features/env-vars.mdx +181 -0
  313. package/docs/guides/basic-features/html.mdx +259 -0
  314. package/docs/guides/basic-features/output-files.mdx +145 -0
  315. package/docs/guides/basic-features/render/_meta.json +1 -0
  316. package/docs/guides/basic-features/render/before-render.mdx +108 -0
  317. package/docs/guides/basic-features/render/overview.mdx +51 -0
  318. package/docs/guides/basic-features/render/rsc.mdx +533 -0
  319. package/docs/guides/basic-features/render/ssg.mdx +167 -0
  320. package/docs/guides/basic-features/render/ssr-cache.mdx +201 -0
  321. package/docs/guides/basic-features/render/ssr.mdx +323 -0
  322. package/docs/guides/basic-features/render/streaming-ssr.mdx +267 -0
  323. package/docs/guides/basic-features/routes/_meta.json +1 -0
  324. package/docs/guides/basic-features/routes/config-routes.mdx +427 -0
  325. package/docs/guides/basic-features/routes/routes.mdx +532 -0
  326. package/docs/guides/basic-features/static-assets/_meta.json +1 -0
  327. package/docs/guides/basic-features/static-assets/json-files.mdx +124 -0
  328. package/docs/guides/basic-features/static-assets/svg-assets.mdx +172 -0
  329. package/docs/guides/basic-features/static-assets/wasm-assets.mdx +66 -0
  330. package/docs/guides/basic-features/static-assets.mdx +164 -0
  331. package/docs/guides/basic-features/testing/_meta.json +1 -0
  332. package/docs/guides/basic-features/testing/playwright.mdx +111 -0
  333. package/docs/guides/basic-features/testing/rstest.mdx +192 -0
  334. package/docs/guides/concept/_meta.json +1 -0
  335. package/docs/guides/concept/builder.mdx +60 -0
  336. package/docs/guides/concept/entries.mdx +325 -0
  337. package/docs/guides/concept/server.mdx +35 -0
  338. package/docs/guides/get-started/_meta.json +9 -0
  339. package/docs/guides/get-started/ai-coding-agents.mdx +63 -0
  340. package/docs/guides/get-started/glossary.mdx +63 -0
  341. package/docs/guides/get-started/introduction.mdx +45 -0
  342. package/docs/guides/get-started/quick-start.mdx +92 -0
  343. package/docs/guides/get-started/tech-stack.mdx +97 -0
  344. package/docs/guides/get-started/ultramodern.mdx +433 -0
  345. package/docs/guides/get-started/upgrade.mdx +114 -0
  346. package/docs/guides/topic-detail/_meta.json +8 -0
  347. package/docs/guides/topic-detail/module-federation/_meta.json +1 -0
  348. package/docs/guides/topic-detail/module-federation/application.mdx +116 -0
  349. package/docs/guides/topic-detail/module-federation/deploy.mdx +104 -0
  350. package/docs/guides/topic-detail/module-federation/i18n.mdx +670 -0
  351. package/docs/guides/topic-detail/module-federation/introduce.mdx +36 -0
  352. package/docs/guides/topic-detail/module-federation/ssr.mdx +177 -0
  353. package/docs/guides/topic-detail/module-federation/usage.mdx +202 -0
  354. package/docs/guides/troubleshooting/_meta.json +1 -0
  355. package/docs/guides/troubleshooting/builder.mdx +114 -0
  356. package/docs/guides/troubleshooting/cli.mdx +39 -0
  357. package/docs/guides/troubleshooting/dependencies.mdx +123 -0
  358. package/docs/guides/troubleshooting/hmr.mdx +148 -0
  359. package/docs/guides/upgrade/_meta.json +1 -0
  360. package/docs/guides/upgrade/config.mdx +951 -0
  361. package/docs/guides/upgrade/entry.mdx +463 -0
  362. package/docs/guides/upgrade/other.mdx +183 -0
  363. package/docs/guides/upgrade/overview.mdx +33 -0
  364. package/docs/guides/upgrade/tailwindcss.mdx +92 -0
  365. package/docs/guides/upgrade/web-server.md +109 -0
  366. package/docs/index.md +4 -0
  367. package/package.json +43 -20
  368. package/scripts/copy-main-doc.mjs +50 -0
@@ -0,0 +1,31 @@
1
+ ---
2
+ title: watchFiles
3
+ ---
4
+
5
+ # dev.watchFiles
6
+
7
+ - **Type:**
8
+
9
+ ```ts
10
+ type WatchFiles =
11
+ | {
12
+ paths: string | string[];
13
+ type?: 'reload-page';
14
+ // watch options for chokidar
15
+ options?: WatchOptions;
16
+ }
17
+ | {
18
+ paths: string | string[];
19
+ type?: 'reload-server';
20
+ };
21
+
22
+ type WatchFilesConfig = WatchFiles | WatchFiles[];
23
+ ```
24
+
25
+ - **Default:** `undefined`
26
+
27
+ Watch specified files and directories for changes. When a file change is detected, it can trigger a page reload or restart the dev server.
28
+
29
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
30
+
31
+ <RsbuildConfig configName="dev.watchFiles" />
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: writeToDisk
3
+ ---
4
+
5
+ # dev.writeToDisk
6
+
7
+ - **Type:** `boolean | ((filename: string) => boolean)`
8
+ - **Default:** `(file) => !file.includes('.hot-update.')`
9
+
10
+ Controls whether the build output from development mode is written to disk.
11
+
12
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="dev.writeToDisk" />
@@ -0,0 +1,33 @@
1
+ ---
2
+ title: sourceBuild
3
+ ---
4
+
5
+ - **Type:** `boolean | PluginSourceBuildOptions`
6
+ - **Default:** `false`
7
+
8
+ Used to enable the ability for source code building. When this configuration option is enabled, Modern.js will read the source code files corresponding to the `source` field in the sub-project's package.json and compile them.
9
+
10
+ ```ts
11
+ export default {
12
+ experiments: {
13
+ sourceBuild: true,
14
+ },
15
+ };
16
+ ```
17
+
18
+ More detail can see ["Source Code Build Mode"](https://modernjs.dev/en/guides/advanced-features/source-build.html)。
19
+
20
+ ### Options
21
+
22
+ `experiments.sourceBuild` is implemented based on [@rsbuild/plugin-source-build](https://github.com/rstackjs/rsbuild-plugin-source-build?tab=readme-ov-file#options). You can pass plugin options like this:
23
+
24
+ ```ts
25
+ export default {
26
+ experiments: {
27
+ sourceBuild: {
28
+ sourceField: 'my-source',
29
+ resolvePriority: 'output',
30
+ },
31
+ },
32
+ };
33
+ ```
@@ -0,0 +1,32 @@
1
+ ---
2
+ title: appIcon
3
+ ---
4
+
5
+ # html.appIcon
6
+
7
+ - **Type:**
8
+
9
+ ```ts
10
+ type AppIconItem = {
11
+ src: string;
12
+ size: number;
13
+ target?: 'apple-touch-icon' | 'web-app-manifest';
14
+ };
15
+
16
+ type AppIcon = {
17
+ name?: string;
18
+ icons: AppIconItem[];
19
+ filename?: string;
20
+ };
21
+ ```
22
+
23
+ - **Default:** `undefined`
24
+
25
+ Set the web application icons to display when added to the home screen of a mobile device:
26
+
27
+ - Generate the web app manifest file and its `icons` field.
28
+ - Generate the `apple-touch-icon` and `manifest` tags in the HTML file.
29
+
30
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
31
+
32
+ <RsbuildConfig configName="html.appIcon" />
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: crossorigin
3
+ ---
4
+
5
+ # html.crossorigin
6
+
7
+ - **Type:** `boolean | 'anonymous' | 'use-credentials'`
8
+ - **Default:** `false`
9
+
10
+ Set the [crossorigin](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/crossorigin) attribute of the `<script>` and `<style>` tags.
11
+
12
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="html.crossorigin" />
@@ -0,0 +1,20 @@
1
+ ---
2
+ title: favicon
3
+ ---
4
+
5
+ # html.favicon
6
+
7
+ - **Type:** `string | Function`
8
+ - **Default:** `undefined`
9
+
10
+ Set the favicon icon path for all pages, can be set as:
11
+
12
+ - a URL.
13
+ - an absolute path to the file.
14
+ - a relative path relative to the project root directory.
15
+
16
+ After config this option, the favicon will be automatically copied to the dist directory during the compilation, and the corresponding `link` tag will be added to the HTML.
17
+
18
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
19
+
20
+ <RsbuildConfig configName="html.favicon" />
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: inject
3
+ ---
4
+
5
+ # html.inject
6
+
7
+ - **Type:** `'head' | 'body' | boolean | Function`
8
+ - **Default:** `'head'`
9
+
10
+ Set the inject position of the `<script>` tag.
11
+
12
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="html.inject" />
@@ -0,0 +1,28 @@
1
+ ---
2
+ title: meta
3
+ ---
4
+
5
+ # html.meta
6
+
7
+ - **Type:** `Object | Function`
8
+ - **Default:**
9
+
10
+ ```js
11
+ const defaultMeta = {
12
+ charset: { charset: 'utf-8' },
13
+ viewport:
14
+ 'width=device-width, initial-scale=1.0, shrink-to-fit=no, viewport-fit=cover, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no',
15
+ 'http-equiv': { 'http-equiv': 'x-ua-compatible', content: 'ie=edge' },
16
+ renderer: 'webkit',
17
+ layoutmode: 'standard',
18
+ imagemode: 'force',
19
+ 'wap-font-scale': 'no',
20
+ 'format-detection': 'telephone=no',
21
+ };
22
+ ```
23
+
24
+ Configure the `<meta>` tag of the HTML.
25
+
26
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
27
+
28
+ <RsbuildConfig configName="html.meta" />
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: mountId
3
+ ---
4
+
5
+ # html.mountId
6
+
7
+ - **Type:** `string`
8
+ - **Default:** `'root'`
9
+
10
+ By default, the `root` element is included in the HTML template for component mounting, and the element id can be modified through `mountId`.
11
+
12
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="html.mountId" />
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: outputStructure
3
+ ---
4
+
5
+ # html.outputStructure
6
+
7
+ - **Type:** `'flat' | 'nested'`
8
+ - **Default:** `'nested'`
9
+
10
+ Define the directory structure of the HTML output files.
11
+
12
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="html.outputStructure" />
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: scriptLoading
3
+ ---
4
+
5
+ # html.scriptLoading
6
+
7
+ - **Type:** `'defer' | 'blocking' | 'module'`
8
+ - **Default:** `'defer'`
9
+
10
+ Used to set how `<script>` tags are loaded.
11
+
12
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="html.scriptLoading" />
@@ -0,0 +1,19 @@
1
+ ---
2
+ title: tags
3
+ ---
4
+
5
+ # html.tags
6
+
7
+ - **Type:**
8
+
9
+ ```ts
10
+ type TagsConfig = HtmlTag | HtmlTagHandler | Array<HtmlTag | HtmlTagHandler>;
11
+ ```
12
+
13
+ - **Default:** `undefined`
14
+
15
+ Modifies the tags that are injected into the HTML page.
16
+
17
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
18
+
19
+ <RsbuildConfig configName="html.tags" />
@@ -0,0 +1,37 @@
1
+ ---
2
+ title: templateParameters
3
+ ---
4
+
5
+ # html.templateParameters
6
+
7
+ - **Type:** `Record<string, unknown> | Function`
8
+ - **Default:**
9
+
10
+ ```ts
11
+ type DefaultParameters = {
12
+ mountId: string; // the value of `html.mountId` config
13
+ entryName: string; // entry name
14
+ assetPrefix: string; // the value of dev.assetPrefix or output.assetPrefix configs
15
+ compilation: Compilation; // Compilation object of Rspack
16
+ rspackConfig: Rspack.Configuration; // Rspack config object
17
+ // generated by html-rspack-plugin
18
+ htmlPlugin: {
19
+ tags: {
20
+ headTags: HtmlTagObject[];
21
+ bodyTags: HtmlTagObject[];
22
+ };
23
+ files: {
24
+ publicPath: string;
25
+ js: Array<string>;
26
+ css: Array<string>;
27
+ favicon?: string;
28
+ };
29
+ };
30
+ };
31
+ ```
32
+
33
+ Define the parameters in the HTML template, corresponding to the `templateParameters` config of [html-rspack-plugin](https://github.com/rstackjs/html-rspack-plugin). You can use the config as an object or a function.
34
+
35
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
36
+
37
+ <RsbuildConfig configName="html.templateParameters" />
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: template
3
+ ---
4
+
5
+ # html.template
6
+
7
+ - **Type:** `string | Function`
8
+ - **Default:**
9
+
10
+ Specifies the file path for the HTML template, which can be a relative or absolute path.
11
+
12
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="html.template" />
@@ -0,0 +1,22 @@
1
+ ---
2
+ title: title
3
+ ---
4
+
5
+ # html.title
6
+
7
+ - **Type:** `string | Function`
8
+ - **Default:** `''`
9
+
10
+ Set the title tag of the HTML page, for example:
11
+
12
+ ```js
13
+ export default {
14
+ html: {
15
+ title: 'example',
16
+ },
17
+ };
18
+ ```
19
+
20
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
21
+
22
+ <RsbuildConfig configName="html.title" />
@@ -0,0 +1,18 @@
1
+ ---
2
+ title: assetPrefix
3
+ ---
4
+
5
+ # output.assetPrefix
6
+
7
+ - **Type:** `string | 'auto'`
8
+ - **Default:** `'/'`
9
+
10
+ In production mode, use this option to set the URL prefix for static assets, such as setting it to a CDN URL.
11
+
12
+ import OutputAssetPrefixExtend from '@site-docs-en/components/output-asset-prefix-extend';
13
+
14
+ <OutputAssetPrefixExtend />
15
+
16
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
17
+
18
+ <RsbuildConfig configName="output.assetPrefix" />
@@ -0,0 +1,81 @@
1
+ ---
2
+ title: assetsRetry
3
+ ---
4
+
5
+ # output.assetsRetry
6
+
7
+ - **Type:** `Object`
8
+
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 this feature injects some runtime code into your HTML and [Rspack Runtime](https://rspack.rs/api/runtime-api/module-variables), it is disabled by default. To enable it, provide an object for the option, for example:
35
+
36
+ ```js
37
+ export default {
38
+ output: {
39
+ assetsRetry: {},
40
+ },
41
+ };
42
+ ```
43
+
44
+ When you enable this feature, the default configuration for `assetsRetry` is:
45
+
46
+ ```ts
47
+ export const defaultAssetsRetryOptions: AssetsRetryOptions = {
48
+ type: ['script', 'link', 'img'],
49
+ domain: [],
50
+ max: 3,
51
+ test: '',
52
+ crossOrigin: false,
53
+ inlineScript: false,
54
+ onRetry: () => {},
55
+ onSuccess: () => {},
56
+ onFail: () => {},
57
+ };
58
+ ```
59
+
60
+ ### Example
61
+
62
+ You can also customize your retry logic using the `assetsRetry` options.
63
+
64
+ For example, setting `assetsRetry.domain` to specify the retry domain when assets fail to load.
65
+
66
+ As an example, you can specify a list of fallback domains via `assetsRetry.domain`. The first domain in the list should match the domain used in your [`assetsPrefix`](./asset-prefix.mdx) configuration:
67
+
68
+ ```js
69
+ export default {
70
+ output: {
71
+ assetsRetry: {
72
+ domain: ['cdn1.com', 'cdn2.com', 'cdn3.com'],
73
+ },
74
+ assetsPrefix: 'https://cdn1.com', // or '//cdn1.com'
75
+ },
76
+ };
77
+ ```
78
+
79
+ With the configuration above, if an asset fails to load from `cdn1.com`, requests will automatically fall back to `cdn2.com`. If `cdn2.com` also fails, the request will continue to `cdn3.com`.
80
+
81
+ `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://github.com/rstackjs/rsbuild-plugin-assets-retry) to understand all available configuration options.
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: charset
3
+ ---
4
+
5
+ # output.charset
6
+
7
+ - **Type:** `'ascii' | 'utf8'`
8
+ - **Default:** `'ascii'`
9
+
10
+ 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.
11
+
12
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="output.charset" />
@@ -0,0 +1,20 @@
1
+ ---
2
+ title: cleanDistPath
3
+ ---
4
+
5
+ # output.cleanDistPath
6
+
7
+ - **Type:** `boolean`
8
+ - **Default:** `true`
9
+
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
+ ```
@@ -0,0 +1,83 @@
1
+ ---
2
+ title: convertToRem
3
+ ---
4
+
5
+ # output.convertToRem
6
+
7
+ - **Type:** `boolean | object`
8
+ - **Default:** `false`
9
+
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/rstackjs/rsbuild-plugin-rem).
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: copy
3
+ ---
4
+
5
+ # output.copy
6
+
7
+ - **Type:**`Rspack.CopyRspackPluginOptions | Rspack.CopyRspackPluginOptions['patterns']`
8
+ - **Default:** `undefined`
9
+
10
+ Copies the specified file or directory to the dist directory, implemented based on [rspack.CopyRspackPlugin](https://rspack.rs/zh/plugins/rspack/copy-rspack-plugin).
11
+
12
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
13
+
14
+ <RsbuildConfig configName="output.copy" />
@@ -0,0 +1,52 @@
1
+ ---
2
+ title: cssModules
3
+ ---
4
+
5
+ # output.cssModules
6
+
7
+ - **Type:**
8
+
9
+ ```ts
10
+ type CssModules = {
11
+ auto?:
12
+ | boolean
13
+ | RegExp
14
+ | ((
15
+ resourcePath: string,
16
+ resourceQuery: string,
17
+ resourceFragment: string,
18
+ ) => boolean);
19
+ exportLocalsConvention?:
20
+ | 'asIs'
21
+ | 'camelCase'
22
+ | 'camelCaseOnly'
23
+ | 'dashes'
24
+ | 'dashesOnly';
25
+ exportGlobals?: boolean;
26
+ localIdentName?: string;
27
+ mode?:
28
+ | 'local'
29
+ | 'global'
30
+ | 'pure'
31
+ | 'icss'
32
+ | ((resourcePath: string) => 'local' | 'global' | 'pure' | 'icss');
33
+ namedExport?: boolean;
34
+ };
35
+ ```
36
+
37
+ - **Default:**
38
+
39
+ ```ts
40
+ const defaultCssModules = {
41
+ auto: true,
42
+ namedExport: false,
43
+ exportGlobals: false,
44
+ exportLocalsConvention: 'camelCase',
45
+ };
46
+ ```
47
+
48
+ For custom CSS Modules configuration.
49
+
50
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
51
+
52
+ <RsbuildConfig configName="output.cssModules" />
@@ -0,0 +1,30 @@
1
+ ---
2
+ title: dataUriLimit
3
+ ---
4
+
5
+ # output.dataUriLimit
6
+
7
+ - **Type:**
8
+
9
+ ```ts
10
+ type DataUriLimitConfig =
11
+ | number
12
+ | {
13
+ svg?: number;
14
+ font?: number;
15
+ image?: number;
16
+ media?: number;
17
+ };
18
+ ```
19
+
20
+ - **Default:**
21
+
22
+ ```js
23
+ const defaultDatUriLimit = 10000;
24
+ ```
25
+
26
+ Set the size threshold to inline static assets such as images and fonts.
27
+
28
+ import RsbuildConfig from '@site-docs-en/components/rsbuild-config-tooltip';
29
+
30
+ <RsbuildConfig configName="output.dataUriLimit" />