Skip to content

Latest commit

 

History

History

README.md

Development

For contributors. Covers workflow, testing, CI, and the recipe for adding a new capability.

What's here

At a glance

git clone https://github.com/amiwrpremium/macontrol.git
cd macontrol
make lint test            # check before committing
git switch -c feat/my-thing
# … make changes …
git commit -am "feat(scope): one-line summary"
git push -u origin feat/my-thing
gh pr create

The shape of contributions

Type Example Where it goes
Bug fix in domain layer wifi parser misses an SSID format internal/domain/<pkg>/ + test
New button on existing category bt:rename to rename a paired device keyboard + handler + (maybe) flow + test
New category 🎵 Music for /music controls full 6-file recipe
New CLI subcommand macontrol export-config cmd/macontrol/<file>.go
Docs improvement typo, clarification edit docs/**/*.md
Build/CI tweak new lint rule, new workflow .github/, .golangci.yml, etc.

The rule of thumb: small, focused PRs land faster. A 50-line PR that does one thing is easier to review than a 500-line PR that does five.

Required reading before contributing

  1. Contributing — read first.
  2. Conventional Commits — required for PR titles.
  3. Architecture → Project layout — find your way around.
  4. Architecture → Design decisions — understand the constraints before proposing changes.

For specific feature work: