Every business has a dozen repetitive processes that quietly lose money: a lead waits three hours for a manager, nobody notices a failed payment, someone builds the weekly report by hand every Monday. Each of them can be automated in an evening and then cleaned up after for half a year: lost webhooks, double charges, a bot that died on Friday and stayed silent until Monday.
In this series we build automations properly, from the foundation up. First we work out which of them actually pay off, then we set up a server, a database and deploy on push, write a reliable core with a queue and retries, and only then build concrete automations on top of it.
The central parts of the series are framed as "Replacing …": each takes one role in the company and takes the routine off it. Replacing the salesperson: a lead is parsed and in a manager's hands within a minute. Replacing the accountant: payments recorded, access granted, reminders sent to clients who owe. Replacing support: the inbox is sorted and drafts are ready for repeated questions. Replacing the analyst: a morning digest and an alert when something drops. Nobody gets fired; people lose the part of the job everyone dislikes and does late.
The last part is about running all of this and what it costs.
The stack is simple and framework-free: TypeScript and Bun, Postgres as both the database and the queue, Docker Compose on a single VPS, Caddy for HTTPS, GitHub Actions for deploys, Telegram for notifications and Claude over the API wherever we need to understand text. Every part ends with code that runs, and the next part builds on it.