Published: 2026-05-18

Subscribe now to get notified!

#dart #llama.cpp

Subscribe now to get notified!

Host your own email newsletter subs for less than a fiver a month!

In an era of expensive "all-in-one" marketing platforms that charge you by the subscriber count, I decided to go back to basics. I needed a simple, robust, and cheap as possible way to collect email subscriptions for my upcoming newsletter, well actually just a newsletter version of this blog, but hey newsletters are in vogue and I want to be able to notify people of new blog posts, so why not.

The result? A high-performance, server-side Dart application that costs less than a fancy coffee per month to host, and it was built from scratch in under 2 hours using an agentic LLM.

The Stack: Performance First

I chose Dart for the backend. While often associated with Flutter, Dart is also fantastic for server-side dev. No where near as popular as Go, it has many of the same features for backend dev. such as compiling to a native standalone executable, actor model for memory safe concurrency and much more. More about the efficiency that compiling down to a standalone native executable below.

So what went into building my MVP? The key bits are:

  • Framework: shelf (Dart's minimalist web server library).
  • Database: sqlite3 (Zero-config, high-performance file-based storage).
  • Container: The Distroless image (a great "no-bloat" base).
  • Hosting: Fly.io (Using their cheapest 256MB RAM plan).

The Stats: Small is Beautiful

By compiling the Dart to a native AOT (Ahead-of-Time) binary, we get some really good results:

  • Binary Size: ~12MB.
  • Total Container Image: 36MB.
  • RAM Usage: ~15MB to 30MB at runtime.
  • Boot Time: Under 10ms.

On the cheapest Fly.io plan its less than $5 per month all up:

screenshot of fly.io pricing

Of course you'll need to BYO your own SMTP email server, I personally use, love and recommend Fastmail, but if you're short of a $, you can just use a free gmail account.

Built-in Features (The "No-Nonsense" List)

Despite it being an MVP, essential features are already there:

  1. Double Opt-In: Automatically sends confirmation emails via SMTP (Fastmail) with unique tokens.
  2. Security-Minded: Prevents "email enumeration" by returning generic success messages, so bad actors can't guess who is on your list.
  3. Token Expiration: Confirmation links automatically expire after 24 hours (configurable).
  4. Easy Export: A simple SSH-triggered command exports your confirmed subscribers to a clean newline-separated .txt file, ready to be imported into any newsletter sending tool including even just copying into a BCC for small lists!

Built by an Agentic LLM

And because it's 2026, all built using Gemini CLI, which did the coding as well as handling the SQLite schema, debugging Podman networking issues and optimized the Dockerfile with some prompting from me.

I went from initial plan prompt to dart create to a fully deployed, high-performance production API on Fly.io in less than 120 minutes.

Want to try it?

If you're tired of paying "subscriber taxes" to big platforms, maybe it's time to host your own. With a tiny Dart binary and a $3/month budget, you can own your data and your infrastructure without breaking the bank. So if you're interested in hosting your own newsletter whose costs won't sky rocket when you're subscriber count does, sign up below. If I get enough interest I'll open source the app and let you know when I do.

Stay up to date

Get new posts delivered straight to your inbox. No spam, unsubscribe anytime.

← Back to Blog
Written by Maksim Lin