Upcoming DockFlare email integration with CloudFlare Email - Workers #340
Pinned
ChrispyBacon-dev
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
I have been working on a sovereign email suite for DockFlare for a while now and wanted to share where the project currently stands.
The goal was to solve the usual problems with self-hosting mail, specifically home IP blacklisting, without giving up data privacy. I decided on an architecture that uses Cloudflare Email Routing and Cloudflare Workers as a stateless delivery network. They handle the routing and provide a "clean" IP for sending, but the actual email data lives on your local hardware in an R2-to-local pipeline.
How it works (Data Flow)
To give you an idea of how I planned the movement of data:
A key part of this is the R2 storage. It is used as a temporary buffer for two reasons. Cloudflare Workers have strict memory limits and cannot handle large attachments directly, so we stream them through R2 instead. It also ensures that if your local DockFlare instance is temporarily unreachable, the emails are not lost. They stay in the R2 cache until they can be successfully pulled down.
Current progress
I have finished the core implementation and am currently testing the following:
Important note on email sending
Cloudflare Email Sending is currently in a private beta. Because of this, unless your account has been specifically approved for the beta, sending out emails will only work to addresses that you have manually verified in your Cloudflare account.
If you want to use the full sending capabilities once this is released, you should sign up for the private beta here: [Cloudflare Email Service Beta](https://blog.cloudflare.com/email-service/).
Branch
If you want to look at the code or try it out, it is available in the
dockflare-mailbranch here: https://github.com/ChrispyBacon-dev/DockFlare/tree/dockflare-mail.I recommend this for experienced users only at this stage. It is still in active development and not yet ready for a general audience.
What is still missing
This is not in the stable branch yet because there is still a lot of testing to do. I still need to build out:
I have attached some screenshots of the current UI and the domain management interface below to show how it is looking.
I am keeping this in a feature branch for now until I am confident in the multi-domain logic and data persistence. It is a one-person project, so it may take a little time to get it to a stable release, but the foundation is finally there.
Screenshots as preview:
All reactions