@claudebernard/design-system
v2.29.0
Published
[](https://resip.gitlab-pages.cegedim-sante.net/pim/web-components/design-system/?path=/docs/introduction-getting-started--docs&globals=customTheme:BCB)
Maintainers
Keywords
Readme
Design System
This project is the design system used on Claude Bernard tools
How to install it via NPM ?
Install the package
npm install @claudebernard/design-systemImport components
There are two ways to import components:
- You can import all components at once, this means you will import all design system in your project.
import '@claudebernard/design-system';- You can import only the components you need, example:
import '@claudebernard/design-system/button';Then you can use components in your project
Import CSS utilities
The design system provides a set of CSS utility classes (similar to Bootstrap) for spacing, display, flexbox, text, and gap. Import the standalone stylesheet:
import '@claudebernard/design-system/style/utilities.css';The utilities are also automatically available inside design system components.
Development
Development server
Run npm run storybook to run Storybook. Navigate to http://localhost:6006/. The app will automatically reload if you change any of the source files.
Lint project
Run npm run lint to run Eslint.
How to create a new component ?
- Create a new folder in
src/componentswith the name of your component - Create three files:
src/components/your-component/your-component.ts,src/components/your-component/your-component.spec.tsandsrc/components/your-component/your-component.scssin this folder - Create a new file
src/components/your-component/index.tsin this folder that will export your component - Add export of your component in
src/index.tsto allow import unique component - Create a new entrypoint of your component in
vite.config.ts - Add export of your component in
package.jsonto allow import unique component
How to create a new story ?
- Create a new file
src/components/your-component/your-component.stories.tswith the stories of your component, and it will be automatically imported in Storybook
How to add new icon ?
- Add your svg icon in
src/icons/svgfolder - Complete the
src/icons/index.tsfile with the new icon information
How to add new theme ?
- Add your new theme in
src/themesfolder with the name of your theme (e.g.src/themes/${your-theme-name}.scss) - Add your theme in
package.jsonto allow import unique theme (e.g."./style/${your-theme-name}": "./dist/style/${your-theme-name}.css") - Add your theme in
vite.config.tsto allow vite to build your theme - Add your theme in storybook
preview.jsto allow storybook to use your theme
Versioning, releasing, publishing
Versioning and releasing is managed in CI with semantic-release.
To make a release, merge your commits on master branch.
