Skip to content

Element Plus

A Vue 3 component library of ready-made UI pieces, written in TypeScript.

Stars
27.8k
Forks
19.8k
Licence
MIT
Language
TypeScript
Last update
4 days ago
Type
Library

What it is

Element Plus is a UI component library for Vue.js 3, providing prebuilt interface elements such as buttons and forms that developers can drop into web apps. It is written in TypeScript and uses the Vue 3 Composition API. It is the Vue 3 successor to Element UI, made by the Element team.

  • Build a Vue 3 web interface using the library's prebuilt components
  • Try components in the built-in online playground before installing
  • Migrate an existing Element UI project using the referenced gogocode migration tool

Great for

  • Developers building admin panels or business web apps with Vue 3
  • Teams migrating from Element UI to Vue 3
  • Projects that want TypeScript support in their UI components

Not ideal for

  • People not using Vue.js, since this library is specific to Vue 3
  • Projects needing a Vue 2 library, because the README targets Vue 3 and points Element UI users to a migration path instead
  • Non-developers who want a finished website without coding, since it is a library for building apps
Step-by-step guide: how to use Element PlusInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Node.js 20 or newer

    Clone the repository (for contributors)

    git clone https://github.com/element-plus/element-plus
  2. 2

    Run it

    • Open the built-in playground at element-plus.run to see components working
    • Read the Getting Started guide at element-plus.org
    • Install the element-plus package from npm in a Vue 3 project
    • Import and use a component in your app
  3. 3

    Get the most out of it

    • Use the playground or CodeSandbox to test components before adding them to a project
    • Read the breaking change list discussion if upgrading from Element UI
    • Check the Chinese mirror site if access to the main site is slow in mainland China
    • Join the Discord to ask questions from the community

Downloads

Strengths

  • Written in TypeScript with Vue 3 Composition API support
  • Stable release with a documented breaking-change list for upgrading from Element UI
  • Available through npm and has a built-in online playground

Trade-offs

  • The README says it requires Node.js 20 or newer, which may need an upgrade on some machines
  • Most usage documentation lives on the separate element-plus.org site, not in the README
  • Migration from Element UI involves breaking changes that need to be reviewed

How it compares

ProjectStarsTypeLevelUpdatedBest for
element-plus (this)27.8kLibraryintermediate4 days agoDevelopers building admin panels or business web apps with Vue 3
primevue14.4kLibraryintermediate1 months agoVue developers who already use PrimeVue and need security fixes for existing projects
naive-ui18.6kLibrarybeginner11 days agoVue 3 developers building admin panels or internal tools
quasar27.2kFrameworkintermediate18 days agoDevelopers already familiar with Vue.js
element54kLibrarybeginner2.2 years agoDevelopers maintaining an existing Vue 2.x web application
vue-awesome-swiper12.8kLibraryintermediate3.9 years agoTeams maintaining an existing Vue 3 app that already uses vue-awesome-swiper v5 and need a bridge while migrating

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.