Skip to content

Component Catalog ​

@bquery/ui already covers the primary component categories that teams expect from modern component libraries for Angular, React, Svelte, Vue, and plain Web Components.

This catalog gives you a complete overview of the currently available building blocks and the cross-cutting features that make them production-ready.

Coverage at a Glance ​

CategoryComponents
Actionsbq-button, bq-icon-button, bq-button-group, bq-copy-button
Formsbq-input, bq-number-input, bq-textarea, bq-select, bq-combobox, bq-tag-input, bq-pin-input, bq-date-picker, bq-segmented-control, bq-checkbox, bq-radio, bq-switch, bq-slider, bq-chip, bq-rating, bq-file-upload
Navigation & Disclosurebq-tabs, bq-accordion, bq-breadcrumbs, bq-pagination, bq-stepper, bq-tree
Data Displaybq-card, bq-badge, bq-avatar, bq-avatar-group, bq-table, bq-divider, bq-empty-state, bq-stat-card, bq-timeline, bq-kbd, bq-icon, bq-meter
Feedback & Loadingbq-alert, bq-banner, bq-progress, bq-spinner, bq-skeleton, bq-tooltip, bq-toast
Overlaysbq-dialog, bq-drawer, bq-dropdown-menu, bq-popover

Cross-Cutting Features ​

Across the component library you will find the same professional capabilities that developers expect from mature UI systems:

  • Accessibility-first APIs with semantic roles, ARIA attributes, keyboard support, and focus management
  • Framework interoperability through native Custom Elements and DOM events
  • Themeability through design tokens, CSS custom properties, and ::part() hooks
  • Dark mode support without changing component APIs
  • Internationalization support for user-facing component strings
  • Tree-shakeable imports so applications can register only the components they use

Actions ​

ComponentUse it forHighlights
bq-buttonPrimary and secondary actionsVariants, sizes, loading state, link rendering, icon slots, accessible label override
bq-icon-buttonCompact icon-only actionsAccessible label or title fallback, multiple variants, loading state, link rendering
bq-button-groupJoining related actions into one controlAttached mode with shared borders, orientation, shared size forwarding, group semantics
bq-copy-buttonCopying a snippet or token to the clipboardConfirmed state with icon swap, copy-from-selector, legacy clipboard fallback

Forms ​

ComponentUse it forHighlights
bq-inputSingle-line text inputLabels, hints, validation, prefix/suffix slots, size variants
bq-number-inputNumeric entry with boundsStepper buttons, range clamping, step snapping, precision control, prefix/suffix slots
bq-textareaMulti-line text inputRows, max length, validation, hints
bq-selectNative dropdown selectionPlaceholder, form-friendly behavior, error state
bq-segmented-controlCompact single-choice view and filter togglesRadio-group semantics, form participation, keyboard navigation, mobile-friendly full-width mode
bq-checkboxBoolean or multi-select formsChecked and indeterminate states, hint text
bq-radioExclusive option groupsShared name support, hint text
bq-switchToggle settings and preferencesSize variants, switch semantics, animated thumb
bq-sliderNumeric range selectionMin/max/step, inline value display, input/change events
bq-chipCompact selectable tagsSelection state, removable chips, contextual variants
bq-ratingStar ratings and scoresRadio-group semantics, keyboard support, read-only and clearable modes, form participation
bq-file-uploadFile selection and drag-and-dropType and size filtering, selected-file list, rejection events, keyboard-reachable drop zone
bq-comboboxFiltering a long list of optionsARIA 1.2 combobox pattern, single and multiple selection, diacritic-insensitive matching
bq-tag-inputFree-form tag and keyword entryDelimiter splitting, paste handling, per-tag removal, limit enforcement
bq-pin-inputOne-time codes and PINsPer-cell entry, paste distribution, one-time-code autofill, completion event
bq-date-pickerChoosing a calendar dateLocale-aware calendar, UTC date maths, min/max range, full keyboard grid
ComponentUse it forHighlights
bq-tabsSwitching between related viewsKeyboard navigation, tab/panel sync, multiple visual variants
bq-accordionExpand/collapse detail sectionsSmooth toggle animation, bordered/flush variants, keyboard support
bq-breadcrumbsHierarchical navigationAutomatic separators, semantic navigation markup
bq-paginationPaging through result setsPrevious/next controls, ellipsis logic, sibling page calculation
bq-stepperMulti-step flows and wizardsHorizontal/vertical layouts, clickable steps, per-step status announcements
bq-treeHierarchical browsing and pickersARIA tree pattern, roving tab stop, typeahead, single or multiple selection

Data Display ​

ComponentUse it forHighlights
bq-cardStructured surfaces and grouped contentHeader/footer slots, padding control, elevation toggle
bq-badgeInline statuses and labelsVariants, sizes, pill mode
bq-avatarUser and entity identityImage/initial fallback, shapes, sizes, status indicators
bq-avatar-groupStacked collections of peopleOverflow counter, shared sizing, configurable spacing
bq-tableTabular datasetsSortable columns, bordered/striped/hoverable variants, empty/loading states
bq-dividerVisual separation of contentHorizontal/vertical orientation, label support, multiple line styles
bq-empty-stateNo-data or no-results messagingTitle, description, icon slot, action slot
bq-stat-cardDashboard metrics and KPI summariesCompact metric layout, trend pill, loading skeleton, icon slot
bq-timelineActivity feeds and audit trailsOrdered-list semantics, event variants, machine-readable timestamps, custom markers
bq-kbdKeyboard shortcutsCombination parsing, symbol substitution, sizes and variants
bq-iconInterface glyphsMask-rendered set that inherits text colour and size, decorative by default
bq-meterLevels and gauges that are not progressNative <meter> band semantics, graded colouring, custom value text

Feedback & Loading ​

ComponentUse it forHighlights
bq-alertIn-page status messagingSemantic variants, dismissible mode, optional title
bq-bannerPage-level announcementsSticky mode, cancelable dismissal, severity-aware live regions, action slot
bq-progressDeterminate or indeterminate progressValue/max support, size variants, status variants
bq-spinnerCompact loading indicatorMultiple sizes and color variants
bq-skeletonLoading placeholdersText, circle, rect, and card variants with shimmer animation
bq-tooltipContextual helper textPlacement options, delay, keyboard dismissal
bq-toastEphemeral notificationsAuto-dismiss, dismissible actions, imperative show API

Overlays ​

ComponentUse it forHighlights
bq-dialogBlocking confirmation and form flowsFocus trap, escape handling, click-outside close, multiple sizes
bq-drawerSupplemental side panels and mobile flowsMultiple placements, responsive sizes, overlay/backdrop handling
bq-dropdown-menuContextual actions and navigation menusFull keyboard navigation, placement options, click-outside close, focus management
bq-popoverRich anchored overlaysDialog semantics, placement options, focus management, escape and click-outside close

Feature Coverage Compared to Typical UI Libraries ​

Common libraries such as Material UI, Vuetify, and Angular Material typically organize their APIs around actions, forms, navigation, data display, overlays, and feedback. @bquery/ui already provides components in each of these core areas, while also shipping shared capabilities that matter in production:

  • accessible interaction patterns,
  • consistent event contracts,
  • framework-agnostic usage,
  • theme tokens and dark mode,
  • and Storybook/VitePress-based documentation.

Next Steps ​

If you are evaluating the library for a product team, start with:

  1. Getting Started
  2. Framework Integration
  3. Theming
  4. Accessibility

For component-level API examples, see the dedicated references for Button, Icon Button, Input, and Card.

Released under the MIT License.