Base UI is a library of headless ('unstyled') React components and low-level hooks. You gain complete control over your app's CSS and accessibility features.
Published Node.js and peer-dependency requirements.
No declared requirement changes.
15 Jan 2026 · Newest first
Last checked
Checking sources…
Showing 1 of 1 releases. Full release notes.
Signals highlight changes worth reviewing. They cannot determine whether your application is affected.
Fix highlight being removed on popup mouseout when
highlightItemOnHoveris disabled (#3492) by @atomiks
Refactor popup auto resize logic. It is no longer necessary to specify
--positioner-width/--positioner-heightCSS variables on<Popover.Positioner>when using detached triggers unless theViewportpart has been added to the JSX. (#3652) by @atomiks
Refactor popup auto resize logic. It is no longer necessary to specify
--positioner-width/--positioner-heightCSS variables on<Tooltip.Positioner>when using detached triggers unless theViewportpart has been added to the JSX. (#3652) by @atomiks
onOpenChangeComplete(true) timing (#3558) by @atomiksopenMethod when tapping outside element bounds on Safari (#3541) by @atomiksref in BaseUIComponentProps (#2813) by @atomiksdisabled prop (#3650) by @seongminnactionsRef to be null (#3682) by @mj12albertdata-popup-side and data-list-empty state attributes to <Autocomplete.Trigger> (#3491) by @atomiksloopFocus prop (#3592) by @atomiksid and required props (#3640) by @atomiksid and required props (#3640) by @atomiksdata-popup-side and data-list-empty state attributes to <Combobox.Trigger> (#3491) by @atomiksloopFocus prop (#3592) by @atomikstoolbar role to <Combobox.Chips> to prevent NVDA from entering browse mode (#3647) by @atomiksplaceholder prop to <Combobox.Value> (#3604) by @atomiksvalue prop when items change (#3607) by @atomiksmultiple values label resolution in <Combobox.Value> (#3314) by @atomiksid to visible form element (#3722) by @atomiksonBlur handlers when opening popup (#3609) by @atomiksCSPProvider (#3553) by @atomiksMaximum update depth exceeded error with Suspense (#3700) by @michaldudak<Dialog.Title> forwardedRef type (#3736) by @ZeeshanTamboliactionsRef prop (#3395) by @mj12albertnativeLabel prop to <Field.Label> (#3723) by @atomiksactionsRef prop (#3395) by @mj12albertdata-focused state (#3563) by @atomiks--positioner-width/--positioner-height CSS variables on <Popover.Positioner> when using detached triggers unless the Viewport part has been added to the JSX. (#3652) by @atomiksplaceholder prop to <Select.Value> (#3604) by @atomiksalignItemWithTrigger is active (#3532) by @atomiksmax-height popup style when alignItemWithTrigger is active (#3573) by @atomiksdata-filled state in multiple mode (#3608) by @atomikshighlightItemOnHover is disabled (#3492) by @atomiksalignItemWithTrigger is active (#3637) by @atomiksmultiple values label resolution in <Select.Value> (#3314) by @atomiksid to visible form element (#3722) by @atomiksonBlur handlers when opening popup (#3609) by @atomiksonValueCommitted not called for range sliders (#3600) by @mj12alberttrackCursorAxis handling (#3679) by @atomiks--positioner-width/--positioner-height CSS variables on <Tooltip.Positioner> when using detached triggers unless the Viewport part has been added to the JSX. (#3652) by @atomiksmergeProps public (#3642) by @michaldudak and @LukasTyAll contributors of this release in alphabetical order: @albertdugba, @atomiks, @brijeshb42, @chuganzy, @colmtuite, @dav-is, @DiegoAndai, @Grafikart, @Janpot, @LukasTy, @michaldudak, @mj12albert, @oliviertassinari, @seongminn, @updbqn, @ZeeshanTamboli