Navigation Core Stable

NavigationMenu

A horizontal row of triggers that each open a rich, multi-column panel below the row — disclosure-pattern site navigation, not an application menu.

Preview

Installation

pnpm add fancy-ui-svelte
import { NavigationMenu } from 'fancy-ui-svelte'

Usage

svelte
<script lang="ts">
  import { NavigationMenu } from 'fancy-ui-svelte';
</script>

<NavigationMenu />

Examples

Basic Usage

Two triggers, each opening a two-column panel with a feature tile and link rows.

A single trigger opening a plain, single-column stack of links.

With Current Page

A panel where one link is marked as the current page.

Props

PropTypeDefaultDescription
value string""The open item's value, bindable. Empty string when every panel is closed.
onValueChange (value: string) => void-Called whenever the open item changes, from any trigger.
label string"Main"Accessible name for the nav landmark.
openDelay number150Delay in ms before a hovered trigger opens its panel.
closeDelay number200Delay in ms before a panel closes after the pointer leaves it and its trigger.
class string-Additional CSS classes for the nav.
ref HTMLElement | nullnullBindable reference to the nav element.

Slots

SlotDescription
childrenTypically a single NavigationMenuList. Snippet<[]> — the compound's own sub-components (NavigationMenuList, NavigationMenuItem, NavigationMenuTrigger, NavigationMenuContent, NavigationMenuLink) are exported from the same module and used inside it.