Skip to content

Element vs Element Plus

Which should you use? A side-by-side look at what each one does, who it suits, what it costs, how hard it is to set up, and where each falls short.

Element

Open source · MIT

A Vue 2 component library of ready-made UI pieces for building web apps.

Element Plus

Open source · MIT

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

The short answer

Choose Element if you need…

  • Developers maintaining an existing Vue 2.x web application
  • Teams building internal admin or back-office interfaces with Vue 2
  • Developers who want prebuilt components with a documented API and themes
  • Projects that need to support Internet Explorer 10+ alongside modern browsers

Choose Element Plus if you need…

  • 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

Side-by-side

ElementElement Plus
TypeLibraryLibrary
PriceFree and open sourceFree and open source
LicenceMITMIT
GitHub stars54k27.8k
Setup difficultyBeginnerIntermediate
How you get itInstall with a package managerInstall with a package manager
Main languageVueTypeScript
Last code update2 years ago4 days ago

What each one is

Element

Element is a UI toolkit for Vue.js 2.0 that provides a set of prebuilt interface components such as buttons, selects and other common web controls. Developers use it to build consistent web pages and admin-style interfaces without designing every component from scratch. The README says it will stay on Vue 2.x and points Vue 3 users to Element Plus.

Element Plus

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.

Best for

Element

  • Developers maintaining an existing Vue 2.x web application
  • Teams building internal admin or back-office interfaces with Vue 2
  • Developers who want prebuilt components with a documented API and themes
  • Projects that need to support Internet Explorer 10+ alongside modern browsers

Element Plus

  • 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

Strengths

Element

  • Large, established project with 54,002 stars and an MIT license
  • Documentation is available in English, Chinese, Spanish and French
  • Supports both full-library and per-component imports

Element Plus

  • 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

Not ideal for

Element

  • New projects on Vue 3, because the README recommends Element Plus for Vue 3 instead
  • Mini-program development, because the README recommends MorJS for that
  • Designers looking for a visual tool rather than code components

Element Plus

  • 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

Trade-offs

Element

  • Locked to Vue 2.x; the README directs Vue 3 users elsewhere
  • Latest release is v2.15.14 and the last push shown is from August 2024, so check current maintenance status before adopting

Element Plus

  • 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

Getting started

Element

Install the package

npm install element-ui -S
Step-by-step guide: how to use Element

Element Plus

Clone the repository (for contributors)

git clone https://github.com/element-plus/element-plus
Step-by-step guide: how to use Element Plus

Frequently asked questions

What is the difference between Element and Element Plus?

Element: A Vue 2 component library of ready-made UI pieces for building web apps. Element Plus: A Vue 3 component library of ready-made UI pieces, written in TypeScript. Element suits developers maintaining an existing vue 2.x web application, while Element Plus suits developers building admin panels or business web apps with vue 3.

Are Element and Element Plus free?

Element: Free and open source. Element Plus: Free and open source.

Which is easier to set up, Element or Element Plus?

Element is easier to get started with (rated beginner); Element Plus is rated intermediate and usually needs more setup.

Is Element or Element Plus more popular?

Element has more GitHub stars (54k) than Element Plus (27.8k). Popularity isn't the same as fit — check which one matches your use case above.

What are other alternatives to Element and Element Plus?

Other options people compare them with include BootstrapVue, PrimeVue, Vant, Mint UI, VUX.

Keep comparing

Built from our catalogue entries for both products: open-source details come from each project's README (AI-assisted, refreshed weekly) and GitHub data; AI-tool details are editorial. Spotted something wrong? Let us know from either product's page.