Contributing
April 19, 2026 · View on GitHub
Thank you for helping build Commentray.
Terminology: Commentray is the tool and packages in this repo. commentray (lowercase) is also the paired Markdown under .commentray/source/ beside a source file.
Principles
We follow the spirit of the C4-style chumak contributing guide. We do not claim full C4 compliance; conventions grow with the project.
Before you open a PR
- For very large changes, open an issue first unless the direction is already agreed in public discussion (e.g. an existing issue).
- Keep PRs focused; prefer several small PRs over one sweeping refactor.
- Before review, run:
npm run quality:gate— same script path as theci.ymlquickjob (format, ESLint, shellcheck, dupes, typecheck, unit tests). Cypress + static site runs ase2e-staticafter that; see GitHub CI (Cypress static site) indocs/development.md. - Hands-on detail (tests, lint, deps, format, coverage, extension workflows, binaries, Pages):
docs/development.md. That file is the operational source of truth; this document is only the contract above.
Repository norms
- npm and committed
package-lock.jsonare canonical. Yarn is optional (.yarnrc.yml); if you use it, resolve lockfile policy in the PR description. - Automate sequences: if a task needs more than two shell commands in order, add
scripts/and annpm run …entry — do not rely on long copy-paste blocks in markdown.
Security
Report vulnerabilities as described in SECURITY.md (private advisory, not a public issue).