Skip to content
This repository has been archived by the owner on Feb 27, 2023. It is now read-only.
/ void-mail Public archive

self-hosted disposable email service (nodejs) using catch-all and imap


Notifications You must be signed in to change notification settings


Repository files navigation

disposable mailbox

a self-hosted, simple and fast disposable mail service that works directly with your imap server. No database required.

Build Status XO code style FOSSA Status

Project status: Abandoned

This code is not maintained any more, this is a read-only archive.

Why? I found that and Apple's What is Hide My Email? solve my use cases and are much more convenient.

How it works

You need a domain with catch-all-mailbox and an imap account.

Your run the void-mail nodejs application on your own server. It will automatically load all mails from the imap server.

When the user opens the void-mail web application, he/she can read the mails corresponding to a specific address.



  • Push-Notification on new emails.
  • Mail presentation are sanitized to avoid tracking.
  • In-Memory cache for very fast mail access.
  • No database required! You just need a catch-all-mailbox imap server.
  • Deletes emails older than X days.


One click installation: Deploy

See Installation

Configuration Parameters

These are all set as environment variables. They are loaded in config.js

Parameter Type Description
DOMAIN String The domain part after the @, where your receive emails. (e.g.
IMAP_SERVER String The imap server address. (e.g.
IMAP_USER String The username used to sign into the imap server.
IMAP_PASSWORD String The password used to sign into the imap server.
IMAP_REFRESH_INTERVAL_SECONDS Integer How often to check for new messages on the imap server. (default: undefined) Usually the application reacts immediately to new arrived mail.
PORT Integer On which port to run the http interface. (default: 3000)
DELETE_MAILS_OLDER_THAN_DAYS Integer How many days to to wait before deleting messages. (default: 30)
DEBUG String Enable debug logging with value void-mail:* (default: disabled)


This mostly works, but some things need to be done:


  • create unit/integration tests

Maybe Later:


Aravindo Wingeier

Aravindo Wingeier


GPL-3.0 © Aravindo Wingeier


Supported by BrowserStack, which allows us to test projects online with any browser as a service. :-)