GithubHelp home page GithubHelp logo

jetbrains / ring-ui Goto Github PK

View Code? Open in Web Editor NEW
3.6K 58.0 182.0 1.88 GB

A collection of JetBrains Web UI components

Home Page: https://jetbrains.github.io/ring-ui

License: Apache License 2.0

JavaScript 3.00% HTML 0.01% CSS 10.95% Shell 0.02% TypeScript 86.02%
react components jetbrains-ui

ring-ui's Introduction

Ring UI โ€” JetBrains Web UI components

Storybook Build Status Storybook NPM version NPM downloads

official JetBrains project

This collection of UI components aims to provide all the necessary building blocks for web-based products built inside JetBrains, as well as third-party plugins developed for JetBrains' products.

Try now

  • Try the codesandbox, based on create-react-app tooling, to see and try the UI components
  • Check out list of examples for each component

Installation

  • For Quick Start, use pre-built version: npm install @jetbrains/ring-ui-built
  • For complex projects, use "sources" version npm install @jetbrains/ring-ui You will then need to include building Ring UI into your WebPack build (see "Building Ring UI from source via Webpack" below)

Quick start

The easiest way is to import necessary components as ES modules:

// You need to import RingUI styles once
import '@jetbrains/ring-ui-built/components/style.css';

import alertService from '@jetbrains/ring-ui-built/components/alert-service/alert-service';
import Button from '@jetbrains/ring-ui-built/components/button/button';

...

export const Demo = () => {
  return (
    <Button onClick={() => alertService.successMessage('Hello world')}>
      Click me
    </Button>
  );
};

The bundle size will depend on the amount of components you imported.

Building Ring UI from source via Webpack

In case you have complex build, and you want to compile RingUI sources together with your sources in a same build process, you can use the following configuration:

  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.

    import React from 'react';
    import ReactDOM from 'react-dom';
    import LoaderInline from '@jetbrains/ring-ui/components/loader-inline/loader-inline';
    
    ReactDOM.render(<LoaderInline/>, document.getElementById('container'));
  3. Create webpack.config.js with the following contents (example):

    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,
          <Your rules here>
        ]
      }
    };
    
    module.exports = webpackConfig;

Contributing

See CONTRIBUTING.md

Links

ring-ui's People

Contributors

akela96 avatar andrey-skl avatar anisimov74 avatar blacknikomo avatar cy6erskunk avatar denissokolov avatar dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar dependencies-bot avatar dmitry-mashkov avatar helenone avatar hypnosphi avatar itrelease avatar jetbrainsteamcity avatar katriyna avatar kisenka avatar leonya avatar maksimr avatar maxmaximov avatar mazine avatar mbarinov avatar nightflash avatar o0 avatar princed avatar skoch13 avatar subelta avatar vkrol avatar xel23 avatar zeckson avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.