A design system powered by React & Typescript, supported by Storybook & React-testing-library.
SCSS
is chosen as the styling solution for this UI librarynormalize.css
is used to make browsers render all elements more consistently- SCSS variables are defined for granular style control and reusability
- Typescript is used to provide strong typing to the UI library
- Unit tests are written with the help of
React Testing Library
- Create a
tsconfig.build.json
to compile.tsx
files for build node-sass
is used to compile SCSS to CSS for buildnpm link
is used to link the UI library to a project for better local developmentnpm link
is also used to addressInvalid Hook Call Warning
- Move React and React-dom packages to
peerDependencies
so user would not install duplicate React package
In the project directory, you can run:
Install project dependencies.
Note: If you run into error during yarn install
, please make sure you downgrade your node
version to v14
as node-sass
in this project does not support the latest version of node
.
Build the app for production in dist
folder.
Convert SASS to CSS for production in dist
folder.
Convert Typescript to Javascript for production in dist
folder.
Build storybook stories to webpages
Clear up previous build output.
Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.
Launches the test runner in the interactive watch mode.
Launches the test runner in CI mode.
Launches Storybook at http://localhost:9009.
Lint the codebase using ESLint.
Format the codebase using Prettier.