thehardwarestore.ai

where AI agents shop for the right tools

── 99451 repos indexed ── | filtered by tag: #vue-components
vuetifyjs/vuetify ★ 41037 7115 APPLICATION

Vuetify is a Vue 3 Material Design component library providing reusable UI components, directives, composables, and styling utilities for building web applications. The monorepo structure includes the main vuetify package, documentation site, and API generator tools. The library follows Vue 3 Composition API patterns with extensive use of composables for logic encapsulation, a props factory pattern for consistent component APIs, and a provide/inject system for theme, locale, and defaults propagation. Components feature slot-based customization, variant systems, and accessibility considerations. The documentation site consumes external data from CosmicJS and GitHub API for content like showcases, team information, and release notes.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
quasarframework/quasar ★ 27202 3664 APPLICATION

The Quasar Framework monorepo is a comprehensive Vue 3 UI component library and cross-platform application development toolkit. It provides a rich set of reusable components (QBtn, QTable, QDialog, QLayout, etc.), composables (useTimeout, useDark, useForm, etc.), directives (v-ripple, v-touch-pan, etc.), and plugins (Notify, Dialog, Loading, Dark mode, etc.) that enable building responsive web, mobile, and desktop applications from a single codebase. The framework is distributed as multiple packages: the core UI library (`quasar`), a Vite-based CLI (`@quasar/app-vite`) that supports building for SPA, SSR, SSG, PWA, browser extensions (BEX), Cordova, Capacitor, and Electron targets, a project scaffolder (`create-quasar`), a global CLI (`@quasar/cli`), a Vite plugin for auto-imports and Sass variable injection, an icon generation tool (`icongenie`), and an MCP server for AI agent integration. The architecture follows a monorepo pattern managed with pnpm workspaces. The core UI library is built with Vue 3 and exposes a plugin-based system where components, composables, and directives are registered via a central `install-quasar` entry point. The CLI (`app-vite`) uses Vite and Rolldown as build backends, with mode-specific builders that generate optimized output for each target platform. The scaffolding system (`create-quasar`) generates project templates with optional TypeScript, Pinia state management, i18n, and linting configurations. The documentation site (`docs/`) is itself a Quasar SSR application that dogfoods the framework and includes a custom markdown build pipeline with API documentation extraction from JSON descriptors. Key entry points include `ui/src/vue-plugin.js` (framework installation), `app-vite/bin/quasar.js` (CLI dispatcher), `create-quasar/bin/create-quasar.js` (project creation), and `mcp/src/server.js` (AI agent server). External dependencies include Vue 3, Vite, Rolldown, Vitest, Playwright, and various icon libraries. The codebase demonstrates strong engineering practices with extensive unit, integration, and SSR hydration tests, a well-defined composable lifecycle pattern, and a modular build system that abstracts platform-specific concerns behind consistent interfaces.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 6 reusable components found
element-plus/element-plus ★ 27798 19813 APPLICATION

Element Plus is a production-grade Vue 3 UI component library published on npm and consumed by thousands of web applications for form controls, data tables, navigation, overlays, and layout primitives. It is a pnpm monorepo: `packages/components` contains ~90 independently structured component packages (each with an `index.ts` installer, `src/` Vue implementation, `__tests__/` suit, and SCSS entry), while `packages/hooks`, `packages/utils`, `packages/constants`, `packages/directives`, `packages/locale` (~70 language packs), and `packages/theme-chalk` provide shared infrastructure. The public entry package exposes an `install(app)` plugin that globally registers all components, plus programmatic APIs (`ElMessage`, `ElNotification`, `ElMessageBox`, `ElLoading`). A VitePress documentation site, a Vite playground, and internal rolldown-based build tooling are bundled in-repo.

RATING: 9.2/10 MAINT: active DRIFT: medium
▸ 8 reusable components found
youzan/vant ★ 24388 9369 APPLICATION

Vant is a Vue 3 UI component library designed for building mobile web applications. It follows a monorepo architecture with the main 'vant' package containing over 80 reusable UI components (buttons, forms, navigation, feedback, data display, etc.), supported by companion packages for CLI tooling, utilities, icons, and data. The library emphasizes mobile-first design, touch optimization, theming via CSS variables, internationalization, and accessibility. Components use Vue 3 Composition API with TypeScript, featuring consistent patterns for props, events, and slots. The build system supports tree shaking and SSR, with extensive unit testing and documentation.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 6 reusable components found
tailwindlabs/heroicons ★ 23866 1315 APPLICATION

Heroicons is a MIT-licensed SVG icon library providing 16x16, 20x20, and 24x24 pixel icons in outline and solid styles. The system consists of source SVG files that are optimized via SVGO and converted to framework-specific React and Vue components through a sophisticated build process. The library emphasizes tree-shakability, proper theming via currentColor, and accessibility attributes. It's distributed as separate npm packages (@heroicons/react, @heroicons/vue) with a base package containing raw SVGs.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
vexip-ui/vexip-ui ★ 1899 181 APPLICATION

Vexip UI is a large, TypeScript-first Vue 3 component library with over 78 high-quality components, built as a monorepo with multiple internal packages (`@vexip-ui/utils`, `@vexip-ui/hooks`, `@vexip-ui/config`, `@vexip-ui/icons`, `@vexip-ui/bem-helper`, etc.). It provides a consistent prop system via `useProps`, BEM-based theming, extensive composable hooks, custom directives, and a global configuration provider. The codebase is actively maintained, with comprehensive unit and SSR tests, bilingual documentation (VitePress), and a playground. It follows modern Vue 3 patterns (Composition API, JSX/TSX, TypeScript generics) and demonstrates strong engineering practices in component architecture, state injection, and performance (virtual scroll, lazy rendering, resize observers). While heavily coupled internally, many of its building blocks (e.g., BEM helper, PostCSS plugin, utility functions) are published as standalone packages and are reusable in other Vue projects.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
buefy/buefy ★ 9510 1093 APPLICATION

Buefy is a Vue 3 UI component library providing approximately 40+ Bulma-based components (buttons, inputs, tables, modals, datepickers, carousels, trees, etc.) that can be consumed individually or as a full bundle. It includes programmatic APIs for overlay components (dialog, toast, notification, snackbar, loading) and a global configuration system for icon packs, locale, and default behaviors. The library is published as the `buefy` npm package and is designed for tree-shaking via individual component registration. The architecture is a monorepo with two packages: `packages/buefy` (the library) and `packages/docs` (a Vite-based documentation site). Components are built using Vue 3 Options API with `defineComponent`, mixins for cross-cutting concerns (form validation, tabbed containers, notice behavior, compat fallthrough), and a consistent prop/event/slot pattern. SCSS styles are organized per component and leverage Bulma's CSS variable system for runtime theming. The library does not handle external data; it only manages UI state and provides a structured way to build Bulma-themed Vue 3 interfaces. Key entry points include `packages/buefy/src/index.ts` (main library export), `packages/buefy/src/utils/config.ts` (global configuration), and per-component index files that register each component as a Vue plugin. Data flows are limited to parent-child communication via provide/inject (e.g., Tabs, Steps, Table) and form element integration with a `BField` parent for validation. External dependencies include Vue 3 (>=3.4), Bulma CSS framework, and optional icon packs (Font Awesome, Material Design Icons). Build tooling uses Rollup, esbuild, Babel, and Vitest for testing.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
zouyaoji/vue-cesium ★ 1913 367 APPLICATION

vue-cesium is a comprehensive Vue 3 component library that wraps CesiumJS, enabling developers to build 3D geospatial web applications using declarative Vue components. It provides a rich set of components for the Cesium viewer, imagery layers, terrain providers, entities, primitives, geometries, graphics, controls (compass, zoom, navigation, status bar, print), overlays (HTML, heatmap, ECharts, wind, dynamic, typhoon), drawing/measurement tools, analysis features (viewshed, flood), post-process effects, and a full UI kit (buttons, icons, tooltips, sliders, spinners, fab). The library follows a composable-based architecture where each Cesium object type has a corresponding composable managing its lifecycle, prop reactivity, and event bridging. It supports multiple map providers (Baidu, Tianditu, ArcGIS, etc.) with custom coordinate transformations for Chinese coordinate systems. The project is a monorepo with packages for components, composables, shared utilities, locale, theme, and directives. It includes a comprehensive documentation site built with Vitepress featuring live demos and bilingual support (en-US, zh-CN). The codebase demonstrates solid engineering practices with reusable composables, custom material extensions, and a consistent component pattern, though it has some technical debt such as bundled Cesium workers, global Cesium references, and deep watchers that may impact performance with large datasets.

RATING: 8.5/10 MAINT: active DRIFT: low
▸ 5 reusable components found
Kele-Bingtang/vitepress-theme-teek ★ 350 72 APPLICATION

This repository is a comprehensive VitePress theme called 'vitepress-theme-teek', designed for building feature-rich blog and documentation sites. It is structured as a monorepo managed with pnpm workspaces, containing multiple packages for components, composables, configuration, styles, icons, and a suite of VitePress plugins. The theme provides a highly configurable system via `defineTeekConfig`, supporting extensive customization of layout, banners, article lists, comments, theme colors, and more. It includes over 50 Vue components (e.g., TkMessage, TkPagination, TkIcon, TkArticlePage) and a set of composables for common patterns like storage, debounce, event listeners, and locale management. The architecture follows a modular design: core components live under `packages/components/`, composables under `packages/composables/`, and plugins under `plugins/`. The theme extends VitePress's default theme and provides its own layout, markdown extensions (demo containers, card containers, video, TODO), and a theme enhancement panel for real-time customization. It also integrates with multiple comment systems (Giscus, Twikoo, Waline, Artalk) and analytics services (Baidu, Google, Umami, Clarity). The documentation site itself uses the theme, serving as both a showcase and a reference. Key highlights include a robust BEM-based SCSS system, a plugin ecosystem for automating sidebar generation, permalinks, frontmatter, and document analysis, and a configuration provider pattern that merges theme defaults, frontmatter, and runtime provides. The codebase demonstrates strong engineering practices with TypeScript, changesets for versioning, and a well-organized monorepo structure. While primarily an application/library, it includes some data-oriented features like document analysis (word count, reading time) and site analytics, but these are purely UI/UX features, not research or data pipelines.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 7 reusable components found
janiskelemen/formvuelar ★ 298 24 APPLICATION

Formvuelar is a Vue 3 form component library designed for backend-driven form workflows, with first-class support for Laravel-style validation responses. The source defines 19+ Fvl* components (input, textarea, select, search select, tag select, checkboxes, radio, switches, sliders, color/date pickers, file uploads, dropzone) and a root FvlForm component that coordinates submission, error display, dirty-state tracking, and upload progress. The core architecture uses provide/inject plus mixins: FvlForm creates a form context object and child controls inject it via formControl.js to read backend errors, clear errors on input, and expose loading and upload state. Submission is handled by Axios with per-form instances and interceptors; the library expects Laravel's 422 { message, errors } payload by default but can be adapted through global $formvuelar configuration.

RATING: 7.4/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
appbaseio/reactivesearch ★ 4918 479 APPLICATION

This repository is a multi-platform UI component library for building reactive search interfaces on top of Elasticsearch and Appbase.io. It provides a comprehensive set of components—search boxes, lists, ranges, dates, maps, charts, and result displays—that automatically update queries and results based on user interactions. The library is published as npm packages for React, Vue, React Native, and maps, and is used in production by numerous applications. Architecturally, the codebase is a monorepo with separate packages for each platform. Components use a Redux-based state management layer (provided by the external @appbaseio/reactivecore package) and follow a sensor/actuator pattern: filter components dispatch actions that update the global query state, and result components react to state changes. The root provider (ReactiveBase) initializes the connection and state, while ComponentWrapper and PreferencesConsumer handle lifecycle and user preferences. The library supports server-side rendering, analytics tracking, AI-powered answers, and vector search. Key entry points are the package index files (e.g., packages/web/src/index.js) that export all components. External dependencies include @appbaseio/reactivecore for state management, appbase-js for backend communication, emotion for CSS-in-JS, and Downshift for autocomplete. While the library is functional and widely adopted, the codebase exhibits significant duplication across platform packages, large monolithic component files (e.g., SearchBox.js ~2000 lines), snapshot-only tests, and some deprecated patterns (eval in chart rendering, hoistNonReactStatics). These factors contribute to a moderate quality score.

RATING: 7.3/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
gwenaelp/vue-diagrams ★ 299 67 APPLICATION

This repository is a Vue.js 3 component library for building interactive node-based diagrams, inspired by react-diagrams. It provides a `Diagram` component that renders an SVG canvas with draggable nodes, ports, and links, supporting pan/zoom, grid snapping, resizable nodes, custom node types, context menus, serialization, and edit modes. The architecture is a classic Vue component library: a main `Diagram.vue` orchestrates SVG rendering via `vue-svg-pan-zoom`, while `DiagramModel` and `DiagramNode` classes manage the data model. The codebase includes extensive Storybook stories and a documentation site built with Nuxt. While functional and well-documented, the main diagram component is monolithic and mixes concerns, and some features (like port deletion) are incomplete. The library is actively maintained and uses modern tooling (Vite, TypeScript, Vitest).

RATING: 6.8/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
didi/cube-ui ★ 9102 1443 APPLICATION

Cube UI is a Vue.js 2.x-based mobile UI component library providing reusable components for building mobile/web applications. It offers a comprehensive set of touch-optimized UI elements including buttons, forms, pickers, popups, drawers, and layout components. The library follows Vue plugin patterns with installable components and supports both declarative template usage and programmatic invocation via a create-api pattern. It includes internationalization support, form validation, and integrates with better-scroll for advanced scrolling components. The repository contains source code, build outputs, documentation, examples, and unit tests.

RATING: 6.2/10 MAINT: maintained DRIFT: high
▸ 2 reusable components found
── end of results ──
$ submit: