Senior mobile and web engineer in Chicago. Fifteen years of shipping storefronts, subscription engines, native apps, and developer tools that tens of thousands of engineers now run.

01

volcanica coffee

I rebuilt Volcanica's Shopify storefront from the ground up, built the Coffee Club subscription box inside it, and wrote the React dashboard their subscribers run it from.

Role
Lead web developer
Years
2024–2026
Built with
Shopify OS 2.0, Liquid, Recharge, Next.js 16, React 19, n8n
The Volcanica Coffee homepage: a Coffee Club hero of a couple with coffee mugs in a kitchen.
volcanicacoffee.com as it runs today. Your scroll is driving a frame-by-frame capture of the real page.

the old storefront, replaced

Before the rebuild, Volcanica ran a patched copy of a stock theme. Scroll to wipe it away: this is the same homepage, rendered the same day, before and after.

  1. Built from mad.studio's designs on a stripped Dawn 15.3 base.
  2. 39 sections with no Dawn equivalent; header, product page, search and cart rewritten.
  3. One performance pass deleted 38,583 lines across 190 files.
  4. Scripts deferred, fonts preloaded, header height computed on the server.
  5. Vector search behind a toggle, and promo codes that apply straight from a link.
The previous Volcanica theme: a red shipping banner, uppercase navigation, and a boxed Specialty Coffee Roasters section. The rebuilt Volcanica theme: a full-bleed Coffee Club hero and editorial product sections.

coffee club: a box you build

Coffee Club is Volcanica's flat-rate subscription: three or six coffees from twenty, whole bean or ground, delivered on your schedule, with free oat milk in every box. Underneath is Recharge's bundle widget. I hid its interface and drove it from a custom one, so the box feels like the brand instead of like a plugin.

  1. Pick a box. Three or six coffees, priced from Recharge's selling-plan allocations, never hard-coded.
  2. Grind and plan. Whole bean or ground, monthly or prepaid for three or six months, each tied to its own selling plan.
  3. Fill it. Choose coffees one by one, or fill the box with best-sellers in one tap.
  4. Watch it count. A sticky bar tallies servings as the box fills and unlocks at exactly three or six.
  5. Check out. The oat milk joins the cart automatically, and leaves it if the box does.
The box builder on a phone, live.
The Coffee Club landing page: Join Coffee Club now for only $38 a month, with a checklist and press logos.

the dashboard subscribers actually use

app.volcanicacoffee.com replaced the stock subscription portal with a Next.js 16 and React 19 app I wrote: 17 pages and 56 API routes over Shopify's Customer Account API and Recharge. Subscribers ship a box now, push it sooner or later, swap coffees, gift a box, merge stray subscriptions into one bundle, and spend their rewards. The team edits the cancellation flow without a deploy: a reason picker, then a matched save offer.

Sign-in is Shopify's OAuth with PKCE, the session is an AES-256-GCM cookie, and every change a subscriber makes carries a signed ownership token.

Dashboard overview: recent orders, a welcome message, the next charge date with ship now, get sooner and get later buttons, and the six coffees in the box.
Overview: next charge, one-tap ship, sooner or later.
Edit your bundle: a grid of coffees with six selected and an order summary totalling $99.
Editing the box: six of six, totals live.
The cancellation flow offering a save before the subscription is cancelled.
The save offer the team edits themselves.
The dashboard overview on a phone.

Shown running locally against a stub with a fictional subscriber. No customer data.

2,159 commits to the storefront, 1,018 of them by hand and the rest the theme editor syncing. 453 to the dashboard. 69 n8n workflows behind its API. One pull request that deleted 38,583 lines.

02

mifland

A leather-goods project by founder Tobi that grew into apparel and into Atlanta's fashion scene. I guided the whole digital build and have run the Shopify storefront with him since 2022.

Role
Web developer
Years
2022–now
Built with
Shopify, a custom theme built on Kingdom, Liquid, SCSS

Since then Mifland has collaborated with Nike and Sperry, worked with LeBron James, and run pop-ups in New York, Chicago and Atlanta. The storefront's job is to keep pace: drops, collaborations, a lookbook and a journal, with navigation I wrote to carry all of it.

mifland.com, scrolled top to bottom. The hero is their own footage of a bag being stitched.

03

strata

An independent fashion house with three storefronts: the main line, a basics label, and a wholesale catalogue I built from scratch. Founder Jason came to me with a slow, bloated theme and falling conversions.

The strata.us homepage: a close portrait of a model in amber sunglasses.

strata.us

Performance and conversion work on a heavily customised theme: promo codes that apply from a link, campaign banners and colourway selectors driven by metafields, infinite collections, and a clean-out of the inline tracking scripts. The 2026 visual refresh was designed and built alongside alright.studio. I also set up the brand's Google Workspace and ran their Klaviyo email and SMS.

black label

A custom theme for the basics line, made in their Peruvian factory: GSAP and Lenis motion, a launch gate with a countdown and a preview mode, and storytelling sections for chapters, lookbooks and collaborations.

black label blanks

A gated wholesale catalogue, 73 of its 88 commits mine. Buyers apply through Shopify Forms and are approved into a B2B company by Shopify Flow, then order an entire colour-by-size matrix in one add, with restock dates per variant.

Also for clients: Crawlspace Pro, Mavericks Exteriors and RegenMD.

04

codegraph

72,092 stars on GitHub

A pre-indexed knowledge graph of your code, for the AI agents that write it.

It parses a codebase with tree-sitter, in 34 languages, into one local SQLite graph of every function, class and call. An agent asks it one question instead of opening forty files.

What you are watching is CodeGraph indexing itself: 250 of its most-connected symbols and the real calls between them, drawn in the order the indexer reaches them.

One real call path, traced: main → open → sync → resolveDeferredThisMemberRefs → getNodesByName. Hover any node to read it.

4,625 forks · 44 contributors · 31 releases

what it changes for an agent

On seven open-source repositories (VS Code, Excalidraw, Django, Tokio, OkHttp, Gin and Alamofire), headless Claude Code with the graph made 88% fewer tool calls, finished 53% faster and spent 62% fewer tokens than without it, and read zero files on all seven. The benchmark and its caveats are in the README.

It auto-configures Claude Code, Codex, Gemini, Cursor, opencode, Copilot, Kiro, Antigravity and Hermes Agent, re-syncs two seconds after you save, and never leaves your machine. 1,046 commits since January, and 116,622 npm downloads in the last week alone.

npx @colbymchenry/codegraph

The CodeGraph repository on GitHub, showing 72.1k stars and 4.6k forks.

05

hoblets

A little team of AI teammates with a computer of their own. You bring your ChatGPT or Claude account; Hoblets brings the cloud computer, the roles, the memory, the routines and the approvals.

Role
Founder: product, design and engineering
Platforms
Web, macOS, iPhone and iPad
Built with
Next.js 16, Electron, Expo, Docker, Postgres with pgvector, Cloudflare
Live
hoblets.com, $30 a month
The product, recorded with sample conversations.
Hoblets onboarding: three characters, an orange circle, a purple square and a teal triangle, above the line A little team. A computer of their own.
Onboarding, from the public interactive preview.

a computer each

Every customer gets their own server: Docker, a desktop, Chrome, and Codex and the Claude Agent SDK running as separate Linux users behind a firewall.

take the wheel

The desktop streams to you live over a signed socket, your input is encrypted end to end, and the agents freeze while you drive.

memory that stays

Semantic memory lives inside the machine: pgvector, local embeddings and a reranker, shared by both agents.

Hoblets for iPhone welcome screen: Your team. Within reach.
The team screen: Klaus, the Agency group chat, Forge and Parker.
Klaus's computer access: ask for approval, or full access.

The real iPhone app in its preview mode, on the simulator.

06

kommandr

One board for you and your AI agents. Plan with one agent, hand an epic to another, and read the handoff when it lands, from your desk or your phone.

Role
Founder: product, design and engineering
Platforms
macOS, iPhone, Android
Built with
Electron, SvelteKit, Expo, Cloudflare Workers
Live
kommandr.com, $8 a month
Kommandr for macOS on the Volcanica storefront board: a sprint with To Do, Needs Definition, In Progress and Test columns of VOLC issues.
Kommandr for macOS on the Volcanica storefront board, a live two-way sync with JIRA. Another client’s projects are blurred in the sidebar.
The same kind of board on the Kommandr iPhone app.

a tour of the desk

Sixteen real screens from Kommandr for macOS, running on my own work: the Volcanica storefront and CodeGraph’s engine. Pick one.

An epic drawn as a dependency tree: a closed spike at the top fans into parallel tasks and stories that converge on docs and validation.
Epics as a dependency tree. CodeGraph’s plugin-API epic: one spike fans out into parallel work and converges on docs and validation. The task runner executes it in exactly this order, on one branch.

in your pocket

Scan a QR code from the desktop and the phone gets the same board, chats and runners, with a push notification when an agent needs you.

The desktop’s Phone panel: start remote access, then scan the QR code with your phone.
A chat where the agent asks whether to replay missed runner events, with two options.
Questions. An agent that needs a decision asks, and you answer from anywhere.
A runner working through an epic: branch checked out, tests passing, handoff notes opened.
Runners. Watch an epic run in dependency order on one branch, and resume it after a crash.
The chats list on a phone, one marked as needing input.
Chats. Every conversation across every project, with the ones waiting on you on top.
The projects list on a phone.
Relay. The phone reaches your Mac through a Cloudflare Durable Object, so its address never changes.

underneath

  • Adapters for seven agent CLIs: Claude Code, Codex, Gemini, Cursor, Copilot, opencode and Grok.
  • 23 MCP tools that give agents the board, the sprints and the runners.
  • A merge-conflict editor with AI resolve.
  • Offline licences signed with Ed25519.

Phone screens are the real Kommandr iOS app paired to a local sample project.

part three

resume

Self-taught, shipping since fifteen. Before the freelance work above, and alongside it, these were the day jobs.

  1. 2023–nowamniscientMobile and senior full-stack engineerLed the cross-platform AR capture product, from native Swift and Kotlin modules to the React Native interface, the APIs and the web dashboards.
  2. 2022–2023ceretaxLead UI engineerBuilt a complex single-page app with custom routing, spreadsheet-style tabs, a full table system, and QA automation for testing and performance.
  3. 2021–2022schiefer chopshopSenior full-stack engineerFrontend and backend systems and custom Shopify features across React, Salesforce and Liquid, with performance-focused Apex.
  4. 2018–2021crypto wallet (NDA)Full-stack engineerA secure wallet app, real-time React dashboards, a custom SCSS and Tailwind UI library, a ticketing system, and a provably fair game on a Mersenne Twister RNG.
  5. 2013–2015hostlegendFounder and CEOGrew a VPS host to more than 750 clients and sold it to ColoCrossing: the servers, the security, the Laravel site, backups and support.

Works in React, React Native, Expo, Swift, Kotlin, TypeScript, Node, Next.js, NestJS, Laravel, Shopify and Liquid, ARKit and ARCore, and AI systems: embeddings, vector databases, chat and agents.

Download the resume (PDF)