Running locally
Prerequisites
Node.js >20.x
NPM >10.x
Installation
Install dependencies:
npm install
WARNING
Only use npm
to install dependencies. pnpm
and yarn
will create their own lockfiles and will cause issues when maintaining the project.
Running the project
The project use TurboRepo to manage the monorepo. Make sure to run everything from the root of the project.
Dev mode
Start the dev server:
npm run dev
This will spin up multiple processes at the same time depending on the package or app own configuration. In general, packages will start the test runner in watch mode and the docs app will start a dev server. For example, the apps/example
will start a test server on localhost:5173
.
Testing
Run all tests:
npm run test
This will run all tests in packages that have tests configured. It will also report test coverage. Currently, all projects use Vitest as the test runner.
Building
Build all packages:
npm run build
This will build all packages and apps.
Linting
Lint all packages:
npm run lint
This will lint all packages and apps. Currently, all projects use ESLint as the linter.
Installing new dependencies
When installing new dependencies, consider the following:
- Do I need this dependency in all packages?
- If yes, install it in the root of the project using
npm install <package>
. - If no, install it in the package that needs it using
npm install <package> -w <package-name>
.
- If yes, install it in the root of the project using
- Is it a dev dependency?
- If no, make sure to separately install into the
packages/sdk/package.json
to make sure that the dependency is not included in the bundle as NPM will handle the dependency.
- If no, make sure to separately install into the