pkg.soopen package index

brew / rank 592

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

Additional install commands

macOS

Homebrewverified · 100%
brew install sourcery

local Homebrew formula metadata

Linux

Nixverified · 92%
nix profile install nixpkgs#sourcery

nixpkgs package indexes · pkgs/by-name/so/sourcery/package.nix · source: api.github.com

overview

Package summary

Meta-programming for Swift, stop writing boilerplate code

Commands and aliases

  • sourcery

history

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.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew bottle metadata was recorded.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

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

Config paths the tool may read or write during local use.

Unix
.sourcery.yml

executables

Installed executables

CommandKindExposureNote
sourceryexecutableindexed executableDiscovered from the local executable index.

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-08-03
manager version2.3.0
manager updated
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:sourcery
Version2.3.0
Package managerHomebrew
Homepagehttps://github.com/krzysztofzablocki/Sourcery
Repositoryhttps://github.com/krzysztofzablocki/Sourcery
Bottlenot recorded
Servicenone declared

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

sourcery

nix profile install nixpkgs#sourcery
  • normalized package name match
  • Matched by: Sourcery
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/so/sourcery/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

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