Contributing
Development Setup
bash
npm install
npm run lint
npm test
npm run buildBranch Strategy
mainis the release branch- Feature work should be small and reviewable
- Keep commits scoped to one concern
- Published semver tags are immutable; release follow-up fixes go to
mainand ship in the next version
Coding Standards
- TypeScript strict mode compatibility
- No secret logging
- Prefer typed errors and explicit guards
- Keep UI responsive on small screens
Before Opening PR
- Run lint, tests, and build.
- Confirm no debug artifacts are committed.
- Update docs and changelog if user-facing behavior changed.
- Include manual test notes for iOS-helper or desktop flows.
Docs Publishing
The repository already includes a GitHub Pages deployment workflow at .github/workflows/docs.yml.
To enable it:
- Open repository Settings.
- Go to Pages.
- Set
Build and deployment > SourcetoGitHub Actions. - Push to
mainand verify theDocsworkflow succeeds.
Local docs validation commands:
bash
npm run docs:build
npm run docs:previewRelease Discipline
- Cut release tags only from a clean local
mainthat matchesorigin/main. - Treat
v*tags as publish records, not moving targets. - If GitHub Actions or Pages needs a post-release fix, merge it to
mainand include it in the next semver release rather than force-updating the existing tag.