This is a set of react components some of which are based on SEB's bootstrap. The plan for this project is to increase and improve components for future usage.
- The package name:
@sebgroup/react-components
- The package documentation: Documentation
- The package sourcecode: Github Source Code
- NPM package: @sebgroup/react-components
This version of components has been developed with:
- React
- Typescript
- SEB Bootstrap
You should be able to install the NPM package.
npm install @sebgroup/react-components --save
This project is based on SEB Bootstrap which includes fonts
, colors
and variables
, to make sure everything works fine, please install these dependencies on your project:
npm install @sebgroup/bootstrap --save
Then make sure you add the Main SEB bootstrap package in your main style.SCSS or index.ts as follows
@import '~@sebgroup/bootstrap/scss/bootstrap';
.
For Visual Studio Code
users, please install the recommended plugins
This project uses prettier
for a more consistent (less annoying) coding. We are using 4 different builds for this project. The src
folder is where the actual components exist with all their necessary dependencies. and develop
folder is where we develop and test those components.
- Development:
npm start
- Check formatting rules, Compile components and Create Docs folder:
npm run build
- Build and create the Documentation pages only:
npm run docs
- To run the unit tests, run:
npm test
- To run a unit test for a specific component you have to pass the name of the component, example:
npm test Button
. It can also be chained with multiple specific components, e.g.npm test Button RadioGroup
- To commit your changes run:
npm run commit
and follow the steps
For performance benefits we are not combining all the components into single Index rather they are chunked into their subpackage. Therefore, to use a component, you need to import the Component
submodule from the dist
folder, in whichever Class you want to use it. Here is a sample of how to import a Button
component in a page.
import { Button } from "@sebgroup/react-components";
const Component = () => {
const onClick = (e) => {
console.log("Im Clicked");
}
return (
<div>
<Button onClick={onClick}>Button label</Button>
</div>
);
}
export default Component;