Skip to content

Reference

Components

71 components, all prefixed I. Every one supports unstyled and a class override; multi-part components take a ui prop for per-slot classes.

Anywhere a component takes an icon, it accepts either shape: a Hugeicons export, or any component that renders an SVG.

Layout & structure

ComponentDescription
IAppRoot wrapper — reactive global config, theme, appearance, RTL/locale
ICardPanel with outline/soft variants, four paddings, header and footer slots
IScrollFadeScroll container whose edges fade while there is more to scroll
IScrollAreaScroll container with a thin themed scrollbar; scrolling stays native
ISplitterResizable panes with a draggable handle, with saved layouts
ISeparatorHorizontal or vertical rule, optionally with a centred label
IAppShellPage frame — header, sidebar, main and footer slots; scrolls the main column or the page
ISidebarApp sidebar — sections, collapsible groups, badges, and a collapse-to-icons mode
IPageHeaderPage title, description, breadcrumb slot and a right-aligned action row
IContainerCentred max-width wrapper — five widths, four gutters
IAspectRatioHolds a box at a fixed ratio, so loading content cannot shift the page

Forms

ComponentDescription
IFormValidating form wrapper — any Standard Schema validator, or your own function
IFormFieldLabel, description, hint, help and error text around a control
ILabelField label with optional required asterisk
IInputText field with sizes, invalid state, affix slots, clearable, loading, debounce
ITextareaMulti-line field with matching sizes, invalid state and optional autosize
INumberInputDecimal-safe numeric field — the model is a string
IPasswordInputMasked field with a show/hide toggle and an optional strength meter
IPinInputOne cell per character for a short code — the model is a plain string
ITagsInputCollects a list as removable tags — delimiter, max, paste splitting
IFileUploadDrag-and-drop file field with accept / maxSize / maxFiles and thumbnails
ISignaturePadDrawn signature with undo and clear — the model is a PNG data URL
IDatePickerCalendar in a popover; the model is an ISO YYYY-MM-DD string
IDateRangePickerTwo-month range calendar; the model is { start, end } ISO strings
ITimeFieldSegmented time entry — the model is a HH:mm string
ICheckboxTri-state checkbox, optional label + description
ISwitchAccessible toggle, optional label + description
ISliderOne value or a range on a single track, with an optional label, live value and min/max scale
IToggleA button that stays pressed — one look, sizes and icon padding matching IButton
IToggleGroupA row of toggles sharing one Tab stop — joined or plain, single or multiple
IRadioGroupRadio list with labels wired up automatically
ISelectListbox with keyboard nav and typeahead, driven by an items array
IComboboxSearchable select — filters as you type, with virtualized rows
IColorPickerSaturation plane, hue and opacity ramps, hex field and presets

Actions

ComponentDescription
IButtonFour variants, five sizes, loading, block and square, polymorphic via as
IButtonGroupJoins any children into a segmented control
IDropdownMenuMenu driven by an items array, with separators, group labels and submenus

Overlays

ComponentDescription
ICommandPaletteEvery command behind one shortcut — grouped, searchable, keyboard-driven
IDialogModal with header/body/footer slots, dismissible and showClose
IDrawerPanel or sheet attached to any edge — swipe to dismiss, optional snap points
IConfirmDialogHost for useConfirm() — renders the promise-based confirmation
ITooltipHover/focus tooltip with side, align, delay and optional arrow
IPopoverPanel anchored to its trigger — sides, arrow, optional modal focus trap
IContextMenuRight-click menu sharing IDropdownMenu's entries and theme

Feedback

ComponentDescription
IAlertInline contextual message in four variants
IBannerPage-level announcement — full-bleed, six variants, sticky or fixed
IBadgeStatus pill — five variants × three sizes; dot moves the colour onto a dot
IToasterHost for useToast(); six viewport positions, stacking, action buttons
IProgressDeterminate or indeterminate bar, six variants, formatValue
ISkeletonLoading placeholder — text/rect/circle, stackable with lines
IEmptyStateIcon, title, description and an actions slot for empty lists
ComponentDescription
INavigationMenuApp nav bar with hover-opened panels sharing one animated viewport, horizontal or vertical
IMenubarApplication menubar — File/Edit/View, hover to swap menus
IToolbarBar of controls sharing one Tab stop, with arrow-key navigation
IAccordionDisclosure list — one panel or several, plain or outline, animated height
ICollapsibleOne region that opens and closes — the bare disclosure behind IAccordion
ITabssolid or line variants with an animated indicator
IBreadcrumbTrail from an items array; the last crumb is the current page
IPaginationPage list with ellipsis, edge pages and prev/next controls
IStepperMulti-step progress, horizontal or vertical, optional linear ordering

Data display

ComponentDescription
ITableSorting, selection, expansion and per-cell slots, client- or server-driven
IStatKPI tile — label, value, signed delta with trend colour, and a hint
IKbdKeyboard shortcut as chips — mod renders ⌘ or Ctrl per platform
ITimelineOrdered run of events — icons, status variants, machine-readable times
ITreeExpandable nested list — selection and expansion as arrays of values
IAvatarPerson or organisation — initials fallback, five sizes, presence dot
IAvatarGroupOverlapped stack with a max and a "+n" chip

Charts

Plain SVG, no charting dependency. They inherit the theme like everything else, so they follow light and dark for free.

ComponentDescription
ISparklineTiny inline trend line, sized to whatever box you put it in
IBarChartVertical or horizontal, grouped or stacked, round-number axis, hover tooltip
ILineChartLine or area, single or multi-series, with a crosshair and hover marker
IChartLegendStandalone legend; shown automatically from two series up