React components for Help Scout's Design System
Check out HSDS's Storybook: https://hsds.helpscout.com/.
npm install @helpscout/hsds-react --save
After cloning this repo down, run:
npm install
Once everything is installed, run:
npm start
Check out HSDS's Storybook at http://localhost:8900/ in your browser!
As of v2.18.0, the svg
set is opt-in. This was done to reduce the compiled bundle size. To load the svg
icons, add the appropriate adapter to your app.
It is recommended that the adapter be loaded somewhere within your main entry point (e.g. src/index.js
).
// src/index.js
// For a lighter-weight svg set for embeddables
import '@helpscout/hsds-react/adapters/embed'
// For the complete svg set
import '@helpscout/hsds-react/adapters/app'
Note: This loads all the svg
images, including Icon
and Illo
.
To run Jest in watch mode, run:
npm run dev
To execute all the tests (with Coverage reporting), run:
npm run test
To merge a PR when the release is completed, please do a Squash and merge from the PR page. It will keep the history clean in the main branch
We tend to do a release with only one PR at the time, if possible
You can learn more about releasing main or releasing a beta build
To publish and release a new version of HSDS, run the following command:
npm run release
You'll be presented with a CLI prompt with options. Pick the one you want, and that's it! The script will take care of the rest (from testing to publishing).
To deploy the Storybook, run the following command:
npm run deploy
- HSDS documentation: https://hsds.helpscout.com/
- Developer in-depth documentation: dev docs
- Also, check out our videos for more learning resources
On Nov 8, 2018, we rebranded Blue to HSDS: React 🎉.
The original Blue library will still exist on npm, and is still installable via:
npm install @helpscout/blue --save
However, continued development of this component library will continue under HSDS: React, which is installable via:
npm install @helpscout/hsds-react --save
A big thanks to all the folks involved in Blue! Blue will always be your boy 💙 .