Skip to Content
Contributing

Contributing

Contributions are welcome. Brewwery is MIT-licensed and developed in public.

Getting started

  1. Fork brewwery/brewwery  on GitHub.
  2. Clone your fork and build it:
    swift build swift run Brewwery swift test
  3. Read the Development guide and Architecture overview.

Guidelines

  • Keep changes focused — one change per pull request, easy to review
  • macOS first — use native SwiftUI and AppKit patterns and follow the existing design system
  • Typed commands only — Homebrew runs through HomebrewCommand; never add a shell or free-form arguments, and validate every dynamic value in HomebrewIdentifier
  • Confirm changes — anything that modifies Homebrew needs an explicit confirmation that shows the command
  • Test without Homebrew — use the scripted brew stand-in; only BrewweryLiveTests may touch a real installation
  • Accessible by default — icon-only buttons use IconButton so they have a name
  • Stay local — no telemetry, authentication, cloud sync, or monetization

Pull requests

  • Describe what changed and why, with screenshots for UI changes
  • Make sure swift build and swift test pass
  • Try the change against your own Homebrew with swift run Brewwery
  • Update CHANGELOG.md and these docs when behavior changes

Documentation

This site lives in brewwery/docs . Fixes and clarifications are just as welcome as code.

Reporting issues

Use GitHub Issues :

  • Bugs — steps to reproduce, what you expected, and the report from Settings → About → Copy diagnostics
  • Feature requests — the problem you want to solve and how you imagine it working

Report security vulnerabilities privately through the security policy .

Code of conduct

Be respectful and constructive.

Last updated on