# Install mailcatcher with Homebrew, Nix

Catches mail and serves it through a dream. Version 0.10.0 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:mailcatcher
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install mailcatcher
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#mailcatcher
```

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

## Package facts

- **Package key:** brew:mailcatcher
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/mailcatcher>
- **Version:** 0.10.0
- **Source summary:** Catches mail and serves it through a dream
- **Homepage:** <https://mailcatcher.me>
- **Repository:** <https://github.com/sj26/mailcatcher>
- **Upstream docs:** <https://github.com/sj26/mailcatcher#readme>
- **License:** MIT
- **Source archive:** <https://github.com/sj26/mailcatcher/archive/refs/tags/v0.10.0.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- catchmail (cli)
- mailcatcher (cli)
- catchmail (alias)
- mailcatcher (alias)

## Dependencies

- libyaml
- openssl@3
- ruby

## Build dependencies

- pkgconf

## Uses from macOS

- libedit
- libffi
- sqlite

## Install behavior

- Post-install hook: not defined
- Service: declared
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 0.10.0
- Local data: ok
- Upstream repository: https://github.com/sj26/mailcatcher
- Upstream latest detected: v0.10.0 (current)
- info: No package-manager update timestamp was available.
## Project history and usage

MailCatcher is a Ruby-based development SMTP sink: it runs a local SMTP server, captures outgoing mail, and exposes the captured messages in a web interface. The official README's default flow is still the classic developer loop: install, run `mailcatcher`, point an app at SMTP port 1025, and inspect mail on HTTP port 1080.

### Project history

The GitHub repository was created in October 2010, and the README copyright line credits Samuel Cochran from 2010 onward. MailCatcher emerged in the Ruby/Rails era where developers often needed to test application mail without sending real messages to users.

The tool's feature set stayed intentionally narrow and packageable: capture all mail, show HTML/plain/source views, rewrite embedded assets for display, expose attachments, support a sendmail-like `catchmail` helper, and provide command-line flags for SMTP and HTTP bind addresses and ports. Later releases added Docker usage examples and a simple REST-style message API.

### Adoption history

MailCatcher became a well-known local mail-testing package across Ruby and web-development workflows. Official instructions cover Rails, PHP, Django, Docker, RVM, Bundler caveats, and direct RubyGems installation, showing adoption across more than Ruby-only projects.

Repository metadata shows thousands of GitHub stars and hundreds of forks. The input package-manager facts confirm Homebrew and Nix packaging, while the README recommends keeping MailCatcher out of application Gemfiles to avoid dependency conflicts, reinforcing its role as a separate developer tool.

### How it is used

The standard usage pattern is to run MailCatcher as a daemon or foreground process, configure the application under test to deliver mail to `smtp://127.0.0.1:1025`, and review the results at `http://127.0.0.1:1080/`. `catchmail` lets PHP and other sendmail-oriented software hand messages to the same capture service.

Package users care about its defaults: port 1025 for SMTP, port 1080 for HTTP, and command-line options rather than a project-specific config file. That makes it easy to install globally with a package manager and use across many local projects.

### Why package nerds care

MailCatcher is historically important because it made fake SMTP a one-command local service before containerized dev stacks were the default. It is small, memorable, and easy to script, which is exactly why it kept showing up in package managers.

Its packaging story also highlights a common Ruby tool issue: the README explicitly warns against putting MailCatcher in an app Gemfile because its dependencies can conflict with the application. Installing it as a system or user tool via RubyGems, Homebrew, Nix, or Docker keeps that boundary clean.

### Timeline

- 2010: Public GitHub repository created.
- 2016: Older v0.6.x GitHub releases published.
- 2021: v0.8.0 release published.
- 2022: v0.8.2 release published.
- 2023: v0.9.0 release published.
- 2024: v0.10.0 release published.

### Related projects

- MailCatcher is related to other local SMTP testing tools such as MailHog and Mailpit.
- It also fits alongside framework-specific mail preview tools, but differs by acting as an external SMTP server that any application can target.

### Sources

- <https://api.github.com/repos/sj26/mailcatcher>
- <https://api.github.com/repos/sj26/mailcatcher/releases>
- <https://github.com/sj26/mailcatcher>
- <https://mailcatcher.me/>
- source_facts.package-manager
- source_facts.repo


## Security Notes

formula declares a Homebrew service.

- **Geiger risk:** orange / medium
- formula declares a Homebrew service

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** mailcatcher
- **Version Scheme:** 0
- **Revision:** 2
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

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


## Related links

- [Package publisher tools](https://www.automicvault.com/pkg/package-publishers/) - Belongs to a package publishing or registry command family.
- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [openssl@3](https://www.automicvault.com/pkg/brew/openssl-3/) - Runtime dependency declared by Homebrew.
- [ruby](https://www.automicvault.com/pkg/brew/ruby/) - Runtime dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [mailpit](https://www.automicvault.com/pkg/brew/mailpit/) - Shares av.db curated category or tags: cli, developer-tools, email-testing, smtp.
- [anycable-go](https://www.automicvault.com/pkg/brew/anycable-go/) - Shares av.db curated category or tags: cli, developer-tools, ruby.
- [arelo](https://www.automicvault.com/pkg/brew/arelo/) - Shares av.db curated category or tags: cli, developer-tools, development.
- [bento](https://www.automicvault.com/pkg/brew/bento/) - Shares av.db curated category or tags: cli, developer-tools, development.
- [binutils](https://www.automicvault.com/pkg/brew/binutils/) - Shares av.db curated category or tags: cli, developer-tools, development.
- [brew-gem](https://www.automicvault.com/pkg/brew/brew-gem/) - Shares av.db curated category or tags: cli, developer-tools, ruby.
- [chruby](https://www.automicvault.com/pkg/brew/chruby/) - Shares av.db curated category or tags: cli, developer-tools, ruby.
- [cucumber-ruby](https://www.automicvault.com/pkg/brew/cucumber-ruby/) - Shares av.db curated category or tags: cli, developer-tools, ruby.
- [localstack](https://www.automicvault.com/pkg/brew/localstack/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, development, libyaml.
- [amber](https://www.automicvault.com/pkg/brew/amber/) - Local package facts share a topical domain. Shared terms: cli, developer, developer-tools, libyaml, openssl.

## Combined YAML source

View the package source record on GitHub. [combined/mailcatcher.yml](https://github.com/automic-vault/db/blob/main/combined/mailcatcher.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
