Skip to content

Release 11.0.0

Choose a tag to compare

@mrin9 mrin9 released this 14 Oct 12:44
· 11 commits to master since this release

πŸš€ RapiDoc v11.0.0 (Breaking Change)

We are thrilled to announce the official release of RapiDoc v11.0.0! πŸŽ‰

This major milestone introduces a complete modernization of RapiDoc's styling architecture around W3C Web Standards, featuring a shadcn/ui-compatible CSS design token system, native CSS Shadow Parts (::part()), and OpenAPI 3.1 capabilities, alongside major performance, schema rendering, and authentication upgrades.


🌟 Highlights

🎨 Modern Theming & shadcn/ui-Compatible Design Tokens

  • shadcn/ui & Tailwind Compatibility: RapiDoc's new CSS custom property design token system (--background, --foreground, --primary, --primary-foreground, --border, --muted, --muted-foreground, etc.) directly mirrors modern design systems like shadcn/ui and Tailwind CSS, making RapiDoc seamlessly blend into existing application shells and portals.
  • W3C CSS Custom Properties & Shadow Parts: Eliminated attribute bloat by deprecating granular styling attributes (bg-color, text-color, nav-bg-color, primary-color, regular-font, etc.) in favor of standard CSS custom properties and ::part() pseudo-elements (::part(section-navbar), ::part(btn-fill), ::part(btn-try), ::part(section-servers), etc.).
  • Redefined theme Attribute: Now selects from 7 curated design system presets (amber, blue, emerald, violet, graphite, rose, slate) or accepts any custom brand hex color (e.g., theme="#2563eb").
  • Automatic Contrast Engine: Automatically evaluates the luminance of your brand color to render WCAG-compliant high-contrast button labels and badge text without manual tuning.
  • Surface Control with color-scheme: Seamless light/dark surface rendering with color-scheme="dark", color-scheme="light", or color-scheme="system" (automatically adapts to OS/browser dark mode preferences).
  • Proportional Scaling & Radius Tokens: Introduced proportional UI scaling via scale="sm | default | lg", border radius presets via radius="none | sm | md | lg", and sidebar density via nav-item-spacing="compact | default | relaxed".

πŸ“‘ OpenAPI 3.1 , 3.2 & Schema Engine Enhancements

  • OpenAPI 3.1 Keywords: Full support for contentMediaType and contentEncoding (fixes #1137).
  • OpenAPI 3.2 Additional Operation: Support added for new HTTP verbs like QUERY, TRACE
  • Union Type Display: Enhanced anyOf and oneOf handling in schema types, rendering clean union strings (e.g. string ┃ null) (fixes #1089).
  • Typed AST Refactor: Enhanced schema description formatting, table/tree rendering, and prevented duplicate examples in nested oneOf dropdowns.
  • Circular Reference Stability: Hardened circular schema reference resolution and navigation highlighting.
  • YAML Alias Limits: Handled YAML specifications with high alias/anchor counts safely in the spec parser.
  • Null-Safe XML Serialization: Fixed XML tag resolution for array items and improved error resilience.

πŸ” Security & OAuth Improvements

  • Custom OAuth Parameters & Lifecycle Events: Added support for x-authorize-params and x-token-params vendor extensions with authorization events (fixes #1116).
  • Client Credentials Fix: Defaults client credentials to request body and prevents duplicate credentials (fixes #1014).
  • Relative Refresh URL Resolution: Properly resolves relative refreshUrl against OpenAPI server URLs.
  • Root Security Inheritance: Inherits root-level OpenAPI security requirements across operations.
  • Optional Security Schemes: Accurately renders and supports optional security schemes (fixes #1097).
  • Dynamic Attribute Safety: Prevents runtime errors when updating API key attributes while specs are loading.

⚑ Navigation, Layout & Console UX

  • Sidebar Filter & Glassmorphism: Frosted glass (backdrop-filter) effect for the navigation search header and tag headings.
  • Navigation Sync: Stabilized scroll spy and smooth auto-scrolling during fast keyboard/wheel navigation.
  • Responsive Row-to-Column Stacking: Request and response panels dynamically adapt layout based on viewport and container queries.
  • cURL Generation: Fixed multipart multipart/form-data formatting in generated cURL commands.
  • Lit 3 State Hygiene: Prevented ChildPart marker ejection during interactive "TRY" requests.

πŸ”„ Breaking Changes & Migration Quick Guide

Deprecated v10 Attribute Modern v11 Replacement Type / Mechanism
theme="dark" / theme="light" color-scheme="dark" / color-scheme="light" Attribute
primary-color theme="#hex" or --primary: #hex; Attribute / CSS Variable
bg-color --background: #hex; CSS Variable (shadcn/ui compatible)
text-color --foreground: #hex; CSS Variable (shadcn/ui compatible)
nav-bg-color --nav-background: #hex; or ::part(section-navbar) CSS Variable / Shadow Part
nav-text-color --nav-foreground: #hex; CSS Variable
nav-hover-bg-color / nav-hover-text-color --nav-hover-bg / --nav-hover-fg CSS Variables
nav-accent-color / nav-accent-text-color theme / --nav-accent-fg Attribute / CSS Variable
regular-font / mono-font --font-sans / --font-mono CSS Variables
font-size="default | large | largest" scale="sm | default | lg" Attribute

πŸ“– Full Migration Guide: Migrating from RapiDoc v10 to v11


πŸ“¦ Installation & Upgrading

Via NPM

npm install rapidoc@11.0.0

Via CDN (ESM / Script tag)

<script type="module" src="https://unpkg.com/rapidoc@11.0.0/dist/rapidoc-min.js"></script>

❀️ Acknowledgements

Special thanks to all community members and contributors who filed issues, tested release candidates, and helped shape RapiDoc v11!