1 | ReadMe UI
|
2 | ===
|
3 |
|
4 | <p>
|
5 | <a class="cicd-badge" href="https://github.com/readmeio/ui/actions">
|
6 | <img align=right src="https://github.com/readmeio/ui/workflows/CI/CD/badge.svg" alt="Owlblocks!">
|
7 | </a>
|
8 | <a href="https://readmeio.github.io/ui/#!/">
|
9 | a UI component library and design system for ReadMe's front end.
|
10 | </a>
|
11 | </p>
|
12 |
|
13 | ```bash
|
14 | npm install -S @readme/ui
|
15 | ```
|
16 |
|
17 | ## Workflow <img width="25%" align="right" src="https://owlbert.io/images/owlberts-png/Blocks.psd.png">
|
18 |
|
19 | Run these commands to develop and document UI components locally:
|
20 |
|
21 | ```bash
|
22 | npm start # start the local Styleguidist dev server
|
23 | npm test # run tests against the UI library
|
24 | npm run watch # watch and rebuild, for local linked dev
|
25 | ```
|
26 |
|
27 | ### Creating New Components
|
28 |
|
29 | Use the `new:elem` command to quickly scaffold out a new component or composition:
|
30 |
|
31 | ```bash
|
32 | npm run elem -- MyUIElement "composition" # or "component" by default
|
33 | ```
|
34 |
|
35 | ## Architecture
|
36 |
|
37 | From a birdseye view: (the meaty stuff lives in the `ui/` directory, obviously!)
|
38 |
|
39 | ```bash
|
40 | src/
|
41 | │ ui/ # UI component library:
|
42 | │ ├ components/ # - lower-level UI building blocks
|
43 | │ └ compositions/ # - higher-order UI constructs
|
44 | └ styles/ # SCSS vars, mixins; CSS resets; etc.
|
45 | ```
|
46 |
|
47 | ### Under the Hood
|
48 |
|
49 | This repository brings together a number of utilities and tools for various front end development workflows:
|
50 |
|
51 | | Dependencies | |
|
52 | |:----------------------------------------------------------------------------------|:---------------------------------------|
|
53 | | _React & Sass_ | for components and styling |
|
54 | | _[Styleguidist](https://github.com/readmeio/ui/tree/master/styleguide.config.js)_ | to power our living documentation |
|
55 | | _Babel & Webpack/[NWB](https://github.com/insin/nwb)_ | for transpiling and compilation |
|
56 | | _Lodash_ | for various Javascript utility methods |
|