DaiQiangReal d0a6cba737 chore: backup пре 3 месеци
..
_base 6a81a795f3 chore: docs & example in story optimize пре 1 година
_cssAnimation 73401f34e4 fix: fix tooltip animation in react18 #1225 (#1227) пре 3 година
_portal dc6f3f7fee fix: optimize code пре 2 година
_sortable 1d5f248c93 fix: Fixed the issue in Transfer that quick drag failed due to too long drag sensing delay time пре 2 година
_test_ d4c3d4b522 chore: use eslint to format code (#1162) пре 3 година
_utils fe6387877c feat: custom global indicator for Spin (#2897) пре 8 месеци
aiChatDialogue a14034fe77 fix: add prismjs to chat & dialogue to aviod prism is no defined problem (#3085) пре 3 месеци
aiChatInput b9e65c792a Merge branch 'release' пре 3 месеци
anchor 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
audioPlayer 417c859d0f fix: fixed The problems in the use of Tooltip in components(AudioPlay… (#3039) пре 4 месеци
autoComplete 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
avatar 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
backtop 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
badge 9163f9f174 fix: the light theme badge does not look as expected when used alone (#2930) пре 8 месеци
banner 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
breadcrumb c2a12271e8 style: Fix the style problem of BreadCrumb in noLink mode (#2884) пре 9 месеци
button 66d1be95fd Feat dialogue (#2997) пре 5 месеци
calendar 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
card 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
carousel 2c43674a31 fix: render state value in children render always get init one (#2634) пре 1 година
cascader 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
chat b157e3d45a Merge branch 'main' into release пре 3 месеци
checkbox 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
clientAI d0a6cba737 chore: backup пре 3 месеци
codeHighlight a87ee93f0b fix: code highlight add semi-light-scrollbar пре 1 година
collapse 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
collapsible 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
colorPicker c5ca0a25c7 fix: optimize colorPicker code пре 1 година
configProvider 458a4dcbd2 feat: ConfigConsumer пре 1 година
cropper 16294a73ef feat: [Cropper] add preview API for realtime preivew croppered image (#2782) пре 1 година
datePicker 8df42ba7d3 fix: Update the display logic of months in different years under type monthRange (#2608) пре 1 година
descriptions 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
divider 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
dragMove bc4109de8d fix: fix Dragmove cannot be used as a JSX componen (#3045) пре 4 месеци
dropdown 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
empty 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
feedback 4f345b54f7 fix: fix import bug пре 3 месеци
floatButton 4db0d84458 fix: Fixed an issue where a TypeError occurred when clicking a floatButton without passing an onClick method (#3052) пре 4 месеци
form 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
grid 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
highlight 52b37b12e1 feat: highlight searchWords support object props (#2600) пре 1 година
hotKeys 33d762b11d chore: Hotkeys, move the event DOM operation to the adapter (#2515) пре 1 година
iconButton 66d1be95fd Feat dialogue (#2997) пре 5 месеци
icons 66d1be95fd Feat dialogue (#2997) пре 5 месеци
image 417c859d0f fix: fixed The problems in the use of Tooltip in components(AudioPlay… (#3039) пре 4 месеци
input 5bbcc241fb feat(input): add compositionEvent callback in input component (#2922) пре 8 месеци
inputNumber 669e0007aa fix: add Math.round to inputnumber calculate to avoid js precision calculation problem (#3026) пре 4 месеци
jsonViewer b3356487aa feat: expose jsonviewer search api (#2755) пре 1 година
layout 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
list 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
locale 0448f2be4b chore: backup пре 3 месеци
lottie 5a83d41be8 chore: doc пре 1 година
markdownRender d0284f2f7d chore: optimize markdownrender propTypes пре 5 месеци
modal 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
navigation 417c859d0f fix: fixed The problems in the use of Tooltip in components(AudioPlay… (#3039) пре 4 месеци
notification 6d38db9c64 fix: [Toast][Notification] Fixed a TypeError issue that occurred on the first Toast/Notification imperative call in React v19 (#3053) пре 4 месеци
overflowList cf816b24b4 fix: deepclone items when getOverflowItem to Prevent props.items from being changed internally due to rapid clicks (#2423) пре 1 година
pagination 98684cbf50 fix: [Pagination] Fixed page capacity switcher did not switch language correctly when switching languages (#2698) пре 1 година
pincode 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
popconfirm b786b6eb04 fix: change popconfirm test пре 1 година
popover 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
progress c1f2ca8eeb fix: Fixed the problem that when the hot area for sorting is the enti… (#2803) пре 11 месеци
radio 44566f9df3 fix: Radio/RadioGroup value add boolean type support (#3019) пре 5 месеци
rating 417c859d0f fix: fixed The problems in the use of Tooltip in components(AudioPlay… (#3039) пре 4 месеци
resizable 3c4e287508 fix: Fix Resizable not working on touch screen пре 1 година
resizeObserver 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
scripts 8ef774204a fix: publish with source code пре 3 месеци
scrollList 5ec3889a0c fix(datepicker): fixed chrome crashed bug by scrollList aria prop #2722 (#2723) пре 1 година
select 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
sideSheet 66d1be95fd Feat dialogue (#2997) пре 5 месеци
skeleton 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
slider 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
space 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
spin fe6387877c feat: custom global indicator for Spin (#2897) пре 8 месеци
steps 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
switch 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
table 4b1a6451a8 fix: Fixed where the border setting of the outer table affected the style of the inner table when multiple levels of table nesting were used (#3083) пре 3 месеци
tabs 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
tag 66d1be95fd Feat dialogue (#2997) пре 5 месеци
tagInput b41fc3612a feat: [TagInput] add split API (#2984) пре 3 месеци
timePicker 1fc17f3b8c style: add color-scrollList_header-bg support (#2789) пре 1 година
timeline 3a7a6d1e55 chore: update ci workflow node 16 -> node 20 (#2109) пре 1 година
toast 6d38db9c64 fix: [Toast][Notification] Fixed a TypeError issue that occurred on the first Toast/Notification imperative call in React v19 (#3053) пре 4 месеци
tooltip 417c859d0f fix: fixed The problems in the use of Tooltip in components(AudioPlay… (#3039) пре 4 месеци
transfer cde4825d2b fix: When all items except the disabled item in the left panel of tra… (#2574) пре 1 година
tree 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
treeSelect 3bfbf4f8bb Feat/semi UI 19 (#2996) пре 4 месеци
trigger f05ed24b0b chore: remove file head lint rule which already set global (#1706) пре 2 година
typography 417c859d0f fix: fixed The problems in the use of Tooltip in components(AudioPlay… (#3039) пре 4 месеци
upload 417c859d0f fix: fixed The problems in the use of Tooltip in components(AudioPlay… (#3039) пре 4 месеци
userGuide 5d79300385 fix: UserGuide click-through behavior (#2764) пре 1 година
videoPlayer ef269f7564 fix: add handleVideoPlay and handleVideoPause to update the isPlaying status (#3072) пре 4 месеци
README.md 581de64d5e docs: update component number пре 1 година
getBabelConfig.js 496f3db0f7 chore: remove corejs пре 3 година
gulpfile.js 9c3a607100 chore: auto format code пре 3 година
index.ts 0448f2be4b chore: backup пре 3 месеци
package.json 97aaec750b Merge branch 'main' into mcp пре 3 месеци
tsconfig.json 09d8752f3c feat: add videoPlayer support (#2822) пре 11 месеци
webpack.config.js f452dd2ed5 chore: update semi-ui webpack config пре 5 месеци

README.md

Semi-UI

A modern, comprehensive, flexible design system and UI library. Connect DesignOps & DevOps. Quickly build beautiful React apps. Maintained by Douyin-fe team.

[![LICENSE][license-badge]][license-url] [![NPM][npm-badge]][npm-url] [![CONTRIBUTORS][contributors-badge]][contributors-url] ![Design Token][Design Token] [![FIGMA][figma-badge]][figma-url] [![CODECOV][codecov-badge]][codecov-url] [![Chromatic][chromatic-badge]][chromatic-url] [![Cypress][cypress-badge]][cypress-url] [![Twitter Follow](https://img.shields.io/twitter/follow/SemiDesignUI?style=social)](https://twitter.com/SemiDesignUI)

🎉 Features

  • 💪 Up to 70+ high-quality Components.
  • 💅 Code2Design, automatically generate Figma UI Kit according to different themes, keep same between design and code
  • 🚀 Powerful Design2Code support, convert figma draft to code in a few seconds
  • 💕 Complete A11y support, follows W3C standards to provide keyboard interaction, focus management and ARIA for all components
  • 💅 Up to 3000+ Design Tokens can be easily modify by Semi Design system management, make Semi Design to Any Design quickly.
  • 🌍 Internationalization Support for Dozens of Languages, timezone, RTL support
  • ⚙️ Strict quality assurance, covering unit testing, E2E testing, visual testing
  • 👏 Written in Typescript, friendly Static Type Support. Based on Foundation/Adapter architecture, easy to read and contribute
  • 🥳 SSR (Server Side Rendering) Compatible.

🔥 Install

# with npm
npm install @douyinfe/semi-ui

# with yarn
yarn add @douyinfe/semi-ui

👍 Usage

Here is a quick example to get you started, it's all you need:

import React from 'react';
import ReactDOM from 'react-dom';
import { Button, Switch } from '@douyinfe/semi-ui';

const App = () => (
    <>
        <Button type='primary'>primary button</Button>
        <Switch size='large' />
    </>
);

ReactDOM.render(<App />, document.querySelector('#app'));

And Semi UI Doc Site has hundreds of editable examples and live preview, welcome to play with those examples.

📰 News about Semi UI

📌 Documentation

👌 Platform Support

Semi UI supports all major modern browsers.

|chrome
chrome|firefox
firefox|safari
safari|IE/Edge
IE/Edge|electron
Electron| |--|--|--|--|--| | latest 2 versions | latest 2 versions | latest 2 versions | Edge | latest 2 versions |

👨‍👨‍👧‍👦 User Group

Join User Group on Feishu / Lark

💖 Thanks

Chromatic

Thanks to Chromatic for providing the visual testing platform that helps us review UI changes and catch visual regressions.

Cypress

Thanks to Cypress for providing E2E testing.

👐 Contributing

Thanks to all the people who already contributed!

Read the contributing guide to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to Semi UI.

See CONTRIBUTING documentation.

🎈 License

Semi UI is MIT Licensed