Skip to content

Components Overview

HeroUI Vue provides a comprehensive set of UI components for building modern web applications.

Forms

Form components for user input and interaction.

  • Button - Clickable button element with multiple variants
  • Button Group - Group multiple buttons together
  • Checkbox - Checkbox for boolean selections
  • Checkbox Group - Group related checkbox values
  • Fieldset - Form section layout with legend and actions
  • Input - Single-line text input field
  • Input Group - Input shell with prefix, suffix, and textarea slots
  • Input OTP - One-time passcode input with visual slots
  • Number Field - Numeric input with increment/decrement controls
  • Radio - Radio button for single selection from a group
  • Radio Group - Group radio buttons with shared state
  • Switch - Toggle switch for on/off states
  • Switch Group - Layout wrapper for related switches
  • TextField - Complete form field with label and validation
  • Textarea - Multi-line text input field
  • Toggle Button - Pressable toggle control
  • Toggle Button Group - Group related toggle controls

Form Elements

Helper components for building accessible forms.

  • Description - Descriptive text for form fields
  • Field Error - Error message display for form validation
  • Label - Label component for form fields

General

General-purpose UI components.

  • Accordion - Collapsible content sections
  • Alert - Status and feedback message
  • AlertDialog - Confirmation dialog for consequential actions
  • Autocomplete - Searchable single-option picker
  • Avatar - User or entity avatar
  • Badge - Compact status marker
  • Breadcrumbs - Hierarchical navigation path
  • Card - Structured surface container
  • Chip - Compact label or status
  • Disclosure - Collapsible section with trigger and animated panel
  • Close Button - Button for closing/dismissing elements
  • Empty State - Empty list or search result placeholder
  • Header - Section heading primitive
  • Kbd - Display keyboard shortcuts
  • Link - Accessible hyperlink component
  • Meter - Known-range scalar measurement
  • Pagination - Page navigation controls
  • Progress Bar - Linear progress indicator
  • Progress Circle - Circular progress indicator
  • Scroll Shadow - Scrollable region with edge shadows
  • Separator - Visual divider between content sections
  • Skeleton - Loading placeholder
  • Spinner - Loading indicator
  • Surface - Base surface wrapper
  • Tag - Selectable or removable tag
  • Tabs - Tabbed content navigation
  • Text - Styled text component
  • Toolbar - Toolbar container for related actions

Coming Soon

More components are being actively developed:

  • Select
  • DatePicker
  • Modal
  • Tooltip
  • Dropdown
  • Calendar and date inputs
  • Menus and overlays

Usage Pattern

All components follow a consistent API pattern:

vue
<script setup lang="ts">
import { ComponentName } from '@heroui-vue/vue'
</script>

<template>
  <ComponentName
    variant="primary"
    size="md"
    :disabled="false"
  >
    Content
  </ComponentName>
</template>

Released under the Apache-2.0 License.