Inside this monorepo you'll find all UI related projects from some of our projects and also packages that we're using to build them:
📦 fuel-ui // root
┣ 📂 .github // git related files
┣ 📂 .vscode // vscode settings
┃
┣ 📂 common // common packages used across monorepo
┃ ┗ 📂 config // project containing some monorepo tools configurations
┃ ┗ 📂 test-utils // package used for testing (patch on @testing-library/react)
┃
┣ 📂 design-system // design system related packages
┃ ┗ 📂 css // contain our theme/tokens definitions
┃ ┗ 📂 react // ui related react components
┃ ┗ 📂 tokens // ui tokens creation scripts (colors, fonts, spaces, themes...)
All this two folders (common
, design-system
) are configured using PNPM workspaces.
- Make sure you have the latest stable version of Node. Check out Configuring Node and NVM to make sure
- Clone the repository down locally.
cd
into the project and runpnpm install
to install all project dependencies.- Run
pnpm build
to build the peer dependencies
As you can see, we're using a monorepo structure inside this repository. To accomplish a good dev workflow and be able to have good code patterns across all packages we have some global tools installed:
Name | Description |
---|---|
PNPM | Package Manager |
Turborepo | Monorepo management |
TSUP | Build Typescript libs using ESbuild |
ESLint | Lint Javascript and Typescript files |
Jest | Test runner |
Testing Library | Testing library |
Prettier | Code formatting |
Husky | Git hooks |
Lint Staged | Git staged files linter |
If you're stucked with some issue or you don't know any of these tools, we really encourage you to check their websites and read more about them inside the documentation before open an issue or get in touch with some of our contributors.
Feel like contributing? That's awesome! We have a contributing guide to help guide you.
The primary license for this repo is Apache 2.0
, see LICENSE
.