Decathlon Design System libraries for web applications
Decathlon Design System is the framework that helps our ecosystem to design and develop consistent and quality experiences. For its Digital section, it is called Vitamin.
This repository hosts libraries for web applications.
In order to allow you to consume the elements of the Design System according to your product constraints, we give you the possibility of using the Vitamin web libraries with different technologies & levels of granularity with core packages developed and maintained by the Vitamin core team.
This package provides you with a complete CSS with a huge set of utility classes as it is generated with Tailwind CSS. Then it will be up to you to optimize for production by purging the CSS according to the classes used in your HTML:
@vtmn/css | README |
---|
These packages allow the consumption of elements with a higher level of granularity. You get only the styles you need and what you consume is Pure CSS without CSS Custom Properties, therefore IE 11 compatible:
For design tokens
@vtmn/css-design-tokens | README |
---|
For each component
@vtmn/css-alert | README | ||||
---|---|---|---|---|---|
@vtmn/css-badge | README | ||||
@vtmn/css-button | README | ||||
@vtmn/css-checkbox | README | ||||
@vtmn/css-link | README | ||||
@vtmn/css-loader | README | ||||
@vtmn/css-modal | README | ||||
@vtmn/css-popover | README | ||||
@vtmn/css-progressbar | README | ||||
@vtmn/css-radio-button | README | ||||
@vtmn/css-rating | README | ||||
@vtmn/css-select | README | ||||
@vtmn/css-skeleton | README | ||||
@vtmn/css-snackbar | README | ||||
@vtmn/css-text-input | README | ||||
@vtmn/css-toast | README | ||||
@vtmn/css-toggle | README | ||||
@vtmn/css-tooltip | README |
For utilities
@vtmn/css-utilities | README |
---|
This package provides you with a library of SVG icons that you can include in a handful of ways (SVGs, icon font, sprite, CSS, embedded):
@vtmn/icons | README |
---|
This package provides you with a library of Web Components (Custom Elements). So, you will be able to use custom <vtmn-**>
HTML tags directly in your markup:
@vtmn/web-components | README |
---|
In order to enhance your Developer eXperience, we give you the possibility to develop your components in React, Svelte and Vue based on our core packages just above. These libraries are developed and maintained by the community, the Vitamin core team will be there to review, and ensure the quality of your propositions, feel free to contribute!
This package provides you with a library of React components:
@vtmn/react | README |
---|
This package provides you with a library of Svelte Components:
@vtmn/svelte | README |
---|
This package provides you with a library of Vue components:
@vtmn/vue | README |
---|
One of the Decathlon Design System goals is to provide guidelines & components to gain in consistency, efficiency & accessibility. The best way to achieve this is together! That's why we are on GitHub. We would love contributions from the community (bug reports, feature requests, suggestions, Pull Requests, whatever you want!).
Yarn workspaces and nx are used to manage dependencies and build config across package. Lerna is used to manage versioning & publishing.
Run the following to setup your local dev environment:
# Install `yarn`, alternatives at https://yarnpkg.com/en/docs/install
brew install yarn
# Clone or fork `vitamin-web`
git clone [email protected]:Decathlon/vitamin-web.git # or your fork
cd vitamin-web
# install dependencies
yarn
# build all packages
yarn build
# start all showcases and build sources in watch mode & hot reload
yarn start
# or you can launch separately (recommended)
yarn start:css
yarn start:icons
yarn start:web-components
yarn start:react
yarn start:svelte
yarn start:vue
# test packages
yarn test
👉 See the contributing docs for more information about how to contribute.
Thank you to the contributors involved in these vitamin-web libraries (even before they were Open Source). 💙
Apache-2.0 © Decathlon