livechat / design-system

LiveChat design system components
https://design.livechat.com
27 stars 9 forks source link

livechat design-system logo
LiveChat Design System Monorepo

npm version react-components npm version icons Workflow status badge

Welcome to the Design System Monorepo! This repository houses a collection of packages and tools related to our design system. We use the Lerna tool and NPM workspaces to manage these packages efficiently. Below is an overview of the packages included in this monorepo:

Packages

1. React Components

2. Icons

3. Example React Project

Getting Started

Clone this repository to your local machine:

git clone git@github.com:livechat/design-system.git

Install the necessary dependencies for the entire monorepo using Lerna:

Required version of node.js is 20.14.0.

If you're a volta user, the project maintains node version entry within package.json.

You should start with installing dependencies:

npm install

After that just execute the start command. It will build all necessary packages in watch mode. Storybook should start automatically (if not - try visiting http://localhost:6006).

npm start

If Storybook is not enough, you can additionaly run npm start:example which will run example-react package in watch mode. example-react is a simple React app based on vite-react boilterplate. It has a direct dependency on react-components package, so every change should be reflected in the app via auto-reload.

404 and disconnections problems

If you have problems with disconnects while working in the environment, make the following change to the file packages/react-components/.storybook/main.ts:

...
typescript: {
// reactDocgen: 'react-docgen-typescript',
  check: false,
  reactDocgen: false,
},
...

This is a problem that occurred after the last update of Storybook and related packages, we are currently looking for a solution for this.

Be sure not to commit changes to this file along with other changes made to components.

Contributing

The guide that describes the contribution process is available here.

Testing

We have prepared a document describing testing process and core principles in the area of quality here.

Releasing

The package releasing and related documentation is available here.