Earlier quoted context omitted.
You could try maddy: https://maddy.email/ An all-in-one stack.
I love the idea of maddy. (I swear it's inspired by Caddy but I have no proof.) I do kinda wish it was just made into a Caddy module, though.
> Is it caddy for email?
> No. It was intended to be one but developers quickly acknowledged the fact email cannot be easily abstracted behind some magic.
The only other instances of Caddy are that they copied a "caddyfile lexer" [1] and seemingly a typo in a test[2].
0: https://github.com/foxcpp/maddy/blob/d08c7f0e3927df64f10db91...
1: https://github.com/foxcpp/maddy/blob/d8cabb932d9e7c3abd056fe...
2: https://github.com/foxcpp/maddy/blob/d8cabb932d9e7c3abd056fe...