@aptible/design-kit
v0.0.102
Published
Aptible design system components
Downloads
310
Readme
aptible-design-kit
Basic presentational react components for the Aptible Design System.
Using aptible-design-kit
You can also use Chromatic and the "View Storybook" link there to explore the design kit
yarn add @aptible/design-kit
Building aptible-design-kit
Developing locally
yarn
yarn run storybook
Linking to comply-ui (or any other repo) locally
Install yalc globally:
yarn global add yalc
In this repo:
yalc publish
In the consuming repo:
yalc add @aptible/design-kit
yarn
Note: This will change the consuming repo's package.json
(replacing @aptible/design-kit
's version number with a local path). Make sure you revert that before committing!
Generating a new component
This project uses Plop to make it easy to generate new components.
- Run
yarn generate
oryarn generate <component name>
- Follow the prompt and give the component a name; the plopfile will convert the name to Pascal case
- The component will be created in packages/components/
Adding a new component
- Add the component's export to the root
index.ts
- If the component has its own stylesheet, add it to
packages/css/components
.
Writing CSS
Aptible Design Kit uses tailwindcss to compose styles for components.
In many cases, each component should have their own index.css file. The naming convention follows SUIT CSS using the adk
prefix.
adk-ComponentName
adk-ComponentName--modifierName
adk-ComponentName-descendentName
adk-ComponentName.is-stateOfComponent
Writing documentation
Documentation is written in MDX which is a combination of Markdown + JSX.
Each MDX file must end with .story.mdx
for it to be picked up by storybook.
All documentation exists within the src
directory of this repo. If it applies to the design system as a whole, it should live in the src/docs
directory. Component documentation is included inside each component directory.
Each MDX file should start with importing the Meta
component and passing a title
to it:
import { Meta } from "@storybook/addon-docs/blocks";
<Meta title="Arrow DS/Intro" />
### [ write markdown here ]
In this example, we're creating a new page called "Intro" that will be organized into the "Arrow DS" section in the storybook sidebar.
Check out MDX files in src/docs
or component directories for more examples.
For designers (or anyone else who isn't super familiar with git)
The easiest way to make changes to documentation is through the GitHub interface. Just navigate to the MDX file you'd like to change and click the pencil icon in the top right. After making your changes, you'll be prompted to open a pull request that will be reviewed by UXE. To create a brand new MDX file, just navigate (again, in GitHub) to the directory you want it to live and click the "Create new file" button in the top right.
If you'd prefer to create a fork and run Storybook locally, there are instructions on the wiki.
Publishing @aptible/design-kit (npm)
Pre-requisites:
Increment the version number
- Create a new branch in your fork with the updated version number.
- Open a PR to master and merge it.
Automatic:
- In Github, go to Releases and click the Draft New Release button.
- Tag the release "vX.X.X" and add release notes (links to Github pull-requests and issues are helpful).
- Click Publish.
- Travis CI will publish via npm automatically.
Manual:
- Navigate to the tip of the master branch
- Verify the version has been incremented:
- Check that
package.json
that reflects an incremented version number. Compare against the current package in npm - If the version is NOT incremented, please introduce a standalone commit to
master
with the increment before proceeding. (See pre-requisites)
- Check that
- Verify that the commit has been tagged with the new version number
- Check that the version number in
package.json
matches the latest tag in this list. The commit shown with the tag should be the same commit you are currently at. - If the correct tag is NOT applied, fix that before proceeding
- Check that the version number in
- Run
npm publish