https://github.com/opentiny/tiny-vue
TinyVue is an enterprise-class UI component library of OpenTiny community, support both Vue.js 2 and Vue.js 3, as well as PC and mobile.
https://github.com/opentiny/tiny-vue
component-library frontend headless-components opentiny renderless-components tiny-vue vue vue-components vue3
Last synced: 7 months ago
JSON representation
TinyVue is an enterprise-class UI component library of OpenTiny community, support both Vue.js 2 and Vue.js 3, as well as PC and mobile.
- Host: GitHub
- URL: https://github.com/opentiny/tiny-vue
- Owner: opentiny
- License: mit
- Created: 2022-11-26T07:32:44.000Z (about 3 years ago)
- Default Branch: dev
- Last Pushed: 2025-05-12T07:55:27.000Z (7 months ago)
- Last Synced: 2025-05-13T00:13:27.639Z (7 months ago)
- Topics: component-library, frontend, headless-components, opentiny, renderless-components, tiny-vue, vue, vue-components, vue3
- Language: Less
- Homepage: https://opentiny.design/tiny-vue
- Size: 57 MB
- Stars: 1,977
- Watchers: 24
- Forks: 300
- Open Issues: 201
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
An enterprise-class UI component library, support both Vue.js 2 and Vue.js 3, as well as PC and mobile.
English | [įŽäŊ䏿](README.zh-CN.md)
đ Features:
- đĻ 104 clean, easy-to-use and powerful components.
- đ One code, Support both Vue.js 2 and Vue.js 3.
- đĨī¸ One code, Support both PC and Mobile.
- đ Support internationalization.
- đ¨ Support theme customization.
- đ Components support configuration development, can support low-code platform.
- đĄ Use a cross-end and cross-framework architecture, flexible and portable.
## đ ī¸ Usage
### 1. Installation
Execute the following command to install the TinyVue component library for Vue.js 3.
```shell
npm i @opentiny/vue@3
```
Execute the following command to install the TinyVue component library for Vue.js 2.
```shell
npm i @opentiny/vue@2
```
### 2. Import component
Then you can use the TinyVue component(such as ``) in the `App.vue` file.
```html
import { Button as TinyButton } from '@opentiny/vue'
Tiny Vue
```
## đĨī¸ Development
```shell
git clone git@github.com:opentiny/tiny-vue.git
cd tiny-vue
pnpm i
# Vue.js 3
pnpm dev
# Vue.js 2
pnpm dev2
```
Open your browser and visit: [http://127.0.0.1:7130/](http://127.0.0.1:7130/)
## đ¤ Contributing
Welcome to join our OpenTiny community!đ
If you don't know how to start, please read our [contributing guide](CONTRIBUTING.md).
- Add the official assistant WeChat `opentiny-official` and join the technical exchange group.
- Add to the mailing list `opentiny@googlegroups.com`
## ⨠Contributors
Contributors are community members who have 1 or more PR merged in OpenTiny.
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):

Kagol
đģ

ajaxzheng
đģ

TC-twwang
đģ

jacknan
đģ

Pithy
đģ

heygsc
đģ

MangoWu
đģ

ADNY
đģ

chenxi-20
đģ

Alaray
đģ

ing
đģ

įŗååĨ
đģ

MomoPoppy
đģ

WXC-Spring
đģ

GaoNeng
đģ

acyza
đģ

ygj6
đģ

MrWang2016
đģ

qinwencheng
đģ

éģæĄæ
đģ

zuixinwang
đģ

luopei
đģ

åį̝įå˛
đ

Xie Jay
đ

linxiang
đģ

į¨åēåå
å
đģ

peter G
đģ đ

gimmyhehe
đģ

dong
đģ

åč§
đģ

Caesar-ch
đģ

chenqifeng66
â ī¸

Zz-ZzzZ
â ī¸

Lyx
đģ

Spark Bill
đģ

wendZzoo
đģ

Gweesin Chan
đģ

Binks_
đ

yoyo
đģ

Kif
đģ

jack-zishan
đģ

LinboLen
đģ

vaebe
đģ

YuYan Li
đģ

shonen7
đģ

xlearns
đģ

tianxin
đģ

Xppp0217
đģ

AcWrong02
đ

betavs
đģ

fanbingbing16
đģ

dyh333
đ

betterdancing
đ

David
đģ

falcon-jin
đģ

wuyiping0628
â ī¸

James
đ

ichynul
đģ

Davont
đģ

Nick Wu
đģ

Floyd
đģ

Jevin
đģ

ææ˛ŗ
đģ

Ranier Yu
đģ

Zcating
đģ

Aoi Kaze
â ī¸

Simon He
đ

zhangpaopao
đ§

Nowitzki41
đģ

dufu1991
đ
## â¤ī¸ Credits
Thanks to:
- The [element](https://github.com/ElemeFE/element) project which is an old component library based on Vue.js. TinyVue draws on Element at the beginning of its design, and is compatible with Element's component API.
- The [floating-ui](https://github.com/floating-ui/floating-ui) project which is a small library that helps you create "floating" elements such as tooltips, popovers, dropdowns, and more. Many components of TinyVue are based on the capabilities provided by Floating UI.
- The [vxe-table](https://github.com/x-extends/vxe-table) project which is a Vue-based table component, supports rich features, TinyVue's Grid component is based on vxe-table.
- The [sortablejs](https://github.com/SortableJS/Sortable) project which is a powerful drag-and-drop library. The drag-and-drop sorting function of TinyVue's Grid / Transfer / Tabs and other components is based on Sortable.
- [@adamwathan](https://github.com/adamwathan)'s article [Renderless Components in Vue.js](https://adamwathan.me/renderless-components-in-vuejs/), which inspired TinyVue's renderless component design architecture and ultimately enabled cross-end and cross-framework capabilities in the TinyVue project.
## License
[MIT](LICENSE)