React Fluid Design System by ENGIE
DISCLAIMER
When installing the package via npm or importing it via CDN we recommend fixing the version with the exact package
version to avoid breaking change affecting your live website. With never-ending topics like Accessibility and BRAND
GUIDELINES we also have to include some minor breaking changes in some minor versions
e.g:
npm install --save @engie-group/fluid-design-system-react@VERSION
or
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@engie-group/fluid-design-tokens@VERSION/lib/css/tokens.css">
Quick Start
Install the package inside your application:
npm install --save @engie-group/fluid-design-system-react@2.0.0
If you use deprecated components you will need to use some styles exported by package @engie-group/fluid-4-deprecated
and install it.
Please refer to @engie-group/fluid-4-deprecated
README.md
for more information.
npm install --save @engie-group/fluid-4-deprecated
How to use
Font
In your html
<link href="https://fonts.googleapis.com/css?family=Material+Icons|Lato:300,400,700,900&display=swap"
rel="stylesheet"/>
Styles
Tokens from @engie-group/fluid-design-tokens
are needed in order for components to work.
You may need to import base.css
from @engie-group/fluid-design-system
which sets the correct font properties for you website
You may also need to import some tokens and styles from @engie-group/fluid-4-deprecated
if you still want to use some deprecated packages. They
can be imported in your html, JS, SASS or in some of your bundler config.
In your HTML
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@engie-group/fluid-design-tokens@5.0.0/lib/css/tokens.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@engie-group/fluid-design-system@5.0.0/lib/base.css">
If you use deprecated components
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@engie-group/fluid-4-deprecated/tokens/lib/css/tokens.css">
In your SASS/SCSS
@import "~@engie-group/fluid-design-tokens/lib/css/tokens.css"
@import "~@engie-group/fluid-design-system/lib/base.css"
If you use deprecated components
// Only if you use deprecated components and if not loaded elsewhere
@import "~@engie-group/fluid-4-deprecated/tokens/lib/css/tokens.css"
In JS
import '@engie-group/fluid-design-tokens/lib/css/tokens.css';
import '@engie-group/fluid-design-system/lib/base.css';
import {NJButton} from '@engie-group/fluid-design-system-react';
export default function App() {
return (
<NJButton label="My button"/>
);
}
Components
All components are exported in @engie-group/fluid-design-system-react
import {NJButton} from '@engie-group/fluid-design-system-react';
export default function App() {
return (
<NJButton label="My button"/>
);
}
How to Contribute new Components
- Create a component folder inside src/components:
src/components -
/ componentName -
/ ComponentName.tsx
/ test -
/ComponentName.test.tsx
- Update src/fluid-design-system-react.ts by adding component import/export
- Create a component folder inside fluid-doc-react package:
src/stories/componentName/ComponentName.stories.js
Components development state
You can check our state of development on
our Notion Components page