You'll need the Node.js version pinned in .nvmrc and pnpm, which Corepack provides:
nvm install && nvm use
corepack enable
pnpm installThen build, picking one of:
pnpm run build # TypeScript only: enough for most work on the Node.js tooling
pnpm run bootstrap # Also builds native artifacts: needs the Android NDK and/or Apple toolchains, and takes a whileUse pnpm run dev to rebuild TypeScript on change.
pnpm --filter weak-node-api run prebuild:prepare # Generates sources that linting needs
pnpm run lint
pnpm run prettier:check
pnpm run depcheck
pnpm testpnpm test needs a prior pnpm run bootstrap. While iterating, run a single package's tests instead, for example pnpm --filter cmake-rn run test.
If your change affects a published package, add a changeset with pnpm changeset.
Some CI jobs only run when the pull request has a matching label (Host 🏡, Apple 🍎, Android 🤖, MacOS 💻, Ferric 🦀 or weak-node-api). Labels added after a pull request is opened take effect on the next push.
Learn more about the project in the README and in "how it works".