Skip to content
Inspired by MailCatcher, based on M3MTA
Branch: master
Clone or download
Latest commit ad78601 Jun 24, 2014
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin Initial commit of MailHog Apr 8, 2014
lib Delete individual messages Apr 10, 2014
public Delete individual messages Apr 10, 2014
templates Delete individual messages Apr 10, 2014
LICENSE Update readme Jun 24, 2014
cpanfile Add missing dependency Apr 8, 2014


Inspired by MailCatcher, easier to install.

Based on Mojolicious, born out of M3MTA.

** No longer under development - see Go-MailHog **


Getting started

Install dependencies:

cpanm --installdeps .

Start MailHog:

./bin/mailhog daemon --listen http://*:3000

The port specified is the Mojolicious application port, which currently does very little but will become the web UI to MailHog.

SMTP server

The SMTP server will attempt to listen on port 25 by default.

All SMTP configuration is currently in lib/

Development and production mode

Like any other Mojolicious application, you can start MailHog using morbo or hypnotoad.

You can also use any existing Mojolicious plugins in MailHog.


  • Refactor to use Mojo::Base instead of Moose
  • Use Mojo::EventEmitter for SMTP interface
  • Add REST API for other applications and web UI
  • Build web UI to interact with MailHog (potentially AngularJS/Bootstrap?)
  • Add backend storage for message persistence (M3MTA backend?)


Fork and send a pull request!


Copyright ©‎ 2014, Ian Kent (

Released under MIT license, see LICENSE for details.

You can’t perform that action at this time.