Skip to content

Menu — Svelte

Terminal window
npm install @fluix-ui/svelte @fluix-ui/css
<script>
import { Menu } from "@fluix-ui/svelte";
import "@fluix-ui/css";
</script>
<Menu.Root orientation="horizontal" variant="pill" theme="dark">
<Menu.Item id="home">Home</Menu.Item>
<Menu.Item id="features">Features</Menu.Item>
<Menu.Item id="pricing">Pricing</Menu.Item>
</Menu.Root>
PropTypeDefaultDescription
orientation"vertical" | "horizontal""horizontal"Layout direction
variant"pill" | "tab""pill"Visual style of the indicator
themeMenuTheme"dark"Color theme
activeIdstring | nullControlled active item ID
defaultActiveIdstring | nullInitial active item (uncontrolled)
onActiveChange(id: string) => voidCalled when active item changes
springSpringConfigcore defaultSpring animation config
roundnessnumberBorder radius factor
blurnumberIndicator blur amount
fillstringBackground color override
<script>
import { Menu } from "@fluix-ui/svelte";
import "@fluix-ui/css";
let active = $state("home");
</script>
<Menu.Root
orientation="horizontal"
variant="pill"
theme="dark"
activeId={active}
onActiveChange={(id) => active = id}
>
<Menu.Item id="home">Home</Menu.Item>
<Menu.Item id="features">Features</Menu.Item>
<Menu.Item id="pricing">Pricing</Menu.Item>
</Menu.Root>
<Menu.Root variant="tab" orientation="horizontal" theme="dark">
<Menu.Item id="overview">Overview</Menu.Item>
<Menu.Item id="analytics">Analytics</Menu.Item>
<Menu.Item id="settings">Settings</Menu.Item>
</Menu.Root>