# Install sourcery with Homebrew, Nix

Meta-programming for Swift, stop writing boilerplate code. Version 2.3.0 via Homebrew; verified from local package data. Also installable with nix: nix profile install nixpkgs#sourcery.

## Install

```sh
sudo av install brew:sourcery
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install sourcery
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#sourcery
```

  Evidence: nixpkgs package indexes: pkgs/by-name/so/sourcery/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:sourcery
- **Package manager:** Homebrew
- **Version:** 2.3.0
- **Source summary:** Meta-programming for Swift, stop writing boilerplate code
- **Homepage:** <https://github.com/krzysztofzablocki/Sourcery>
- **Repository:** <https://github.com/krzysztofzablocki/Sourcery>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- sourcery (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 2.3.0
## Project history and usage

Sourcery is a Swift command-line code generator for reducing repetitive source code through templates and annotations. In package-manager culture it is most visible as a developer automation tool installed by Homebrew, CocoaPods, Mint, Swift Package Manager plugins, and pre-commit.

### Project history

The GitHub repository was created in December 2016 and describes Sourcery as a Swift code generator built on Apple's SwiftSyntax. The project presents its core purpose as extending Swift's language abstractions so teams can generate boilerplate automatically.

The README documents Sourcery as both a standalone command-line executable and an integrated build-tool option. It supports direct binary downloads, Homebrew, CocoaPods, Mint, Swift Package Manager plugin use, and source builds.

### Adoption history

The official README states that Sourcery is used in more than 40,000 iOS and macOS projects and names Airbnb, Bumble, and The New York Times as example users. The project also claims that broad community adoption helped influence Apple's later derived Equality and automatic Codable conformance work.

For package users, Sourcery became a familiar Swift ecosystem utility because it can be installed through several package channels while still producing ordinary generated Swift files that fit into Xcode and CI workflows.

### How it is used

Typical CLI usage runs `sourcery --sources <path> --templates <path> --output <path>`, or places options in a `.sourcery.yml` file. The README highlights common templates for equality, hashing, enum cases, mocks and stubs, LinuxMain, decorators, Codable support, and property diffing.

SwiftPM plugin usage is documented separately from the standalone executable: users add Sourcery as a package dependency, place `.sourcery.yml` near the target sources, and run the package plugin with write access enabled.

### Why package nerds care

Sourcery matters to package nerds because it sits at the intersection of source generation, build reproducibility, and Swift package distribution. A formula or package gives teams the same generator binary locally and in CI, making generated-code diffs predictable.

Its presence across Homebrew, CocoaPods, Mint, SwiftPM, and pre-commit also makes it a useful example of a CLI that escaped a single package ecosystem and became part of routine iOS and macOS project automation.

### Timeline

- 2016: GitHub repository created.
- 2017: Early public discussion and tutorials helped popularize Sourcery in Swift projects.
- 2022: README documents Swift Package command plugin support from package version 1.8.3.
- 2026: Official README still describes active community maintenance and broad project usage.

### Related projects

- SwiftSyntax provides the parsing foundation named by the README.
- Stencil templates are part of Sourcery's template workflow.
- CocoaPods, Mint, Homebrew, Swift Package Manager, and pre-commit are documented installation or integration surfaces.

### Sources

- <https://api.github.com/repos/krzysztofzablocki/Sourcery>
- <https://github.com/krzysztofzablocki/Sourcery#readme>
- <https://krzysztofzablocki.github.io/Sourcery/>
- source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: .sourcery.yml
## Other Package-Manager Records

- Nix - sourcery: normalized package name match | nixpkgs package indexes: pkgs/by-name/so/sourcery/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/sourcery.yml](https://github.com/mxcl/pkgdb/blob/main/combined/sourcery.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated configuration and credential file locations
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
