A fork of https://github.com/crosspoint-reader/crosspoint-reader
1# Development Workflow
2
3This page defines the expected local workflow before opening a pull request.
4
5## 1) Fork and create a focused branch
6
7- Fork the repository to your own GitHub account
8- Clone your fork locally and add the upstream repository if needed
9
10- Branch from `master`
11- Keep each PR focused on one fix or feature area
12
13## 2) Implement with scope in mind
14
15- Confirm your idea is in project scope: [SCOPE.md](../../SCOPE.md)
16- Prefer incremental changes over broad refactors
17
18## 3) Run local checks
19
20```sh
21./bin/clang-format-fix
22pio check --fail-on-defect low --fail-on-defect medium --fail-on-defect high
23pio run
24```
25
26CI enforces formatting, static analysis, and build checks.
27Use clang-format 21+ locally to match CI.
28If `clang-format` is missing or too old locally, see [Getting Started](./getting-started.md).
29
30## 4) Open the PR
31
32- Use a semantic title (example: `fix: avoid crash when opening malformed epub`)
33- Fill out `.github/PULL_REQUEST_TEMPLATE.md`
34- Describe the problem, approach, and any tradeoffs
35- Include reproduction and verification steps for bug fixes
36
37## 5) Review etiquette
38
39- Be explicit and concise in responses
40- Keep discussions technical and respectful
41- Assume good intent and focus on code-level feedback
42
43For community expectations, see [GOVERNANCE.md](../../GOVERNANCE.md).