2020-08-18 10:56:04 +08:00
|
|
|
<p align="center">
|
2020-10-13 14:27:15 +08:00
|
|
|
<img width="300px" src="https://user-images.githubusercontent.com/10731096/95823103-9ce15780-0d5f-11eb-8010-1bd1b5910d4f.png">
|
2020-08-18 10:56:04 +08:00
|
|
|
</p>
|
|
|
|
|
2020-11-30 12:43:20 +08:00
|
|
|
<p align="center">
|
|
|
|
<a href="https://www.npmjs.org/package/element-plus">
|
|
|
|
<img src="https://img.shields.io/npm/v/element-plus.svg">
|
|
|
|
</a>
|
|
|
|
<a href="https://npmcharts.com/compare/element-plus?minimal=true">
|
|
|
|
<img src="http://img.shields.io/npm/dm/element-plus.svg">
|
|
|
|
</a>
|
|
|
|
<br>
|
|
|
|
</p>
|
|
|
|
|
2021-09-17 00:18:50 +08:00
|
|
|
<p align="center">Element Plus - A Vue.js 3 UI library</p>
|
2020-08-18 10:56:04 +08:00
|
|
|
|
2021-09-17 00:18:50 +08:00
|
|
|
- 💪 Vue 3 Composition API
|
2021-09-04 19:29:28 +08:00
|
|
|
- 🔥 Written in TypeScript
|
2020-08-18 10:56:04 +08:00
|
|
|
|
2021-09-17 00:18:50 +08:00
|
|
|
## Archived website
|
|
|
|
|
|
|
|
If you are looking for previous version website, here is the link.
|
|
|
|
|
|
|
|
[Element Plus Documentation Archived](https://github.com/element-plus/doc-archive)
|
|
|
|
|
|
|
|
The new website is launched at 17th Sep 2021.
|
|
|
|
|
2020-11-30 12:43:20 +08:00
|
|
|
## Status: Beta
|
|
|
|
|
2020-08-18 10:56:04 +08:00
|
|
|
This project is still under heavy development. Feel free to join us and make your first pull request.
|
|
|
|
|
2021-09-28 00:19:30 +08:00
|
|
|
### 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://play.element-plus.org/)
|
2020-09-27 21:48:53 +08:00
|
|
|
|
2020-11-27 13:41:53 +08:00
|
|
|
<p align="center">
|
|
|
|
<b>Special thanks to the generous sponsorship by:</b>
|
|
|
|
</p>
|
|
|
|
<br/>
|
|
|
|
<table align="center" cellspacing="0" cellpadding="0">
|
|
|
|
<tbody>
|
|
|
|
<tr>
|
|
|
|
<td align="center" valign="middle">
|
|
|
|
<a href="https://bit.dev/?from=element-ui" target="_blank">
|
|
|
|
<img width="150px" src="https://user-images.githubusercontent.com/10095631/41342907-e44e7196-6f2f-11e8-92f2-47702dc8f059.png">
|
|
|
|
</a>
|
|
|
|
</td>
|
2021-07-22 17:03:31 +08:00
|
|
|
<td align="center" valign="middle">
|
|
|
|
<a href="https://www.renren.io/?from=element-ui" target="_blank">
|
2021-07-22 19:24:22 +08:00
|
|
|
<img width="150px" src="https://user-images.githubusercontent.com/82012629/126620778-0d8ab509-018a-45d7-b8de-a5bac2ad519a.png">
|
2021-07-22 17:03:31 +08:00
|
|
|
</a>
|
|
|
|
</td>
|
2020-11-27 13:41:53 +08:00
|
|
|
</tr>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
|
2020-08-18 10:56:04 +08:00
|
|
|
---
|
2020-07-24 19:20:37 +08:00
|
|
|
|
2021-09-17 00:18:50 +08:00
|
|
|
## 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)
|
|
|
|
|
2020-11-30 11:08:34 +08:00
|
|
|
## Documentation
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-11-30 11:08:34 +08:00
|
|
|
You can find for more details, API, and other docs on [https://element-plus.org](https://element-plus.org/)
|
|
|
|
|
|
|
|
国内[加速镜像站点](https://element-plus.gitee.io/)
|
|
|
|
|
2020-11-18 22:41:22 +08:00
|
|
|
Join our [Discord](https://discord.link/ElementPlus) to start communicating with everybody.
|
2020-08-22 16:52:59 +08:00
|
|
|
|
2021-07-22 14:31:19 +08:00
|
|
|
## Breaking change list
|
|
|
|
|
|
|
|
You can find the breaking change list here: [Breaking Change List](https://github.com/element-plus/element-plus/issues/162).
|
|
|
|
|
2020-07-24 19:20:37 +08:00
|
|
|
## Bootstrap project
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-07-24 19:20:37 +08:00
|
|
|
With command
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-07-24 19:20:37 +08:00
|
|
|
```bash
|
2021-09-26 01:29:07 +08:00
|
|
|
$ pnpm i
|
2020-07-24 19:20:37 +08:00
|
|
|
```
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2021-09-23 08:12:37 +08:00
|
|
|
the project will install all dependencies
|
2020-07-24 19:20:37 +08:00
|
|
|
|
2020-09-18 16:15:30 +08:00
|
|
|
## Website preview
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-07-24 19:20:37 +08:00
|
|
|
With command
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-07-24 19:20:37 +08:00
|
|
|
```bash
|
2021-09-23 08:12:37 +08:00
|
|
|
$ pnpm docs:dev
|
2020-07-24 19:20:37 +08:00
|
|
|
```
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-09-18 16:15:30 +08:00
|
|
|
the project will launch website for you to preview all existing component
|
2020-07-24 20:29:10 +08:00
|
|
|
|
2021-09-17 16:42:20 +08:00
|
|
|
## Local development
|
|
|
|
|
|
|
|
1. With command
|
|
|
|
|
|
|
|
```shell
|
2021-09-23 08:12:37 +08:00
|
|
|
$ pnpm dev
|
2021-09-17 16:42:20 +08:00
|
|
|
```
|
|
|
|
|
|
|
|
will start the local development environment
|
|
|
|
|
|
|
|
2. Add your component into `play/play.vue`
|
|
|
|
|
|
|
|
> play.vue
|
|
|
|
|
|
|
|
```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.
|
|
|
|
|
2020-08-03 00:08:01 +08:00
|
|
|
## Component migration process
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-08-03 00:08:01 +08:00
|
|
|
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
|
2020-07-24 20:29:10 +08:00
|
|
|
|
|
|
|
## Generate new component
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-07-24 20:29:10 +08:00
|
|
|
With command
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-07-24 20:29:10 +08:00
|
|
|
```bash
|
2021-09-23 08:12:37 +08:00
|
|
|
$ pnpm gen component-name
|
2020-07-24 20:29:10 +08:00
|
|
|
```
|
|
|
|
|
|
|
|
Note the `component-name` must be in `kebab-case`, combining words by replacing each space with a dash.
|
2020-07-30 10:30:18 +08:00
|
|
|
|
2021-09-26 00:06:46 +08:00
|
|
|
And component type must be added to `packages/element-plus/global.d.ts`.
|
|
|
|
|
2020-07-30 10:30:18 +08:00
|
|
|
## Commit template
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-07-30 10:30:18 +08:00
|
|
|
With command
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-07-30 10:30:18 +08:00
|
|
|
```bash
|
2021-09-23 08:12:37 +08:00
|
|
|
pnpm cz
|
2020-07-30 10:30:18 +08:00
|
|
|
```
|
|
|
|
|
|
|
|
Example
|
2021-09-04 19:29:28 +08:00
|
|
|
|
2020-07-30 10:30:18 +08:00
|
|
|
```
|
2021-09-17 00:03:11 +08:00
|
|
|
# [TYPE](SCOPE): [el-component-name] DESCRIPTION#[ISSUE]
|
|
|
|
# example: feat(components): [el-button] add type for form usage #1234
|
2020-07-30 10:30:18 +08:00
|
|
|
```
|
|
|
|
|
2021-07-22 11:09:53 +08:00
|
|
|
## Licence
|
|
|
|
|
2021-09-17 00:03:11 +08:00
|
|
|
Element Plus is open source software licensed as
|
2021-07-22 11:09:53 +08:00
|
|
|
[MIT](https://github.com/element-plus/element-plus/blob/master/LICENSE).
|
|
|
|
|
|
|
|
## Contributors
|
|
|
|
|
2021-07-22 14:31:19 +08:00
|
|
|
This project wouldn't exist without our amazing contributors
|
2021-07-22 11:09:53 +08:00
|
|
|
|
|
|
|
<a href="https://github.com/element-plus/element-plus/graphs/contributors">
|
|
|
|
<img src="https://contrib.rocks/image?repo=element-plus/element-plus" />
|
|
|
|
</a>
|