Accessible, customizable, and framework-agnostic UI building blocks. Copy, paste, and create beautiful apps with ease. Open Source.
Vanilla UI
The team at Vanilla UI are passionate about Web Components and accessibility 🚀 We’ve ported the
power of Radix UI into a framework-agnostic library using Web
Components with Light DOM.
@vanilla-primitives/core: A direct port of Radix UI primitives to Web Components using Light DOM.
@vanilla-primitives/styled: Pre-styled, customizable components built on top of @vanilla-primitives/core. This is basically Shadcn with extended features.
Show DialogAre you absolutely sure?
This action cannot be undone. This will permanently delete your
account and remove your data from our servers.
CancelContinue
Show DialogAre you absolutely sure?
This action cannot be undone. This will permanently delete your
account and remove your data from our servers.
CancelContinue
<alert-dialog> <alert-dialog-trigger asChild> <vanilla-button variant="outline">Show Dialog</vanilla-button> </alert-dialog-trigger> <alert-dialog-content> <alert-dialog-header> <alert-dialog-title>Are you absolutely sure?</alert-dialog-title> <alert-dialog-description> This action cannot be undone. This will permanently delete your account and remove your data from our servers. </alert-dialog-description> </alert-dialog-header> <alert-dialog-footer> <alert-dialog-cancel>Cancel</alert-dialog-cancel> <vanilla-button>Continue</vanilla-button> </alert-dialog-footer> </alert-dialog-content></alert-dialog>
<alert-dialog> <alert-dialog-trigger asChild> <vanilla-button variant="outline">Show Dialog</vanilla-button> </alert-dialog-trigger> <alert-dialog-content> <alert-dialog-header> <alert-dialog-title>Are you absolutely sure?</alert-dialog-title> <alert-dialog-description> This action cannot be undone. This will permanently delete your account and remove your data from our servers. </alert-dialog-description> </alert-dialog-header> <alert-dialog-footer> <alert-dialog-cancel>Cancel</alert-dialog-cancel> <vanilla-button>Continue</vanilla-button> </alert-dialog-footer> </alert-dialog-content></alert-dialog>
Copy the Code. That’s all you need!
Simply import the Vanilla UI library, paste in the element, and you’re set 🎉
Vanilla UI draws inspiration from several fantastic projects in the UI component space:
Radix UI: The original inspiration for our headless components, known for its accessibility and flexibility.
shadcn/ui: A collection of re-usable components built using Radix UI and Tailwind CSS.
Bits UI: Svelte-based unstyled, accessible components inspired by Radix UI.
Melt UI: Another Svelte-based headless UI library focused on accessibility and customization.
Pines UI: A collection of Alpine.js and Tailwind CSS components.
We’ve learned from and been inspired by these projects, aiming to bring their best qualities to the world of Web Components.
Vanilla UI bridges the gap between powerful component architectures and Web Standards, offering developers a versatile toolkit for creating accessible, efficient, and customizable user interfaces.