Element Plus - A Vue.js 3 UI library

- 💪 Vue 3 Composition API - 🔥 Written in TypeScript ## 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](https://codesandbox.io/static/img/play-codesandbox.svg)](https://codesandbox.io/s/element-plus-demo-dxtcr) #### Try it with our built-in playground [Playground](https://element-plus.run/)

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](https://badges.crowdin.net/element-plus/localized.svg)](https://crowdin.com/project/element-plus) ## Documentation You can find for more details, API, and other docs on [https://element-plus.org](https://element-plus.org/) 国内[加速镜像站点](https://element-plus.gitee.io/) Join our [Discord](https://discord.link/ElementPlus) to start communicating with everybody. ## Breaking change list You can find the breaking change list here: [Breaking Change List](https://github.com/element-plus/element-plus/issues/162). ## Bootstrap project With command ```bash $ pnpm i ``` the project will install all dependencies ## Website preview With command ```bash $ pnpm docs:dev ``` the project will launch website for you to preview all existing component ## Local development 1. With command ```shell $ pnpm dev ``` will start the local development environment 2. Add your component into `play/src/App.vue` > App.vue ```vue ``` 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 ```bash $ 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 ```bash pnpm cz ``` Example ``` # [TYPE](SCOPE): [el-component-name] DESCRIPTION#[ISSUE] # example: feat(components): [el-button] add type for form usage #1234 ``` ## Sponsors Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor](https://opencollective.com/element-plus#sponsor) ## Contributors This project exists thanks to all the people who contribute. And thank you to all our backers! 🙏 ## Licence Element Plus is open source software licensed as [MIT](https://github.com/element-plus/element-plus/blob/master/LICENSE).