starwind
Astro-first, framework-portable UI components you can own.
Starwind UI gives you accessible, Tailwind CSS components with Starwind/shadcn-style ergonomics, backed by a portable Runtime that powers Astro, React, Vue 3.5 beta, and Svelte 5 beta adapters today.
Why Starwind?
- 🎯 Own Your Code — Styled components live in your project, where you can understand and customize them.
- ✨ Animated by Default — Smooth, polished animations out of the box with Tailwind CSS v4.
- ♿ Accessible — Keyboard navigable and screen reader friendly. Built with a11y in mind.
- 🚀 Portable Runtime — Shared DOM behavior with generated Astro, React, Vue 3.5 beta, and Svelte 5 beta adapters.
- 🛠️ CLI-Powered — Add only what you need with a simple
npx starwind addcommand.
Looking for the main package? See starwind-ui/cli.
Get Started
Initialize an Astro or React project with the stable release:
npx starwind@latest init
Then add the components you need:
npx starwind@latest add
Vue 3.5 beta
Try the public beta in Vite Vue, Astro Vue, Nuxt 3 or 4, Laravel with Inertia Vue, or Quasar Vite SPA/SSR projects:
npm install @starwind-ui/vue@beta vue@^3.5
npx starwind@latest init --framework vue
Vue adapters use idiomatic v-model arguments, matching update:* events, and normal detailed
event listeners. The Styled Image component remains Astro-only. The Vue API can change during the
0.x series. Report beta feedback in the
Starwind UI issue tracker.
Svelte 5 beta
Try the public beta in Vite with Svelte, SvelteKit, or Astro with Svelte:
npm install @starwind-ui/svelte@beta "svelte@>=5.29.0 <6"
npx starwind@latest init --framework svelte
The beta provides the same 36 Primitive families and 54 portable Styled components as the other
first-party adapters. The Styled Image component remains Astro-only. Starwind Pro setup is not
available for Svelte. The Svelte API can change during the 0.x series.
Runtime Architecture
Starwind components use a framework adapter backed by the shared, framework-neutral Runtime.
flowchart TD
App["Your application"]
Components["Starwind components you own<br/>Tailwind CSS + framework markup"]
Adapter["Framework adapter<br/>Astro, React, Vue 3.5 beta, or Svelte 5 beta"]
Runtime["Starwind Runtime<br/>shared accessible behavior"]
Browser["Browser APIs and the DOM"]
App --> Components
Components --> Adapter
Adapter --> Runtime
Runtime --> Browser
See Portable Runtime for the current implementation details.
AI integration
Resources for AI:
Contributing
Please read the contributing guide.
License
Licensed under the MIT license.
Related Packages
Add a ripple-style theme toggle animation to your Astro project with ease
A modern CSS design system with semantic theming, 14 themes, accessible componen...
Add Ravox Kit components, blocks and themes to your project (React, Vue, Svelte...
Version History
| Version | Released | License |
|---|---|---|
| 3.4.0 | MIT | |
| 3.3.2 | MIT | |
| 3.3.1 | MIT | |
| 3.3.0 | MIT | |
| 3.2.0 | MIT | |
| 3.1.0 | MIT | |
| 3.0.1 | MIT | |
| 3.0.0 | MIT | |
| 2.0.1 | MIT | |
| 2.0.0 | MIT | |
| 1.16.2 | MIT | |
| 1.16.1 | MIT | |
| 1.16.0 | MIT | |
| 1.15.5 | MIT | |
| 1.15.4 | MIT | |
| 1.15.3 | MIT | |
| 1.15.2 | MIT | |
| 1.15.1 | MIT | |
| 1.15.0 | MIT | |
| 1.14.0 | MIT | |
| 1.13.0 | MIT | |
| 1.12.4 | MIT | |
| 1.12.3 | MIT | |
| 1.12.2 | MIT | |
| 1.12.1 | MIT | |
| 1.12.0 | MIT | |
| 1.11.2 | MIT | |
| 1.11.1 | MIT | |
| 1.11.0 | MIT | |
| 1.10.1 | MIT |
Showing the latest 30 of 57. See every release on npm
Pre-releases (11)
| Version | Released | License |
|---|---|---|
| 3.0.0-beta.8 | MIT | |
| 3.0.0-beta.7 | MIT | |
| 3.0.0-beta.6 | MIT | |
| 3.0.0-beta.5 | MIT | |
| 3.0.0-beta.4 | MIT | |
| 3.0.0-beta.3 | MIT | |
| 3.0.0-beta.2 | MIT | |
| 3.0.0-beta.1 | MIT | |
| 1.12.2-next.1 | MIT | |
| 1.12.2-next.0 | MIT | |
| 1.1.0-next.1 | MIT |