Go to file
2021-09-29 00:05:27 +08:00
.github refactor(dev): drop babel (#3678) 2021-09-27 15:25:58 +08:00
.husky refactor: upgrade to husky@7 & lint-staged@11 & commitlint@13 (#3239) 2021-09-05 01:33:56 +08:00
.vscode build: parallel build (#3416) 2021-09-26 01:29:07 +08:00
build build: refactor each package build (#3709) 2021-09-28 20:28:47 +08:00
docs feat(theme-chalk): use @use instead of @import & remove /**/ comment (#3696) 2021-09-28 20:42:12 +08:00
packages feat(components): [el-button-group] add type prop (#3702) 2021-09-28 20:51:08 +08:00
play style(play): remove body margin (#3714) 2021-09-29 00:05:27 +08:00
scripts build: parallel build (#3416) 2021-09-26 01:29:07 +08:00
typings build(tokens): fix token build script (#3703) 2021-09-28 15:40:08 +08:00
.editorconfig feat/add-storybook 2020-07-24 19:20:37 +08:00
.eslintignore build: refactor each package build (#3709) 2021-09-28 20:28:47 +08:00
.eslintrc.js build: refactor each package build (#3709) 2021-09-28 20:28:47 +08:00
.gitattributes chore(project): improve prettier format (#3236) 2021-09-05 00:53:31 +08:00
.gitignore build: refactor each package build (#3709) 2021-09-28 20:28:47 +08:00
.markdownlint.json feat(components): add virtual tree (#3398) 2021-09-27 11:12:50 +08:00
.npmrc refactor: replace yarn with pnpm (#3571) 2021-09-23 08:12:37 +08:00
.nvmrc refactor: replace yarn with pnpm (#3571) 2021-09-23 08:12:37 +08:00
.prettierignore build: refactor each package build (#3709) 2021-09-28 20:28:47 +08:00
.prettierrc chore(project): improve prettier format (#3236) 2021-09-05 00:53:31 +08:00
CHANGELOG.en-US.md Update CHANGELOG.en-US.md 2021-09-27 11:36:06 +08:00
CODE_OF_CONDUCT.md style: use prettier (#3228) 2021-09-04 19:29:28 +08:00
commitlint.config.js refactor: replace yarn with pnpm (#3571) 2021-09-23 08:12:37 +08:00
DEV_FAQ.md docs: add link guide (#3698) 2021-09-28 11:00:09 +08:00
jest.config.js refactor(dev): drop babel (#3678) 2021-09-27 15:25:58 +08:00
LICENSE Create LICENSE 2020-08-18 13:53:45 +08:00
package.json feat(theme-chalk): use @use instead of @import & remove /**/ comment (#3696) 2021-09-28 20:42:12 +08:00
pnpm-lock.yaml feat(theme-chalk): use @use instead of @import & remove /**/ comment (#3696) 2021-09-28 20:42:12 +08:00
pnpm-workspace.yaml refactor: replace yarn with pnpm (#3571) 2021-09-23 08:12:37 +08:00
README.md chore(project): update README demo link (#3693) 2021-09-28 00:19:30 +08:00
tsconfig.json build: refactor each package build (#3709) 2021-09-28 20:28:47 +08:00


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.

Playground

Try it with code sandbox

Edit element-plus

Try it with our built-in playground

Playground

Special thanks to the generous sponsorship by:



Translations

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

Documentation

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

play.vue

<template>
  <ComponentYouAreDeveloping />
</template>

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

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

Example

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

Licence

Element Plus is open source software licensed as MIT.

Contributors

This project wouldn't exist without our amazing contributors