Skip to content
This repository has been archived by the owner on Sep 19, 2022. It is now read-only.
/ mandala Public archive

React UI Components built with Functional CSS

License

Notifications You must be signed in to change notification settings

mandala-ui/mandala

Repository files navigation

mandala

Mandala UI

Maintainability Test Coverage CircleCI

Mandala is a UI Component Library built with React and Tachyons, a tiny (30kb GZIP) Declarative CSS library

Installation

Check out our Interactive Docs before you decide if this package is right for you.

The only real dependencies to use Mandala are React, and Tachyons.io and they are Peer Dependencies, so you are responsible for installing them in your build

You can add the CDN version of tachyons to the head of your project to easily get started.

<link rel="stylesheet" href="https://unpkg.com/tachyons@4.9.1/css/tachyons.min.css"/>

If you have a CSS build pipeline in your React project, you can also

npm install tachyons

Components

Each of the Mandala components are published to NPM separately as scoped packages.

npm install @mandala-ui/progress-bar

then import the component

import ProgressBar from '@mandala-ui/progress-bar'

Either way you will need Tachyons installed

Contributing

Mandala is set up to easily get you contributing new components.

It uses React Storybook as a development environment.

So to get started, run:

npm run generate

And follow the prompts. This will scaffold a new component and generate the Jest test files, as well as a Storybook Story for interactive documentation.

Storybook stories use mostly these two addons for development.

npm start

Go to http://localhost:6006/

and find your component which will render empty, now you can start composing CSS classes.

A PR of a new Component requires 3 things:

  • A README that completely documents the props and their usage
  • Interactive documentation in the form of a Storybook Story
  • 100% Jest Test Coverage.

mandala-bottom