@zappyrent/hundop
TypeScript icon, indicating that this package has built-in type declarations

1.36.1 • Public • Published

Hundop

Hundop is Zappyrent's design system component library, based upon React and Styled Components. Components are developed and tested locally using Storybook and then published on Zappyrent's npm registry.

Technologies

Whirl does type checking at build time during development and also lints and prettifies code in pre-commit stage thanks to Husky. It is strongly suggested to use Visual Studio Code and its Prettier/Eslint plugins.

Getting started

#clone the project
git clone git@gitlab.com:zappyrent-group/hundop.git

#Install all dependencies
yarn install

#Prepare husky pre-commit script for linting on pre-commit
yarn prepare

Now you should be able to start, just launch:

yarn build

to build the existing components; or launch Storybook to work on local components:

yarn storybook

Creating new components

Just use the following command:

yarn generate

and follow the configuration steps. Plop will scaffold the component folder and its necessary files for you.

Publishing design system with Chromatic

Chromatic is Storybook's recommended method to publish design systems in a publicly available repository, allowing for review by the team in a panel similar to that used by the development team, and can be used for demonstration purposes. The following script will build Storybook, run tests, and deploy to a publicly accessible link inside the Chromatic repository [dashboard] https://www.chromatic.com/builds?appId=61a9d0fb658053003a6c3313:

yarn chromatic

View the latest Storybook repo in the Chromatic repository dashboard by clicking on "Builds" and "View Storybook." Each build will create a unique link, allowing for comparison between build versions.

Adding dependencies

Please note that we're developing a library that will be consumed by other apps here; so we should make sure that some libraries (such as react and react-dom) are not included twice in the consumer app bundle. To do this, it is good to insert the shared libraries in the peer dependencies of the package.json. Rollup will then take care of avoiding duplication through its plugin Rollup Plugin Peer Deps External.

Troubleshooting

I am experiencing problem while committing my changes

If you are using nvm or other node version managers, you may have problems finishing the commit. Please have a loook at Husky's docs about this and similar problems. In particular, for the aforementioned nvm problem, you should create a .huskyrc file in your os home and paste the following contents into it:

# ~/.huskyrc
# This loads nvm.sh and sets the correct PATH before running hook
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

Consuming Hundop in your app

To use this module in a project, just launch the following command on your terminal:

yarn add @zappyrent/hundop

Readme

Keywords

none

Package Sidebar

Install

npm i @zappyrent/hundop

Weekly Downloads

4

Version

1.36.1

License

MIT

Unpacked Size

2.28 MB

Total Files

442

Last publish

Collaborators

  • zappyrent