/ UIKit

UIKit

Gravity 的基础 UI 组件和 token,用于构建服务。

UIKit · npm package CI storybook tests storybook

一套灵活、实用且高效的 React 组件,用于构建丰富的 Web 应用。

安装

npm install --save-dev @gravity-ui/uikit

使用

import {Button} from '@gravity-ui/uikit';

const SubmitButton = <Button view="action" size="l" />;

样式

UIKit 包含基础样式和主题。为了让一切看起来都很棒,请在你的入口文件顶部添加以下内容:

// index.js

import '@gravity-ui/uikit/styles/fonts.css';
import '@gravity-ui/uikit/styles/styles.css';

// ...

UIKit 支持不同的主题:浅色、深色以及它们的对比度变体。你的应用必须渲染在 ThemeProvider 内部:

import {createRoot} from 'react-dom/client';
import {ThemeProvider} from '@gravity-ui/uikit';

const root = createRoot(document.getElementById('root'));
root.render(
  <ThemeProvider theme="light">
    <App />
  </ThemeProvider>,
);

在 SSR 期间可以生成初始的根 CSS 类,以避免主题闪烁:

import {getRootClassName} from '@gravity-ui/uikit/server';

const theme = 'dark';
const rootClassName = getRootClassName({theme});

const html = `
<html>
  <body>
    <div id="root" class="${rootClassName}"></div>
  </body>
</html>
`;

此外,还有一个 SCSS mixins 文件,其中包含一些有用的辅助函数,可以在你的应用中使用。

国际化 (I18N)

某些组件包含文本令牌(单词和短语)。它们有两种语言:en(默认)和 ru。 要设置语言,请使用 configure 函数:

// index.js

import {configure} from '@gravity-ui/uikit';

configure({
  lang: 'ru',
});

开发

要启动带有 storybook 的开发服务器,请运行以下命令:

git clone git@github.com:gravity-ui/uikit.git
cd uikit
npm ci
npm run start
关于库
星标
873
版本
7.25.0
最后更新
29.10.2025
代码仓库
github.com/gravity-ui/uikit
许可证
MIT License
维护者