Contributing
Contribute focused changes with tests, clear documentation, stable events, and clean package responsibilities.
Development workflow
Use the Node version in .nvmrc, install repository dependencies, add tests for exported behavior, and run the full repository check before requesting review.
corepack enable
pnpm install --frozen-lockfile
pnpm check
pnpm test:browser:install
pnpm test:browserHow this code works
- 01Enable the package manager
Corepack selects the pnpm version declared by the repository.
- 02Install dependencies
pnpm restores the exact workspace dependency graph from the lockfile.
- 03Run repository checks
pnpm check covers formatting, lint, types, package builds, unit behavior, and rendered documentation.
- 04Install browser engines
Playwright uses pinned Chromium, Firefox, and WebKit binaries for repeatable fixtures.
- 05Run browser checks
pnpm test:browser checks keyboard behavior, focus, structure, and browser updates.
Review expectations
Keep core independent of browsers, DOM independent of React and AI frameworks, and adapters small. Never claim that an automated transcript or page update proves what a screen reader spoke.
- Every exported API requires tests and documentation.
- Every owned timer and subscription must be disposed.
- All queues and tracked identities remain bounded.
- Security reports follow SECURITY.md rather than public issues.