Skip to content
Self-hosted catch-all trashmail solution - Vomi mail
JavaScript Python HTML TSQL Dockerfile CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github readme: Recorded & added GIF Sep 29, 2019
api Web: Mail component OK Sep 29, 2019
smtp API: uploading & serving attachments Sep 28, 2019
web Web: showing html email without pictures Sep 29, 2019
.gitignore Web: Working action bar Sep 29, 2019
.prettierrc Prettier rules Sep 28, 2019 readme: Recorded & added GIF Sep 29, 2019 Docker: fixing production compose 🐳 Sep 29, 2019
docker-compose.yml Docker: fixing production compose 🐳 Sep 29, 2019


GitHub demo as a GIF


I needed a dockerized, modern, and open source trash mail solution.


Four containers:

  • MariaDB,
  • SMTP Server written in Node.JS,
  • API written in Node.JS,
  • Front-end written in React,

How to use

  • Add a MX record pointing to your domain
  • Clone this project on your server
  • Edit the docker-compose.yml file to suit your needs
  • Run docker-compose up -d
  • Done!


  • You should bind vomail-smtp to port 25
  • You should change the MYSQL_ROOT_PASSWORD environment variable
  • You should change the API_AUTH_TOKEN and the SMTP_AUTH_TOKEN environment variables. They MUST match.


  • Dockerized 🐳,
  • Catch & store all incoming mails,
  • REST API to script with,
  • Get mail
  • Delete mail
  • Mark as read/unread
  • Nice Web UI,
  • Choose random email/get your own,
  • Attachments,
  • Share-able links,


  • Delete attachments when deleting mail,
You can’t perform that action at this time.