This is an alpha port of HeadlessUI targeting Svelte 5 (or later).
A primary design goal is to stay as reasonably faithful to the HeadlessUI-React API as possible, in order to integrate better with TailwindUI. A secondary design goal is to align folder naming and tests, in order to reduce cognitive burden when porting and making updates.
This can manifest in strange, but intentional, ways:
hooks
folder (not SvelteKit hooks)testing-library
functionalityFragment
componentnpm install @robotpajamas/headlessui-svelte
Full documenation and examples will eventually live at headlessui-svelte.com
The target compatibility for the components below is based on HeadlessUI React 2.2.0 (d71fb9c). A component is considered completed when most of the mapped-over tests pass, and the component functions similarly to headlessui.com.
Other Svelte-based HeadlessUI implementations:
This library is licensed under the MIT license; see the LICENSE file for more.