Component library for the Design System
This project uses pnpm package manager. To setup your environment make sure you have nvm-windows or nvm-sh installed. And that's it. Run the following instructions:
With nvm-sh on linux or wsl:
# use the project Node version
nvm useWith nvm-windows on windows:
# use the project Node version
nvm use $(Get-Content .nvmrc)If node vX is not installed run:
nvm install $(Get-Content .nvmrc)
nvm use newestOnce node is setup, run the following:
# Enable corepack to let it identify and install the required package manager version
corepack enable
# install dependencies
pnpm install
# start the Storybook local web server
pnpm devThis repository uses conventional commits. Each commit messages must be structured as follows:
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
This project is using semantic-release to generate the changelog and bump the version automatically based on the git history. To create a release follow the How to release documentation.
Update of dependencies should be done as often as possible.
# Updates all dependencies, adhering to ranges specified in package.json
pnpm updateFor a major update of a specific dependency, outside ranges allowed in package.json, it should be done preferably in a dedicated task with careful testing.
To update the version of node used by the project, change it in the .nvmrc file.
Careful! CI build on Jenkins does not use nvm tool.
Make sure that jenkins provide the version of node you intend to use and update the jenkinsfile to change the version of tools { nodejs "nodejs-X.X.X" }.
If Jenkins does not support your required version of node, please open a ticket to the ISS Desktop Service.
To update the version of pnpm that the project should be using, please run the following command:
# Replace <version> by * for latest, 9 for latest version 9, or 9.0.2 to fix a specific version
corepack use pnpm@<version>This command will also update the packageManager field in the package.json file. Allowing other contributors to be aligned.
Refer to the following links to learn more about the way of working in this repository: