02 — Case study · Product · Saturn
Newsletter Studio
The productized version of Growfin: I turned a fintech brief I'd automated for myself into an app anyone can use — describe your field in one conversation with an AI assistant and get a tailored briefing delivered to Slack or email.
Read the case study
Year
2026
Role
Solo — product, build & deploy
Context
Product
Stack
Next.js · Supabase (magic-link auth + Postgres) · Claude API (Sonnet 4.6) · n8n · Exa · Slack OAuth · Brevo · React Three Fiber · Docker / Caddy
1
conversation to a live digest
2 days
side project to production beta
Slack + email
multi-workspace delivery
The challenge
I'd already automated my own fintech intelligence brief (Growfin), but it was hardcoded to me: one source list, one output, one voice. Everyone I showed it to wanted their own — different field, different sources, different channel — and there was no way to give it to them without rebuilding the workflow by hand. The real problem wasn't the automation; it was the generalization: how do you let someone who's never seen a workflow describe their world in plain language and get a system built for them?
What I built
- A conversational onboarding: users describe their role and what they want to follow, and an AI assistant (Lia, on Claude) interviews them, researches candidate sources, validates each one (RSS auto-discovery, freshness checks) and curates a source set — replacing the hardcoded feed list with a flow that infers anyone's sources from a sentence.
- A multi-tenant architecture: one shared engine holds all the logic — fetch, dedupe, curate, write, deliver — and each user gets a thin scheduled workflow that calls it, so an improvement ships to everyone at once instead of being copied per user.
- Two delivery channels with real auth: passwordless magic-link sign-in, one-click Slack OAuth so a brief lands in any workspace's channel, and transactional email.
- Product guardrails from day one: per-user cost caps, a 30-seat beta limit, and a server-side rule that an email brief can only go to the account's own address — a tester found the spam hole and I closed it.
- Designed, built and deployed to my own server in about two days with Claude Code, down to a 3D landing for the first impression.
Results
- A working v1 in production in roughly two days, now in private beta with about a dozen colleagues at Finary spinning up their own briefs.
- The productization held: a non-technical person sets up a tailored digest in one conversation, on an engine that scales to many users without many codebases.
- Real usage pointed straight at the next problem — twelve people signed up, three launched a brief — so activation, not capability, is the lever I'd pull next.