TypeScript icon, indicating that this package has built-in type declarations

    1.2.0-beta.4 • Public • Published

    Element Plus - A Vue.js 3 UI library

    • 💪 Vue 3 Composition API
    • 🔥 Written in TypeScript

    Archived website

    If you are looking for previous version website, here is the link.

    Element Plus Documentation Archived

    The new website is launched at 17th Sep 2021.

    Status: Beta

    This project is still under heavy development. Feel free to join us and make your first pull request.


    Try it with code sandbox

    Edit element-plus

    Try it with our built-in playground


    Special thanks to the generous sponsorship by:


    Element Plus is translated to multiple languages, you can click the badge to help up update the translation or apply to become a proofreader Crowdin


    You can find for more details, API, and other docs on https://element-plus.org


    Join our Discord to start communicating with everybody.

    Breaking change list

    You can find the breaking change list here: Breaking Change List.

    Bootstrap project

    With command

    $ pnpm i

    the project will install all dependencies

    Website preview

    With command

    $ pnpm docs:dev

    the project will launch website for you to preview all existing component

    Local development

    1. With command
    $ pnpm dev

    will start the local development environment

    1. Add your component into play/src/App.vue


      <ComponentYouAreDeveloping />
    <script setup lang="ts">
    // make sure this component is registered in @element-plus/components
    import { ComponentYouAreDeveloping } from '@element-plus/components'

    Modify App.vue file per your needs to get things work.

    Component migration process

    1. Convert the item in https://github.com/element-plus/element-plus/projects/1 to an issue
    2. Assign yourself to the issue
    3. Author your component by generating new component command below
    4. Migrate tests and docs
    5. Open a new pull request, fill in the component issue link in 1

    Generate new component

    With command

    $ pnpm gen component-name

    Note the component-name must be in kebab-case, combining words by replacing each space with a dash.

    And component type must be added to typings/global.d.ts.

    Commit template

    With command

    pnpm cz


    # [TYPE](SCOPE): [el-component-name] DESCRIPTION#[ISSUE]
    # example: feat(components): [el-button] add type for form usage #1234


    Element Plus is open source software licensed as MIT.


    This project wouldn't exist without our amazing contributors


    npm i element-plus

    DownloadsWeekly Downloads






    Unpacked Size

    27.1 MB

    Total Files


    Last publish


    • iamkun
    • jeremywuuuuu