shadcn/ui for Vue, Svelte, Angular, React Native, and HTML
shadcn/ui itself is React only, but community ports bring the same copy-paste model to other stacks. Use shadcn-vue for Vue, shadcn-svelte for Svelte, spartan/ui for Angular, React Native Reusables for mobile, and Basecoat UI for plain HTML. All of them are MIT licensed.
Ports by framework
These are community projects, not official shadcn/ui releases. The official shadcn/ui components are React only and can use Base UI, Radix UI, or React Aria underneath.
| Framework | Project | Built on |
|---|---|---|
| Vue | shadcn-vue | Reka UI |
| Svelte | shadcn-svelte | Bits UI |
| Angular | spartan/ui | spartan brain primitives |
| React Native | React Native Reusables | rn-primitives and Nativewind |
| Plain HTML | Basecoat UI | Tailwind CSS and a little vanilla JavaScript |
| Solid | solid-ui | Kobalte and corvu |
Laravel
You do not need a port for Laravel. The official Laravel starter kits already use shadcn/ui for React, shadcn-vue for Vue, and shadcn-svelte for Svelte, through Inertia. The Livewire kit uses Flux UI instead. With the React kit, Watermelon components install with the same shadcn CLI.
React projects
If you are on React, use shadcn/ui directly and add free React components, blocks, and dashboards from Watermelon UI.
Frequently asked questions
Does shadcn/ui support Vue?
Not officially. shadcn-vue is a community port with the same copy-paste model, built on Reka UI.
Is there a shadcn/ui for Angular?
Yes. spartan/ui is an MIT licensed Angular library inspired by shadcn/ui, with its own CLI.