So why did I switch away from Thunderbird? Mostly because it’s kinda slow and comes with many features I don’t need / want. I prefer my programs to be rather minimal if possible, so everything I really want is easier to find and also from security perspective, it reduces the attack surface to not have tons of random functions and a giant code base …

Don’t get me wrong, Thunderbird is a great general purpose mail client for most ppl, but for me it’s too much, I don’t need a GUI …

#
Terminal UI

After using Aerc for a while now I noticed I prefer a TUI way more. Usually mails are all formated with tons of colors and images etc. I don’t need this, its imo just annoying, I want the information and thats it …

And Aerc just gives me this, it runs in my terminal, with no mouse support (I prefer this, as it forces one to learn the shortcuts and get faster). Everything works with the usual vim keybindings e.g. jk to go up / down in the mail list etc.

#
JMAP Support

Also aerc supports jmap, which my mail server (Stalwart) also speaks. It has a bunch of advantages compared to IMAP and these old protocols, first off it just runs over https & uses json (thats what the J also stands for ig (only a guess, but would make sense) ;P). I like that approach, one don’t need to reinvent the wheel each time and have tons of random protocols. Also this means I can just have 443 open in my firewall and that’s it, no imap port (still have it, but guess not long anymore).

Additionally JMAP supports bulk opperations, yeayyyyy. This makes the mail client way faster, as it can just fetch a bunch of mails at once, delete multiple mails at once etc.

#
Cool Features

  • Uses your default terminal editor for composing a mail, in my case helix. Finally I can use my keybindings for writing mails ;P
  • pipe command, allows you to pipe your mails through any command you want, you could even cat it and pipe the output to a file if you want, use bat for syntax highlighting in your mails, open it in your editor, so you can quicker navigate or delete stuff even (cant write it, but still cool) etc.
  • PGP support, its pretty straightforward, also in the config you can set stuff like that it should sign everything etc.

#
Its fast

And lastly, since it runs in the terminal, its blazing fast, I open the application menu entry or run the command and its there, no waiting … all actions are instant.