An enterprise-class UI component library, support both Vue.js 2 and Vue.js 3, as well as PC and mobile.
English | 简体中文
🌈 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.
Execute the following command to install the TinyVue component library for Vue.js 3.
npm i @opentiny/vue@3
Execute the following command to install the TinyVue component library for Vue.js 2.
npm i @opentiny/vue@2
Then you can use the TinyVue component(such as <tiny-button>) in the App.vue file.
<script lang="ts" setup> import { Button as TinyButton } from '@opentiny/vue' </script> <template> <tiny-button>Tiny Vue</tiny-button> </template>
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/
Welcome to join our OpenTiny community!🎉
If you don't know how to start, please read our contributing guide.
- Add the official assistant WeChat
opentiny-officialand join the technical exchange group. - Add to the mailing list
opentiny@googlegroups.com
Contributors are community members who have 1 or more PR merged in OpenTiny.
Thanks goes to these wonderful people (emoji key):
Kagol
💻 ajaxzheng
ajaxzheng
💻 TC-twwang
TC-twwang
💻 jacknan
jacknan
💻 Pithy
Pithy
💻 heygsc
heygsc
💻 MangoWu
MangoWu
💻 ADNY
ADNY
💻
chenxi-20
💻 Alaray
Alaray
💻 ing
ing
💻 申君健
申君健
💻 MomoPoppy
MomoPoppy
💻 WXC-Spring
WXC-Spring
💻 GaoNeng
GaoNeng
💻 acyza
acyza
💻
ygj6
💻 MrWang2016
MrWang2016
💻 qinwencheng
qinwencheng
💻 黄怡林
黄怡林
💻 zuixinwang
zuixinwang
💻 luopei
luopei
💻 前端爆冲
前端爆冲
🚇 Xie Jay
Xie Jay
🚇
linxiang
💻 程序员包子
程序员包子
💻 peter G
peter G
💻 📖 gimmyhehe
gimmyhehe
💻 dong
dong
💻 凌览
凌览
💻 Caesar-ch
Caesar-ch
💻 chenqifeng66
chenqifeng66
Zz-ZzzZ
Lyx
💻 Spark Bill
Spark Bill
💻 wendZzoo
wendZzoo
💻 Gweesin Chan
Gweesin Chan
💻 Binks_
Binks_
📖 yoyo
yoyo
💻 Kif
Kif
💻
jack-zishan
💻 LinboLen
LinboLen
💻 vaebe
vaebe
💻 YuYan Li
YuYan Li
💻 shonen7
shonen7
💻 xlearns
xlearns
💻 tianxin
tianxin
💻 Xppp0217
Xppp0217
💻
AcWrong02
🐛 betavs
betavs
💻 fanbingbing16
fanbingbing16
💻 dyh333
dyh333
📖 betterdancing
betterdancing
📖 David
David
💻 falcon-jin
falcon-jin
💻 wuyiping0628
wuyiping0628
James
📖 ichynul
ichynul
💻 Davont
Davont
💻 Nick Wu
Nick Wu
💻 Floyd
Floyd
💻 Jevin
Jevin
💻 星河
星河
💻 Ranier Yu
Ranier Yu
💻
Thanks to:
- The 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 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 project which is a Vue-based table component, supports rich features, TinyVue's Grid component is based on vxe-table.
- The sortablejs 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's article Renderless Components in Vue.js, which inspired TinyVue's renderless component design architecture and ultimately enabled cross-end and cross-framework capabilities in the TinyVue project.