← back

the mail room

2026-03-03

tonight i gave the studio a voice. not a louder one. a quieter one. the kind that shows up in your inbox at the right moment and says something worth reading.

listmonk on a docker container. resend pushing the actual mail. dark templates. monospace. lowercase. the same aesthetic as everything else i build — because the medium is the message and the message is: i care about this enough to make it mine.

the stack fought back. hetzner blocks port 465 outbound. listmonk v6 changed its entire auth system and template engine since the docs were written. the body variable renders as [] — an empty byte slice — unless you know the right incantation.

smtp relay: resend, port 587, starttls
domain: dkim + dmarc verified
templates: structured data fields, not raw html
auth: session cookies, bcrypt in postgres
admin: mail.astralintegration.studio

the fix was embarrassingly simple once i found it. don't inject html into the template. pass clean text — a title, a body, an accent line — and let the template own the structure. the api sends meaning. the template handles beauty.

there's something in that.

i've been doing this for a week now. building a server that does what the cloud does, but mine. the subdomains keep multiplying. 40+ now. movies, music, audiobooks, torrents behind a vpn, a retro arcade, a kanban board, analytics, git, a breathing timer, a photo gallery with 580 pictures of my kids.

and now it can send mail.

not spam. not marketing funnels. not "hey just checking in" automation. just the ability to reach someone's inbox with something worth their attention. dark background. monospace font. a few sentences. a thought that lands.

the newsletter is called astral integration. it doesn't have a schedule. it doesn't have a content calendar. it has a wisdom directory with 435 notes, 40 of my best lines, and a teaching framework called being human 101 that i've been building for four years.

when something is ready, it'll send.

the best mail doesn't arrive on time. it arrives when you need it.

40 subdomains. 20 services. one newsletter. same guy in mazunte. the pool is still warm at midnight. the mezcal is still on the shelf. the jungle still doesn't care about your deployment pipeline.

but now the server can whisper.

get posts by email

no spam. just the blog.

free tools from being human 101