This repository is a Turborepo monorepo managed with pnpm.
- NixOs This codebase uses Nix to create a reproducible development environment. https://nixos.org/download/
-
Install dependencies:
nix develop
This will create an isolated development environment. Run project commands within the nix shell.
-
Run builds:
turbo build
This will run the
build
pipeline for all packages and apps using Turborepo. -
Run linting:
turbo lint
Husky will automatically format files on commit. Run manually on staged files with
pnpm lint-staged
, orpnpm prettier --write .
to format all. -
Run tests:
turbo test
- Place new packages in the
packages/
directory. - Place new apps in the
apps/
directory. - Each package or app should have its own
package.json
.
turbo build
— Run the build pipeline across the monorepoturbo lint
— Run linting across the monorepoturbo test
— Run tests across the monorepo
For more, see the Turborepo docs and pnpm docs.
pnpm install <X> --filter @valence-protocol/domain-clients-core
pnpm install <X> --filter @valence-protocol/domain-clients-react
turbo build --filter @valence-protocol/domain-clients-core
turbo build --filter @valence-protocol/domain-clients-react
Start apps in development mode.
turbo dev
turbo dev --filter @valence-protocol/domain-clients-example