Add accessible dialogs, dropdowns, and tooltips to a Svelte app without writing them from scratch
Customize the styling of pre-built UI components to match your brand by editing the code you pasted in
Speed up building a SvelteKit app by copying only the components you need directly into your project
shadcn-svelte is a community-built collection of UI components for Svelte, a JavaScript framework for building web interfaces. It is a port of a popular React component library called shadcn/ui, adapted to work with Svelte instead. The project is not officially affiliated with the original shadcn/ui, but the README notes that the original author gave his approval before this project was started. The idea behind both projects is different from most component libraries. Rather than installing a package and importing components from it, you copy and paste the component code directly into your own project. This means you own the code completely. You can read it, modify it, style it however you want, and it stays in your codebase. There is no dependency to keep updated, and no library version that might change behavior on you. The components are designed with accessibility in mind and are built on top of another library called Bits UI, which provides the underlying behavior for things like dialogs, dropdowns, and tooltips. The visual styling can be adjusted to match your project's design. This is primarily a starting point or a building block rather than a finished product. The intended use is to grab the components you need, put them in your codebase, and then adapt them from there. The project works with Svelte 5 and SvelteKit, and documentation is available at the project's own website. It is free and open source under the MIT license, maintained by its original author with help from community contributors. A Discord server is available for questions and collaboration.
← huntabyte on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.