Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
A modern, flexible design system and React UI library with 80+ components, Design to Code support, and 3,000+ design tokens.
Semi Design, also released as the @douyinfe/semi-ui npm package, is an open-source React UI library and design system from ByteDance's DouyinFE team that provides 80+ components and a 3,000+ token theming engine. It takes design tokens and Figma designs as inputs and produces React components, cross-theme Figma UI kits, and generated code, running in any React 16+ project. The library is MIT-licensed, written in TypeScript, supports server-side rendering (SSR), and is maintained by the DouyinFE team with stable updates since 2019.
Semi Design is a React UI library and design system that connects DesignOps and DevOps. It provides a collection of 80+ high-quality components, a Design System Manager (DSM) with 3,000+ design tokens, and official Figma plugins for Design to Code (D2C) and Code to Design (C2D). The npm package @douyinfe/semi-ui is the core distribution, and the project lives on GitHub under the DouyinFE/semi-design repository.
@douyinfe/semi-ui and quickly compose forms, tables, and other interfaces.Install the library via npm, yarn, or pnpm (npm install @douyinfe/semi-ui), then import components into a React app. For design-to-code, install the Semi Figma plugin, select a layer in Figma, and copy the generated code or open it in CodeSandbox for further editing. Design tokens defined in DSM are consumed by both the React components and the Figma plugin.
Yes, Semi Design is open-source and MIT-licensed. The npm package @douyinfe/semi-ui is free to use, and the source code is available on GitHub.
Yes, all components are written in TypeScript, so static type support comes with the package. The component architecture follows a Foundation/Adapter pattern designed for readability and contribution.
Semi DSM (Design System Manager) is a tool within Semi Design that provides more than 3,000 design tokens for configuring every detail of a theme. It lets you define your own design system and keeps Figma and code in sync.
The official Semi Figma plugin supports Figma Dev Mode: select a layer and get the corresponding code immediately on the right panel. It outputs formats including JSX + SCSS, Emotion, Tailwind, or JSON Schema DSL, and you can jump to CodeSandbox to continue editing.
Semi Design supports the latest two versions of Chrome, Firefox, and Safari, plus Edge and Electron latest two versions.