Open Source Maintainer Setup

Neovim + tmux + GitHub Actions + Cloudflare + Turso. The setup behind maintaining three active open source projects with a day job.

Open Source Maintainer Setup

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
NeovimPrimary editor — fast, scriptable, tmux-nativeFree
tmuxTerminal multiplexer — session persistence, window managementFree
GitHub ActionsCI, automated releases, issue botsFree tier generous for OSS
CloudflareDNS, CDN, pages for docs sitesFree tier + $0/mo for most OSS usage
Turso (libSQL)Lightweight SQLite-compatible DB for usage trackingFree 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.

What I'd Change

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.