Web and API based SMTP testing
Find a file
2014-12-24 19:25:02 +00:00
docs Clean up flags 2014-12-24 19:25:02 +00:00
.travis.yml Update .travis.yml and README (doesn't compile on Go 1.1) 2014-12-02 22:09:35 +00:00
Dockerfile Fix Dockerfile 2014-11-23 15:56:18 +00:00
LICENSE.md Change release output path, add missing LICENSE file 2014-10-29 18:55:17 +00:00
main.go Clean up flags 2014-12-24 19:25:02 +00:00
Makefile Move stuff around 2014-12-24 18:34:24 +00:00
README.md Move stuff around 2014-12-24 18:34:24 +00:00

MailHog Download GoDoc Build Status

Inspired by MailCatcher, easier to install.

MailHog is a rewritten version of MailHog, which was born out of M3MTA.

Go was chosen for portability - MailHog runs without installation on multiple platforms.

Requirements

  • None!

Getting started

  1. Either:
  1. Configure MailHog, or use the default settings:
  • the SMTP server will start on port 1025
  • the HTTP server will start on port 8025
  • in-memory message storage will be used.

Features

  • ESMTP server implementing RFC5321
  • Support for SMTP AUTH (RFC4954) and PIPELINING (RFC2920)
  • Web interface to view messages (plain text, HTML or source)
    • Supports RFC2047 encoded headers
  • Real-time updates using EventSource
  • Release messages to real SMTP servers
  • Chaos Monkey for failure testing
  • HTTP API to list, retrieve and delete messages
  • Multipart MIME support
  • Download individual MIME parts
  • In-memory message storage
  • MongoDB storage for message persistence
  • Lightweight and portable
  • No installation required

Screenshot of MailHog web interface

Contributing

Clone this repository to $GOPATH/src/github.com/mailhog/MailHog and type make deps.

See the Building MailHog guide.

Requires Go 1.2+ to build.

Run tests using make test or goconvey.

If you make any changes, run go fmt ./... before submitting a pull request.

Licence

Copyright ©‎ 2014, Ian Kent (http://www.iankent.eu).

Released under MIT license, see LICENSE for details.