Why This Stack
Maintenance work is a different category from feature development. The bottleneck is not compute or deployment cost — it's triage, review latency, and context management across multiple repos. This stack minimizes the overhead of operating several projects in parallel. Neovim and tmux together mean a single terminal session can have multiple projects open simultaneously with fast context switching. GitHub Actions covers CI/CD without a separate account. Cloudflare handles DNS and edge caching for documentation sites. Turso for lightweight data when a full Postgres instance isn't warranted.
The Stack
| Tool | Role | Cost / Tier |
|---|---|---|
| Neovim | Primary editor — fast, scriptable, tmux-native | Free |
| tmux | Terminal multiplexer — session persistence, window management | Free |
| GitHub Actions | CI, automated releases, issue bots | Free tier generous for OSS |
| Cloudflare | DNS, CDN, pages for docs sites | Free tier + $0/mo for most OSS usage |
| Turso (libSQL) | Lightweight SQLite-compatible DB for usage tracking | Free tier generous |
The Session Setup
Each project has a saved tmux session: one window for the editor, one for running tests, one for git operations. tmux-resurrect restores sessions after reboot. Switching between projects is ctrl-b s and a session name.
The biggest contributor to sustainable maintenance: a weekly one-hour triage block. Everything else gets async. Async-first culture in OSS is either there or it isn't — you can't force it, but you can model it.
I should have set up automated issue labeling and stale-issue management earlier. The GitHub Actions bot that adds labels based on templates now runs on every new issue. It took two hours to write and saves me twenty minutes a week, every week.