Element Plus

A comprehensive Vue 3 UI component library built with TypeScript

Library
npm
v2.14.6
27,790 stars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum. How we score it →
95 /100 Excellent
Development Activity 100
Maintenance 100
Community 80
Maturity 60
Momentum 40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation. How we score it →
80 /100 Excellent
Architecture 86
Code Quality 85
Innovation 72
Learning Curve 75

Element Plus is the Vue 3 successor to the widely used Element UI library, offering a full catalog of production-ready components — forms, tables, dialogs, navigation, date pickers, and more — built with the Composition API and written entirely in TypeScript. It ships with a themeable design system (theme-chalk), built-in internationalization, and comprehensive accessibility support.

With over 27,000 GitHub stars and 620K+ weekly npm downloads, Element Plus is one of the most established component libraries in the Vue ecosystem, commonly chosen for admin dashboards, back-office tools, and enterprise applications where a large, consistent, well-documented component set outweighs the appeal of a smaller, more bespoke design system.

What You Get

  • 125+ components spanning forms, data display, navigation, feedback, and layout
  • A themeable design system (theme-chalk) with CSS-variable-based theming for custom branding
  • Full TypeScript typings and Composition API composables (hooks/) for every component
  • Built-in internationalization with dozens of bundled locale packs
  • A dedicated test-utils package for testing applications that consume Element Plus components
  • An interactive component playground bundled in the repo for live experimentation

Common Use Cases

  • Building admin dashboards and back-office tools quickly with a comprehensive, consistent component set
  • Enterprise Vue 3 applications that need production-grade tables, forms, and date pickers without building them from scratch
  • Migrating existing Element UI (Vue 2) applications to Vue 3 using the documented breaking-change list and migration tooling
  • Multi-language applications that need components with built-in i18n support out of the box

Under The Hood

Architecture — The repo is a large pnpm-workspace monorepo (packages/components, packages/directives, packages/hooks, packages/theme-chalk, packages/locale, packages/utils, packages/constants) where the top-level element-plus package re-exports everything from packages/element-plus, letting consumers either import the whole library or tree-shake individual components. Each component under packages/components/ follows a consistent folder convention (component source, style, docs, and tests colocated), which is what lets 125+ components scale without architectural drift across contributors.

Tech Stack — Vue 3 Composition API throughout, written in TypeScript, using Vite for the dev/build tooling and Vitest for testing (vitest.config.mts). Theming is implemented via theme-chalk’s SCSS-to-CSS-variable pipeline, and the hooks/ package centralizes reusable composables (form validation, resize observation, etc.) shared across components rather than duplicating logic per component.

Code Quality — The project uses Codecov for test-coverage tracking (badge in README) and enforces commit-message linting via commitlint.config.mjs, with ESLint configured project-wide (eslint.config.mjs). A breakings/ directory tracks documented breaking changes release-over-release, and ssr-testing/ exists specifically to catch server-side-rendering regressions — an area component libraries commonly get wrong.

API Design — Component APIs follow Vue’s standard props/events/slots conventions consistently across the whole library, and the Composition API hooks/ package means custom logic (form validation state, popup positioning) is exposed the same way components consume it internally, so advanced users can compose the same primitives. The sheer breadth of components (125+) is itself a developer-experience trade-off: teams get comprehensive coverage out of the box, at the cost of a larger bundle unless tree-shaking is configured correctly via the on-demand import plugins the docs recommend.

Used by 6 apps in this directory

Go
73%
GPL 3.0

1Panel

Devops · Hosting Control Panel · Monitoring

37,044

The only open-source VPS control panel with native AI agent runtime — deploy websites, Docker stacks, and local LLMs from one web interface.

View details
91
Repo Health
76
Technical
67
Dependency
Built with
Go 73%
Vue 27%
Updated 5 days ago
Python
65%
MIT

Flowfile

Data Engineering

363

Visual ETL that compiles to Polars — build pipelines on a canvas, export as standalone Python, and run anywhere without platform lock-in.

View details
83
Repo Health
81
Technical
66
Dependency
Built with
Python 65%
Vue 17%
TypeScript 17%
Updated 6 days ago
Go
83%
Apache 2.0

frp

Networking

109,662

A fast reverse proxy that exposes local servers behind NAT or firewalls to the public internet with multi-protocol support.

View details
93
Repo Health
82
Technical
71
Dependency
Built with
Go 83%
Vue 12%
Updated 2 weeks ago
Java
58%
Apache 2.0

Kestra

Automation · Data Engineering · Devops

28,388

Event-driven orchestration platform for data, AI, and infrastructure workflows — define everything in YAML, run anywhere at scale.

View details
93
Repo Health
81
Technical
72
Dependency
Built with
Java 58%
TypeScript 26%
Vue 15%
Updated 1 weeks ago
Python
45%
GPL 3.0

MaxKB

AI Development · Knowledge Management

22,882

Build enterprise-grade AI agents with RAG, workflows & multi-modal support

View details
92
Repo Health
68
Technical
66
Dependency
Built with
Python 45%
Vue 37%
TypeScript 17%
Updated 5 days ago
TypeScript
92%
Other

n8n

Automation · No Code Platforms

206,147

Code when you need it, UI when you don't — the workflow automation platform built for technical teams who refuse to choose.

View details
95
Repo Health
87
Technical
65
Dependency
Built with
TypeScript 92%
Updated 5 days ago

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers