fuel-ui
fuel-ui copied to clipboard
Fuel design system
⚡️ Fuel UI
📝 Table of Content
- 🙋🏻 Getting Started
- 📦 Install
- 🛠 Tools
- 💪🏻 Contributing
- 📜 License
🙋🏻 Getting Started
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.
📦 Install
- Make sure you have the latest stable version of Node. Check out Configuring Node and NVM to make sure
- Clone the repository down locally.
cdinto the project and runpnpm installto install all project dependencies.- Run
pnpm buildto build the peer dependencies
🛠 Tools
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.
💪🏻 Contributing
Feel like contributing? That's awesome! We have a contributing guide to help guide you.
📜 License
The primary license for this repo is Apache 2.0, see LICENSE.