Skip to content

Releases: web-infra-dev/rspress

v2.0.3

11 Feb 09:14
f7da2a4

Choose a tag to compare

What's Changed

New Features πŸŽ‰

  • feat(SEO/custom-head): Make og:description set automatically by @Karibash in #3115
  • feat(theme/tag): support updated tag and turn "new" tag from blue to green by @SoonIter in #3128

Bug Fixes 🐞

  • fix(theme/outline): prevent sidebar menu text and icons from overflowing on narrow screens and upgrade @rslib/core by @SoonIter in #3108
  • fix(ssg-md): assign useEffect and useLayoutEffect noop value when renderToMarkdownString to match real SSR behavior (renderToString) by @SoonIter in #3121
  • fix(ssg-md): should support MF by @SoonIter in #3123
  • fix(theme/OverviewGroup): limit max columns from 4 to 3 by @SoonIter in #3127

Document πŸ“–

  • docs: sync Steps, Head, and NoSSR content from zh to en by @SoonIter in #3103
  • docs: update quick start to use @rspress/core instead of rspress by @SoonIter in #3106
  • docs: expand brand color presets in CSS variables editor by @SoonIter in #3107
  • docs(migration): add tip to fix broken links instead of disabling checkDeadLinks by @SoonIter in #3119
  • docs: align text layout of live code editor with highlight code block by @KazariEX in #3116
  • docs: some docs tag from new to updated by @SoonIter in #3120
  • docs: add rendering flow image to SSG-MD guide by @SoonIter in #3122
  • docs: add Node.js version requirements to getting started guide by @SoonIter in #3126
  • docs: fix example error in plugin-client-redirects by @ruibaby in #3124

Other Changes

New Contributors

Full Changelog: v2.0.2...v2.0.3

v2.0.2

03 Feb 08:55
f6b253d

Choose a tag to compare

What's Changed

Bug Fixes 🐞

  • fix(theme): Fixed overviewgroup item text wrapping by @elliotcourant in #3085
  • fix(plugin-preview): support QR code scanning on mobile devices and first screen SSR by @SoonIter in #3098

Document πŸ“–

  • docs: translate Chinese labels to English by @junyeokk in #3100
  • docs: add Tailwind CSS v4 & shadcn/ui guides with e2e tests by @SoonIter in #3099
  • docs: add removed packages to migration guide by @SoonIter in #3101

Other Changes

  • Release v2.0.1 by @SoonIter in #3083
  • chore(deps): update all patch dependencies by @renovate[bot] in #3086
  • chore(deps): update dependency @babel/types to ^7.29.0 by @renovate[bot] in #3087
  • chore(infra): update Node for development to 24.13.0 by @tats-u in #3084
  • chore(deps): update dependency @rstest/core to ^0.8.1 by @renovate[bot] in #3090
  • chore(deps): update dependency @microsoft/api-extractor to ^7.56.0 by @renovate[bot] in #3089
  • chore(deps): update dependency tm-themes to v1.11.0 by @renovate[bot] in #3093
  • chore(deps): update playwright monorepo to v1.58.1 by @renovate[bot] in #3094
  • chore(deps): update rspress-plugin-file-tree to ^1.0.4 by @SoonIter in #3096
  • chore(deps): update all patch dependencies by @renovate[bot] in #3091
  • chore(deps): update dependency react-router-dom to ^7.13.0 by @renovate[bot] in #3092
  • Release v2.0.2 by @SoonIter in #3102

New Contributors ❀

hugely thanks ❀

Full Changelog: v2.0.1...v2.0.2

v2.0.1

31 Jan 05:50
da87af8

Choose a tag to compare

What's Changed

New Features πŸŽ‰

Bug Fixes 🐞

  • fix(create-rspress): add type: module to template package.json
  • fix(plugin-api-docgen): support HMR by using rsbuild-plugin-virtual-module by @SoonIter in #3080
  • fix(theme): add margin-bottom to homefeature and use clsx for homebackground by @SoonIter in #3081
  • fix(llms): support multi-version + multi-language in SSG-MD and plugin-llms by @SoonIter in #3076

Other Changes

Full Changelog: v2.0.0...v2.0.1

v2.0.0

30 Jan 10:01
a68fd2b

Choose a tag to compare

Rspress 2.0 πŸš€

banner

πŸ¦€ Rspress 2.0 is officially released, featuring a brand new theme, AI-native SSG-MD and llms.txt generation, Shiki code highlighting, lazyCompilation, an improved documentation development experience.

Read more πŸ‘‰ https://rspress.rs/blog/rspress-v2

What's Changed

New Features πŸŽ‰

  • feat(plugin-algolia): init plugin-algolia by @SoonIter in #1905
  • feat(nav): improve dropdown menu interaction by @chenjiahan in #1910
  • feat(theme)!: use named export instead of default export, for circular imports by @SoonIter in #1873
  • feat!(plugin-shiki): bump shiki to v3, migrate to official transformers by @JounQin in #1672
  • feat: expose builder preview result for programming usage by @JounQin in #1944
  • feat(plugin-algolia): add plugin-algolia and optimize some DX on customizing Search by @SoonIter in #1909
  • feat!: enable search.codeBlocks by default by @chenjiahan in #1952
  • feat(style): add link icon for external links by @chenjiahan in #1964
  • feat(cleanUrl)!: shorter link, "/index" -> "/" when cleanUrls: true by @SoonIter in #1976
  • feat(theme)!: add prefix for isolating tailwind css by @SoonIter in #1990
  • feat(config)!: force successful SSG generation, remove ssg.strict and add ssg.fallback by @SoonIter in #2015
  • feat(plugin-shiki): improve line diff colors by @chenjiahan in #2042
  • feat(theme-default): add beforeHeroActions and afterHeroActions by @SoonIter in #2057
  • feat(ssg)!: remove ssg fallback and add ssg: false hint by @SoonIter in #2055
  • feat: plugin preview add custom entry option by @LonelySnowman in #2043
  • feat(ssg): add printFileSize to SSG, and refactor renderPages to a rsbuildPluginSSG by @SoonIter in #2065
  • feat(deps)!: bump to react@19 and react-dom@19 by default by @SoonIter in #2073
  • feat: migrate all the packages to "type: module" and pure esm with publint by @SoonIter in #2084
  • feat!: drop support for Node 16 by @chenjiahan in #2085
  • feat(plugin-llms): init @rspress/plugin-llms by @SoonIter in #2034
  • feat(plugin-llms): add include option and only generate for default lang by @SoonIter in #2093
  • feat(theme/toc)!: use dynamic toc generation by @ktiays in #2018
  • feat: add localeRedirect: 'only-default-lang' support by @JounQin in #2125
  • feat!: enable dev.lazyCompilation: true by default by @SoonIter in #2123
  • feat: upgrade create-rspress to support npm create rspress@beta by @SoonIter in #2128
  • feat!: support shiki by default, drop prism support by @SoonIter in #2122
  • feat: add _meta.json json schema in rspress/meta-json-schema.json by @SoonIter in #2079
  • feat(theme/dynamic-toc): add .rspress-toc-exclude escape hatch by @SoonIter in #2136
  • feat: update Rsbuild 1.3.18 and set caller name by @chenjiahan in #2139
  • feat(theme): expose classname for crawler by @SoonIter in #2161
  • feat(core): support md definition syntax url by @SoonIter in #2164
  • feat: support file:// protocol and URL for icon by @JounQin in #2167
  • feat(plugin-shiki): upgrade to shiki@^3.4.2 to support langAlias option by @SoonIter in #2177
  • feat: add new CodeBlockRuntime component by @JounQin in #2190
  • feat: enable rehype-raw plugin by default by @JounQin in #2199
  • feat(CodeBlockRuntime): add shikiOptions prop by @SoonIter in #2208
  • feat(plugin-shiki): add @rspress/plugin-shiki/transformers exports and transformerCompatibleMetaHighlight by @SoonIter in #2209
  • feat(CodeBlockRuntime): add onRendered prop by @SoonIter in #2211
  • feat: enable rehype-raw plugin by default by @JounQin in #2213
  • feat(mdx): add markdown.crossCompilerCache for speed up build process by @SoonIter in #2256
  • feat: support async entry by @2heal1 in #2267
  • feat(auto-nav-sidebar)!: rename the top level _meta.json to _nav.json in order to support single Nav Mode by @SoonIter in #2314
  • feat(theme-default): support binary execution commands in PackageManagerTabs component by @artus9033 in #2343
  • feat(plugin-llms): multiple configuration for multiple llms.txt by @SoonIter in #2347
  • feat(rsbuild)!: enable persistent cache by default via performance.buildCache by @SoonIter in #2349
  • feat: change pnpm install packageName to pnpm add packageName on PackageManagerTabs by @Marukome0743 in #2364
  • feat(mdx)!: support File Code Block of ```tsx file="./filename" to write demo code in another file by @SoonIter in #2361
  • feat!: expose type RspressPlugin from "rspress/core", "@rspress/shared" which is a private package should not be installed by users by @SoonIter in #2360
  • feat(auto-nav-sidebar): support custom-link group by @SoonIter in #2379
  • feat(ssg): add ssg.experimentalExcludeRoutePaths by @SoonIter in #2405
  • feat(plugin-sitemap): init @rspress/plugin-sitemap by @SoonIter in #2416
  • feat!: enable checkDeadLinks by default and add markdown.link.autoPrefix by @SoonIter in #2415
  • feat(core)!: routeService ignore "_" prefix files by default by @SoonIter in #2149
  • feat(plugin-llms): add LlmsCopyButton by @SoonIter in #2426
  • feat(plugin-llms/runtime): add markdownLink for copy by @SoonIter in #2439
  • feat: add npm icon to social links by @saseungmin in #2441
  • feat(plugin-llms)!: default value for i18n by @SoonIter in #2448
  • feat(theme)!: add layer for base.css to support tailwind v4 by @SoonIter in #2477
  • feat: generate Open Graph title and type tags by default by @chenjiahan in #2490
  • feat(link): support asset link by @SoonIter in #2498
  • style(theme): update primary text color for better contrast by @chenjiahan in #2499
  • feat(create-rspress): update tsconfig.json by @Timeless0911 in #2509
  • feat(theme): Make it possible to mark elements to be excluded when copying by @Karibash in #2512
  • feat(plugin-llms): support mdFiles.remarkPlugins by @SoonIter in #2516
  • feat: Add a twoslash plugin by @Karibash in #2527
  • feat: enable rspack native watcher by default by @GiveMe-A-Name in #2472
  • feat(plugin-twoslash): Improve error handling with enhanced logging by @Karibash in #2544
  • feat(auto-nav-sidebar): support _meta.json and _nav.json hmr by @SoonIter in #2549
  • feat(twoslash): improve underline styling and adjust popup docs font-size by @chenjiahan in #2554
  • feat: export star from react-router-dom by @zoolsher in #2577
  • feat(plugin-twoslash): Make the popup that is always displayed not flip its display position by @Karibash in #2580
  • feat(theme-default): Make the tab component usable in layouts other than DocLayout by @Karibash in #2589
  • feat(them...
Read more

v2.0.0-rc.8

27 Jan 07:50
008cb48

Choose a tag to compare

What's Changed

New Features πŸŽ‰

  • feat(theme/HomeHero): add new hero image slot and add interactive to document by @SoonIter in #3051
  • feat(plugin-playground)!: change defaultRenderMode to 'pure' and support combined usage with plugin-preview by @SoonIter in #3059

Document πŸ“–

  • docs(css-vars): improve generateThemeCssVariables scope matching for better theme color extraction by @SoonIter in #3058

Other Changes

  • chore(deps): update dependency @docsearch/css to ^4.5.3 by @renovate[bot] in #3055
  • chore(deps): update dependency @docsearch/react to ^4.5.3 (#3055) by @SoonIter in #3056
  • chore(theme/nav): fix hover menu exit transition in nav dropdowns by @Copilot in #3043
  • refactor(theme): remove navbar compatibility class names and update Algolia docs by @SoonIter in #3057
  • Release v2.0.0-rc.8 by @SoonIter in #3061

Full Changelog: v2.0.0-rc.7...v2.0.0-rc.8

v1.47.1

26 Jan 11:56
f202074

Choose a tag to compare

What's Changed

Bug Fixes 🐞

  • fix(plugin-preview): fix React 19 compatibility in preview plugin by @Copilot in #3042

Document πŸ“–

  • docs(v1): add V2 banner to guide users to new documentation by @SoonIter in #3004
  • docs(1.x): update create rspress command to use version 1.x npm create rspress@1.x by @SoonIter in #3044

Other Changes

Full Changelog: v1.47.0...v1.47.1

v2.0.0-rc.7

23 Jan 08:59
59c4c10

Choose a tag to compare

What's Changed

New Features πŸŽ‰

  • feat(theme/SvgWrapper): icon field support svg and img icon in HomeLayout by @SoonIter in #3036
  • feat(theme/icon): extract IconLink use in LlmsViewOptions by @jaworek in #3046

Bug Fixes 🐞

Document πŸ“–

  • docs: fix custom theme examples and update documentation by @SoonIter in #3035
  • docs: improve Overview page and custom-theme related pages by @SoonIter in #3037
  • docs: improve documentation and sync zh/en by @SoonIter in #3040
  • docs(ssg-md): improve document structure for better usability by @SoonIter in #3047

Other Changes

  • chore(deps): update dependency lodash-es to v4.17.23 [security] by @renovate[bot] in #3038
  • chore(theme): remove unused icons and update docs by @SoonIter in #3048
  • chore(theme): standardize link icon SVG attributes format by @SoonIter in #3049
  • chore(deps): upgrade rsbuild to 2.0.0-alpha.2 by @Copilot in #3050
  • Release v2.0.0-rc.7 by @SoonIter in #3052

New Contributors

Full Changelog: v2.0.0-rc.6...v2.0.0-rc.7

v2.0.0-rc.6

21 Jan 04:49
a06dbcb

Choose a tag to compare

What's Changed

New Features πŸŽ‰

  • feat(core): auto-extract description from first contentful line in extractPageData by @SoonIter in #3006
  • feat(theme/nav): Added fancy transition to nav background by @elliotcourant in #3017
  • feat(theme): make NavTitle component ejectable by @SoonIter in #3022
  • feat(core): add markdown.extractDescription config by @SoonIter in #3023
  • feat(core): move Llms runtime components from plugin-llms to core/theme by @SoonIter in #3026
  • feat(core): add logoHref config option by @SoonIter in #3012
  • feat(ssg-md)!: add llmsUI config option to automatically show LlmsCopyButton and LlmsViewOptions when set llms: true by @SoonIter in #3029

Performance πŸš€

  • perf(core): skip search index generation when search is disabled by @SoonIter in #3031

Bug Fixes 🐞

  • fix(theme): fix inline code style in Callout when code is direct child of content by @SoonIter in #2997
  • fix(config/types): defineConfig should support asyncFn by @SoonIter in #3000
  • fix(core): improve i18n missing keys warning with configuration hints by @SoonIter in #3030
  • fix(ssg): collapse experimentalExcludeRoutePaths log when too many routes are ignored by @SoonIter in #3032

Document πŸ“–

  • docs: add troubleshooting tip for @rspress/core/theme-original export errors in migration guide by @SoonIter in #2984
  • docs(guide): rewrite SSG documentation with comprehensive explanations by @SoonIter in #2985
  • docs(ssg): add 404.html to output structure and troubleshooting for page refresh 404 by @SoonIter in #2987
  • docs: improve conventional route documentation with better examples and best practices by @SoonIter in #2995
  • docs: add Callout component documentation by @SoonIter in #2998
  • docs: add tip for pageType: doc-wide usage with outline: false by @SoonIter in #3005
  • docs: add frontmatter description to guide docs (zh & en) by @SoonIter in #3007
  • docs: Update documentation and improve frontmatter references by @SoonIter in #3009
  • docs: improve static assets documentation structure and clarifiy public folder usage by @SoonIter in #3011
  • docs: simplify CSS modification state management by @SoonIter in #3014
  • docs(zh): rename "ι’„θ§ˆι‘΅" to "Overview ι‘΅" for terminology consistency by @SoonIter in #3016
  • docs(theme): refactor home page and component documentation by @SoonIter in #3015
  • docs: remove URL parameters as switches section from custom page docs by @SoonIter in #3024
  • docs(description): add description frontmatter to ui documentation files by @SoonIter in #3008

Other Changes

  • chore(deps): update all patch dependencies by @renovate[bot] in #2991
  • chore(deps): update dependency react-router-dom to ^7.12.0 by @renovate[bot] in #2992
  • chore(deps): update pnpm to v10.28.0 by @renovate[bot] in #2993
  • chore(deps): update shiki monorepo to ^3.21.0 by @renovate[bot] in #2994
  • chore(deps): upgrade @rslib/core 0.19.2 by @SoonIter in #3002
  • refactor(plugin-rss)!: requires the ssg config, and remove _html field by @SoonIter in #3003
  • refactor(core): replace @rspress/mdx-rs and html-to-text with @mdx-js/mdx createProcessor for toc and searchIndex generation by @SoonIter in #3001
  • chore(deps): update all patch dependencies by @renovate[bot] in #3018
  • chore(deps): update actions/setup-node action to v6.2.0 by @renovate[bot] in #3019
  • chore(deps): update dependency cspell to ^9.6.0 by @renovate[bot] in #3021
  • chore(deps): update dependency @rsdoctor/rspack-plugin to v1.5.0 by @renovate[bot] in #3020
  • chore(ssg): experimentalExcludeRoutePaths warning level to info by @SoonIter in #3025
  • Release v2.0.0-rc.6 by @SoonIter in #3033

Full Changelog: v2.0.0-rc.5...v2.0.0-rc.6

v2.0.0-rc.5

09 Jan 07:08
bf0e42f

Choose a tag to compare

What's Changed

New Features πŸŽ‰

  • feat(theme): support clickable badge in HomeHero by @SoonIter in #2969
  • feat(ssg-md): add SSG-MD support to OverviewGroup and FallbackHeading components (Vibe Kanban) by @SoonIter in #2966

Bug Fixes 🐞

Document πŸ“–

  • docs: update links from rspack-contrib to rstackjs by @chenjiahan in #2953
  • docs: add migrate from V1 by @SoonIter in #2954
  • docs: add missing Layout slots (beforeNavMenu, afterNav) and add Layout Slots heading (Vibe Kanban) by @SoonIter in #2964
  • docs: remove work-in-progress warning from CSS variables documentation (Vibe Kanban) by @SoonIter in #2972
  • docs: add prettier-ignore to wrapCode examples in code-blocks documentation by @SoonIter in #2974
  • docs: improve plugin-llms warning about implementation limitations and SSR compatibility by @SoonIter in #2975
  • docs: add rspress-plugin-file-tree and use tree syntax for file tree code blocks by @SoonIter in #2976
  • docs: update auto-nav-sidebar to recommend index.mdx for dir, index convention by @SoonIter in #2978
  • docs: Update introduction and index for Rspress V2 by @SoonIter in #2971
  • docs: add documentation for markdown.crossCompilerCache option by @SoonIter in #2979

Other Changes

  • chore(deps): update all patch dependencies by @renovate[bot] in #2957
  • chore(deps): update dependency @rslib/core to v0.19.1 by @renovate[bot] in #2959
  • chore(deps): update dependency @unhead/react to ^2.1.1 by @renovate[bot] in #2960
  • chore(deps): update dependency @rsbuild/core to ~1.7.1 by @renovate[bot] in #2958
  • refactor(theme/dark): simplify useThemeState hook and avoid dark mode flash by @SoonIter in #2955
  • refactor!: merge @rspress/runtime into @rspress/core package and remove @rspress/runtime package by @SoonIter in #2935
  • chore(core): expose routePathToMdPath utility in runtime by @SoonIter in #2967
  • chore(deps): update rspress-plugin-file-tree to ^1.0.3 by @SoonIter in #2977
  • Release v2.0.0-rc.5 by @SoonIter in #2982

Full Changelog: v2.0.0-rc.4...v2.0.0-rc.5

v2.0.0-rc.4

31 Dec 08:06
48515d8

Choose a tag to compare

What's Changed

New Features πŸŽ‰

  • feat(ssg-md): support Overview and HomeLayout by @SoonIter in #2933
  • feat(core): add import.meta.env.SSR and import.meta.env.SSG_MD by @SoonIter in #2948
  • feat(theme/nav): support multiple level nested navigation items by @SoonIter in #2943
  • feat(nodejs)!: drop support of node 18, upgrade engines to node >= 20.9.0 by @SoonIter in #2924

Bug Fixes 🐞

  • fix(core): Iterator#map is only available on Node 22+ by @JounQin in #2923
  • fix(theme/Sidebar): sidebar should also listen location changes by @JounQin in #2922
  • fix(theme): improve SSR compatibility by @SoonIter in #2934
  • fix: hover group links should also calc active with matchNavbar by default by @JounQin in #2930
  • fix(theme/Nav): render empty nav items correctly not link by @JounQin in #2929
  • fix(theme/Layout): render beforeNavMenu correctly by @JounQin in #2822
  • fix(ssg-md): use .md links instead of .html in Overview SSG-MD mode by @SoonIter in #2944
  • fix(plugin-algolia): upgrade docsearch and fix the css regression by @SoonIter in #2946
  • fix(theme/Codeblock): revert the code shadow and enhance the separator line by @SoonIter in #2931
  • fix(plugin-algolia): should remove base by @SoonIter in #2949

Document πŸ“–

  • docs: Add wrap vs eject guides for customizing Rspress theme by @Copilot in #2906
  • docs: upgrade custom-theme and add wrap and eject by @SoonIter in #2925
  • docs: upgrade llms.txt and ssg-md by @SoonIter in #2927
  • docs: fix og-image cjk wrong font and title slice logic by @SoonIter in #2919
  • docs: typo translate by @SoonIter in #2932
  • docs: fix the shiki highlighter ansi "/" by @SoonIter in #2947
  • docs: add SSG vs SSG-MD comparison table by @SoonIter in #2950

Other Changes

  • chore(deps): update all patch dependencies by @renovate[bot] in #2938
  • chore(deps): update dependency @docsearch/css to ^4.4.0 by @renovate[bot] in #2939
  • chore(deps): update dependency @docsearch/react to ^4.4.0 by @renovate[bot] in #2941
  • chore(deps): update dependency @rsdoctor/rspack-plugin to v1.4.0 by @renovate[bot] in #2942
  • Release v2.0.0-rc.4 by @SoonIter in #2936

Full Changelog: v2.0.0-rc.3...v2.0.0-rc.4