Migaman is a CLI email alias manager for Migadu users. It allows you to generate and manage per-service email addresses with ease, allowing you to protect your primary email address from spam without sacrificing convenience.
I have been sitting on this for some time now as it lacked polish in some areas, but it has been serving my needs for quite some time. Therefore, I have decided to pull the trigger and release the first version to public.
There is not much interesting going on on the technical side. It is essentially a CLI interface to a JSON API that uses SQLite to manage its internal state. Some details on the tech stack:
- Persistence:
beam
(together withbeam-sqlite
) - Migrations:
migrant
- HTTP:
req
- CLI:
optparse-applicative
Aside from the alias manager itself, the project also introduces the migadu
library which wraps the JSON API and exposes it as an idiomatic Haskell interface. The library component is not feature-complete since I have only implemented what was necessary for migaman, but I would be happy extend it if someone needs access to some yet-unimplemented feature.