Open source tool
Dadbod Grip keeps database changes inside a familiar editing model.
Dadbod Grip stages each mutation and keeps the exact SQL visible until the user applies it.
Four selected case studies, with their constraints, implementation details, tests, and visual checks.
Open source tool
Dadbod Grip stages each mutation and keeps the exact SQL visible until the user applies it.
Shipped at scale
I architected the networked backend for a Unity ragdoll sandbox where players, vehicles, joints, and physics objects needed to remain responsive under real network conditions. The game passed 50 million downloads.
Product in development
Theosis now splits delivery by platform: native keeps bundled SQLite and full offline behavior; the public web path removed database and WASM startup, emits immutable route-sized JSON, defers heavy reference routes, and enforces a 650 KB gzip entry cap.
Founding engineering
I joined as the sole frontend engineer, replaced the prototype with React and TypeScript, then expanded into Python and FastAPI performance, PostgreSQL migrations, AWS and Terraform, release automation, agent workflows, security controls, and production data.
Deep dive
Case: dadbod-grip.nvim
The core job is not “build a database client.” It is preserving editor flow while making mutations reviewable before execution.
Vim provides the interaction model. Dadbod owns connections. The database remains authoritative. New code earns its place only around the missing workflow.
- ALTER TABLE users ADD last_seen_at TIMESTAMP;
+ ALTER TABLE users ADD last_seen_at TIMESTAMPTZ;
+ CREATE INDEX idx_users_last_seen_at
+ ON users (last_seen_at DESC);
Preview the SQL before execution. Apply the staged mutations inside one transaction. Verify database state after commit and after rollback.
Tables, diffs, floating SQL previews, focus order, and empty states are checked in Neovim. Screenshots support the review but do not replace interaction.