← Back to Projects

Hello

โ— In Development
software Linux iOS Android Web
retoor
retoor · Level 54887
๐ŸŒฑ Started
๐Ÿ“ Files (0 files)

MoloMail is the most convenient e-mail/webmail/smtp/imap/exchange/calDAV solution on the market. Besides that, it does offer a very user-friendly drive functionality making it possible to share directories with people. Permissions are set per share. It supports calDAV and thus calendars. Android / iOS support out of the box. No, that is not a given when you implemented the exchange protocol.

It is originally written in native Python with zero dependencies, which means that all protocols are implemented in my preferred way. When the Python mail service was quite some time in use and I realized it was actually a keeper, I rewrote it to Swift. I prefer this software to be a static binary. Feels solid. The conversion from Python to Swift was very challenging since I did not have dependencies. Converting from native Python to native Swift or any other native version of a language is easy as heck.

For now, no repository URL yet. The repository contains the Python version with a second MoloMail version (Swift / prod) within that directory and so on. It's not very clean. Also, the web version has some styling problems. Stay tuned.

0 updates

No devlog posts yet.

Comments

retoor retoor

I will provide design decisions later. The goal was not to be the most performant, secure, beautiful or whatever. I do think, thanks to Swift, that it will also do fine on those areas actually. But, the main goal was, fully file-based with a sensible directory structure for e-mail data. Main target is, never to lose data. On top of that, ease of use. It basically has no moving parts ensuring stability. I do think, this mail server is the best choice in most cases. A configured instance is basically by design impossible to break. Normally, a mail setup has around seven moving parts. This one has zero. The architecture ensures some guarantees. Almost nothing about this project is configurable, there are no advanced settings and also will not have them. The system should be easy to copy and paste transportable and the configuration should not be something requiring users having to learn. Some people just want to have something reliable.

retoor retoor

Also, because of my fetish for backend rendering and quality HTML output, this system is directly able to be controlled by AI agents. That was a major time-saver for me, and I no longer care about email verification steps or other such things.