Base UI support has moved from “the same source with different wrappers” to real Base UI builds, served automatically through the shadcn CLI.
What changed
- Dedicated Base UI builds. Where a block relies on a primitive API that differs between the libraries (asChild versus render, nativeButton, drawer and calendar props), we now ship a Base UI-specific version of that block instead of the Radix source. Over 1,200 blocks and components have one; the rest are plain markup and share the Radix file.
- Served by the CLI. With a base style and the style-aware registry URL, adding a block installs the Base UI build. No prefixes, no separate ids.
- All eight styles. Vega, Nova, Maia, Lyra, Mira, Luma, Sera and Rhea.
- Third-party components. Kibo UI and Magic UI components that have no Base UI build are served as Shadcnblocks-maintained Base UI builds. Nothing to configure.
- Preview and diff on the site. The library switcher in the block toolbar and the Customize sheet previews any block with Base UI. The Code tab shows the Base UI source and a Diff view against Radix, or a “Same as Radix” note when nothing changes.
- Typechecked. Every Base UI item is compiled against the Base UI wrappers before publish.
{ "style": "base-vega"}