Project

Contributing

Set up rpgjs-patches, validate a change, and contribute through the protected workflow.

Local workflow

mise install
pnpm install --frozen-lockfile
pnpm verify
pnpm docs:build

pnpm verify is the library gate: Biome, Markdown linting, strict TypeScript 7, coverage, the dual ESM/CommonJS build, publint, Are The Types Wrong, a packed-tarball content check and a clean-consumer install against npmjs for each supported CanvasEngine release. pnpm docs:build validates and renders the Sourcey site.

Branch from main, make a focused Conventional Commit, open a pull request, and keep the branch current by merging main into it when necessary. The protected path uses automated checks rather than a routine human approval; merge commits preserve the constituent history. Do not hand-edit versions or CHANGELOG.md: Release Please owns them.

A new patch needs a scenario in tests/support/scenarios.ts that reproduces the defect on the real CanvasEngine class, and a matrix test that shows it failing without the patch. Read the repository contribution guide and agent instructions first.