Search the docs

Search Keyframery's docs

Keyframery

Base UI vs Radix

Keyframery animates shadcn/ui the same way on Base UI and Radix. What differs underneath: open-state attributes, exit handling, drawers and toasts.

shadcn/ui ships each component on two bases: Base UI and Radix. Both name their parts with the same data-slot attributes, such as dialog-content and tabs-trigger. Keyframery finds parts by those names, so the same <Cuts /> works on either base. Every cut is tested on both, in Chromium, WebKit and Firefox.

What differs

Base UIRadix
Open state on partsdata-open / data-closeddata-state="open" / "closed"
Exit animationsthe popup stays mounted until its exit endsPresence keeps it mounted until its exit ends
Drawerdrawer-popup, Base UI's own drawerdrawer-content, built on Vaul
ToastBase UI Toast, plus sonnersonner

Keyframery reads both forms of the open state, waits for the exit like the library does, and handles both drawers and both toasts.

What you write is the same

Menus, variables and attributes are identical on both bases. A project can even switch base later without touching its Keyframery setup.

On this page