npm / @heroui/react
@heroui/react
What changed in @heroui/react 2 to 3, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-18.
1 breaking3 new APIs and options1 behavior and defaults3 tooling29 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli init@heroui/react 37 changes
Breaking changes 1
HeroUI v3 styling uses Tailwind CSS v4.
New APIs and options 2
The architecture uses compound components and is fully customizable and headless-ready.
A new HeroUI library for React Native is introduced, built from scratch with 37+ components.
Behavior and default changes 1
Animations move to CSS, with no JS runtime.
Tooling 3
Agent Skills are included as part of the developer tooling for AI assistants.
LLMs.txt is included as part of the developer tooling for AI assistants.
An MCP Server is included as part of the developer tooling for AI assistants.
@heroui/react 230 changes
New APIs and options 1
Added support for outside-top label placement.
Fixes and other changes 29
Reopening the dropdown scrolls to the selected item.
Transform position now persists across renders when using useDraggable.
Corrected disableRipple prop precedence for Button.
Fixed extendVariants rendering behavior when using as.
Fixes click behavior for dynamically generated accordion items.
Opens the date picker when clicking its border.
Fixes the types for compound variants in extendVariants.
Prevents option focus from start and end content slots.
Improves the layout for large page counts.
Resolves a race condition with cached images on Firefox and Safari.
Fixes the password reveal button visibility.
Fixes the link overriding the role.
Fixes the default transition duration.
Fixed the mobile close button display and showing the popover when emptyContent is provided with allowsCustomValue.
Fixed a flickering issue in the code block.
Added slot support and fixed respecting defaultVariants.className in system RSC.
Bordered focus styles now take precedence over hover.
Fixed Safari autofill styling for dark mode readability.
Fixed an issue where useHref was not working correctly.
Fixed label positioning for empty percent format and included labelPlacement in the dependency array.
Fixed handling of props styles in getBaseProps.
Fixed ripple misalignment in RTL layouts by using transform.
Fixed incorrect label positioning.
The shimmer animation no longer plays when disableAnimation is true.
Fixed spinner animation and support for the global spinner variant.
Fixed column props not being recognized and virtualized tables in Firefox by replacing Spacer with CSS.
Fixed the tab cursor and its responsive resizing so it matches the selected tab.
Fixed vertical tabs support for accessible navigation and aria-orientation.
Fixed long text exceeding the wrapper.