# ring-ui **Repository Path**: xsj1287618656/ring-ui ## Basic Information - **Project Name**: ring-ui - **Description**: 这是一个JetBrains 的 Web UI 组件集合 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2017-08-08 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Ring UI — JetBrains Web UI components [![Build Status][ci-img]][ci] [![Dependencies Status][deps-img]][deps] [![Dev Dependencies Status][dev-deps-img]][dev-deps] [![NPM version][npm-version-img]][npm-package] [![NPM downloads][npm-count-img]][npm-package] This collection of UI components aims to provide all of the necessary building blocks for web-based products built inside JetBrains, as well as third-party plugins developed for JetBrains' products. ### Quick start 1. Install Yeoman and Ring UI generator: `npm install -g yo @jetbrains/generator-ring-ui` 2. Go to the root directory of your project (create one if necessary) and run `yo @jetbrains/ring-ui`. After you enter the name of the project all the necessary npm dependencies will be installed. 3. You project is ready to be developed. The following commands are available: - `npm start` to run a local development server - `npm test` to launch karma tests - `npm run lint` to lint your code - `npm run build` to build a production bundle - `npm run create-component` to create a new component template with styles and tests ### Not-so-quick start In case boilerplate generators are not your thing and you prefer to understand the inner workings a bit better. 1. Install Ring UI with `npm install @jetbrains/ring-ui --save-exact` 2. If you are building your app with webpack, make sure to `import` ring-ui components where needed. Otherwise, create an entry point (for example, `/app/app__components.tpl.js`) and `import` the components there. ``` javascript import React from 'react'; import ReactDOM from 'react-dom'; import LoaderInline from '@jetbrains/ring-ui/components/loader-inline/loader-inline'; ReactDOM.render(, document.getElementById('container')); ``` 3. Create `webpack.config.js` with the following contents (example): ``` javascript const ringConfig = require('@jetbrains/ring-ui/webpack.config').config; const webpackConfig = { entry: 'src/entry.js', // your entry point for webpack output: { path: 'path/to/dist', filename: '[name].js' }, module: { rules: [ ...ringConfig.module.rules, ] } }; module.exports = webpackConfig; ``` ### Links - [Living style guide](http://www.jetbrains.org/ring-ui/) - [GitHub repository](https://github.com/JetBrains/ring-ui) - [Issues in YouTrack](https://youtrack.jetbrains.com/issues/RG) - [Code review in Upsource](https://upsource.jetbrains.com/ring-ui/view) - [Builds in TeamCity][ci] - [npm package][npm-package] [ci]: https://teamcity.jetbrains.com/project.html?projectId=JetBrainsUi_RingUi&tab=projectOverview [ci-img]: https://teamcity.jetbrains.com/app/rest/builds/buildType:JetBrainsUi_RingUi_Build/statusIcon.svg [deps]: https://david-dm.org/jetbrains/ring-ui [deps-img]: https://img.shields.io/david/jetbrains/ring-ui.svg [dev-deps]: https://david-dm.org/jetbrains/ring-ui?type=dev [dev-deps-img]: https://img.shields.io/david/dev/jetbrains/ring-ui.svg [npm-package]: https://www.npmjs.com/package/@jetbrains/ring-ui [npm-version-img]: https://img.shields.io/npm/v/@jetbrains/ring-ui.svg [npm-count-img]: https://img.shields.io/npm/dt/@jetbrains/ring-ui.svg