Element component chalk theme.

vue-components, xm-pc-base, theme-chalk, theme-light, component-library, element-ui, vue, vuejs
npm install @xm-pc-base/theme-chalk@0.1.0


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/play.vue


  <ComponentYouAreDeveloping />

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

Modify play.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 packages/element-plus/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