Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CODESTYLE.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ These apply repo-wide, in every directory:

1. **Markdown**: keep `.md` files clean under a standard markdownlint ruleset, with `MD013` (line-length) treated as disabled - long prose lines are intentional here (one logical paragraph per line). Fix violations at the source rather than disabling rules wholesale.
2. **Spelling**: US English throughout (the repo-wide convention - see [AGENTS.md](./AGENTS.md)). Project-specific terms (`aiopurpleair`, `PurpleAir`, `aiohttp`, `pydantic`, `syrupy`, `NBGV`) are correct, not misspellings.
3. **Spelling CI scope**: The enforced CI spell-check gate covers **`README.md` and `HISTORY.md` only** - these are the files every repo visitor sees, so they must be clean. It is deliberately **not** all `**/*.md`: repos carry many markdown files full of technical terms, and gating every one of them would mean endlessly padding `cspell.json` just to keep CI green. Broad, live spell-checking across any file (source, markdown, text) is the **cspell editor extension's** job, so typos still surface to whoever is editing. A repo owner **may** widen their own CI file list, but the template ships README + HISTORY as the default; keep every surface that runs cspell - the CI workflow and any local VS Code task or one-liner the repo has - on the same file list. The list is explicit (not a glob), so a repo that ships no `HISTORY.md` (e.g. one with no changelog) must drop it from all three surfaces and gate on `README.md` alone - cspell errors on a listed file that does not exist. Markdown *linting* (item 1) stays repo-wide `**/*.md` - it does not choke on technical terms.

## Python

Expand Down