UIPackage
Menu

Framework

Change language

Boilerplate repo

Menubar

menubarui

Top-level menu bar — File / Edit / View — for desktop-style apps. Same primitives as Dropdown Menu but laid out horizontally and keyboard-navigable across siblings (left/right arrows).

Also available for React ->

Installation

$npx shadcn-vue@latest add https://uipkge.dev/r/vue/menubar.json
Named registry:npx shadcn-vue@latest add @uipkge/menubarInstalls to:app/components/ui/menubar/

Examples

Loading interactive previews…

Props

NameType / ValuesDefaultRequired
classHTMLAttributes['class']optional

Files installed (16)

  • app/components/ui/menubar/Menubar.vue0.8 kB
    <script setup lang="ts">
    import type { MenubarRootEmits, MenubarRootProps } from 'reka-ui'
    import type { HTMLAttributes } from 'vue'
    import { reactiveOmit } from '@vueuse/core'
    import { MenubarRoot, useForwardPropsEmits } from 'reka-ui'
    import { cn } from '@/lib/utils'
    
    const props = defineProps<MenubarRootProps & { class?: HTMLAttributes['class'] }>()
    const emits = defineEmits<MenubarRootEmits>()
    
    const delegatedProps = reactiveOmit(props, 'class')
    
    const forwarded = useForwardPropsEmits(delegatedProps, emits)
    </script>
    
    <template>
      <MenubarRoot
        v-slot="slotProps"
        data-uipkge
        data-slot="menubar"
        v-bind="forwarded"
        :class="cn('bg-background flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs', props.class)"
      >
        <slot v-bind="slotProps" />
      </MenubarRoot>
    </template>
    
  • app/components/ui/menubar/MenubarCheckboxItem.vue1.5 kB
  • app/components/ui/menubar/MenubarContent.vue1.3 kB
  • app/components/ui/menubar/MenubarGroup.vue0.3 kB
  • app/components/ui/menubar/MenubarItem.vue1.6 kB
  • app/components/ui/menubar/MenubarLabel.vue0.7 kB
  • app/components/ui/menubar/MenubarMenu.vue0.3 kB
  • app/components/ui/menubar/MenubarRadioGroup.vue0.5 kB
  • app/components/ui/menubar/MenubarRadioItem.vue1.5 kB
  • app/components/ui/menubar/MenubarSeparator.vue0.6 kB
  • app/components/ui/menubar/MenubarShortcut.vue0.4 kB
  • app/components/ui/menubar/MenubarSub.vue0.5 kB
  • app/components/ui/menubar/MenubarSubContent.vue1.4 kB
  • app/components/ui/menubar/MenubarSubTrigger.vue1.1 kB
  • app/components/ui/menubar/MenubarTrigger.vue0.9 kB
  • app/components/ui/menubar/index.ts0.9 kB

Raw manifest:https://uipkge.dev/r/vue/menubar.json