Selected Work

10+ years of front-end and design work, one very unconventional media project, and what I'm building now. Recent AI-era builds first — each with a short decision log, because the interesting part is what I kept, what I cut, and why.

now

Building with AI agents

I set the architecture, direct the agents, and review every change.

FLIGHT DECK dashboard, light and dark theme

FLIGHT DECK in progress

Independent Developer · 2023 – Present

A self-hosted dashboard framework where every widget is a folder you can copy, edit, and share; no build step, no dependencies, no lock-in. It pulls GitHub activity, service status, system and network monitoring, feeds, processes, disks, and container health onto one responsive screen that holds up from a wall display to a phone. Taken from scratch to shipping through AI-assisted development — where the differentiator isn't the generated code, it's the engineering judgment directing it.

  • I direct and review the AI; the architecture and the calls are mine. The real work is the judgment in the loop — catching the confident-but-wrong diagnosis, driving the running product to surface what passing tests hide, and turning each recurring bug into a check that ends the class.
  • A framework built to be extended, not just used. A declarative module contract, an enforced capability model, and structured, diagnosable errors — enough that it can host untrusted third-party widgets, not only the ones I wrote.
  • Production homelab behind it. Self-hosting, networking, and systems administration across the machines it monitors — the infrastructure is real, not a demo.

Stack

AI-assisted developmentDocker Self-hosted infraJavaScript
War Chest interface: faceted sidebar and a grid of scored skill cards

War Chest

Independent build · 2026 · public repo

A searchable, faceted index of 369 AI agent skills gathered from seven GitHub repositories — Google, Hugging Face, Matt Pocock, Addy Osmani and others — measured against the open Agent Skills specification. A Python pipeline builds it; the interface is vanilla JavaScript with zero runtime dependencies and runs from a single offline HTML file.

  • Read the standard, surveyed the field, then designed. A six-facet tag vocabulary derived deterministically from each skill's own text and file tree — no hand-tagging.
  • A score you can argue with. A computed 0–100 forge score (graded S–D) with every weight written down, next to personal star ratings, status, and notes.
  • Tools, not just a list. Field-operator search, near-duplicate detection across repos, side-by-side compare, a coverage heatmap, and an install-kit exporter that pulls each skill from its original repository.
  • Three builds from one source. A 3.5 MB offline single file, a 0.5 MB catalogue, and a static site that loads the index first and fetches skill bodies on demand.
$ cat decisions.log
+Index, don't fork. Installing a skill always pulls from its upstream repo.
+Going public turned a cache into redistribution, so I audited licenses and ship each upstream LICENSE verbatim.
−One source had no license. I stopped carrying its text; a one-line redistribute:false flag keeps it indexed-only, fetched from the source when opened.
!Found three defects by stubbing the network instead of reading code — including a stale test fixture that produced a false pass.
+ kept   − cut   ! caught

Stack

PythonVanilla JS Data pipelineFaceted search Licensing auditAI-assisted development

Links

Claude Instruct builder with the live preview pane, dark theme

Claude Instruct

Independent build · 2026 · live

A free, no-sign-up builder for Claude project instructions. Pick a use-case profile, toggle pre-written rule blocks, edit anything inline, and generate a clean .txt to paste into a Claude project. Fourteen blocks and about 150 editable lines, in one self-contained HTML file.

  • Profile-first flow. Choosing a use case seeds the sections with recommended rules already ticked; every other preset stays one click away.
  • Nothing ships half-written. Bracketed placeholders are highlighted in the live preview with a running count of what's still unfilled.
  • Built for real use. Drag-to-reorder blocks, autosave, JSON export and import, keyboard shortcuts, light and dark themes, responsive to phone width.
  • The README is a landing page. Demo GIF, before/after comparison, and developer docs moved out to their own file.
$ cat decisions.log
+One index.html, vanilla JS, no build step, no dependencies.
−Added analytics and UTM tags, then removed all of it. The page makes zero network requests, and the FAQ says so.
−Shipped shareable ?profile= deep links, then pulled them when the URL rewriting proved intrusive.
+Kept only growth features that respect the user: an attribution line with an off switch, and one single, one-time support prompt.
+ kept   − cut

Stack

Vanilla JSHTML/CSS UI/UXSEO AI-assisted development

Links

range

Running the whole operation

Brand, community, and a live show — not just the website.

POAPathon brand banner

POAPathon

Creative & Community Lead, Producer · 2021 – 2023

An end-to-end creative operation for a web3 media & design project — not a single deliverable, but the brand, the community, and the show that ran it.

  • Grew and managed a Discord community to a peak of approximately 10,000 members.
  • Produced and hosted roughly 45 episodes of a live YouTube show, booking and interviewing dozens of guests from organizations including Gitcoin, BanklessDAO, UMA, QiDAO, PeopleDAO, LayerZero, Volatility Protocol, ETHstaker, and Rocket Pool.
  • Directed brand identity and design competitions; managed artist submissions and judging, building a reputation for reliable artwork fulfillment.
  • Assisted with treasury management, helping coordinate roughly $120K in artist payouts.
  • Designed and developed Cryptogs, an NFT project extension of the brand.
  • Built and maintained the project site on Webflow.

Role

Brand Identity Community Ops Video Production Webflow Treasury Coordination

Links

45 episodes produced

POAPathon LIVE episode thumbnail POAPathon LIVE episode thumbnail POAPathon LIVE episode thumbnail POAPathon LIVE episode thumbnail POAPathon LIVE episode thumbnail POAPathon LIVE episode thumbnail

foundations

Production front-end at scale

Legacy-to-responsive rebuilds at real publications, with real teams.

Chronicle.com redesign

Chronicle.com

The Chronicle of Higher Education · 8/2013 – 9/2017

Led the front-end responsive redesign of Chronicle.com — wireframing and rebuilding the legacy site to be fully responsive, then served as a shared front-end resource across the company.

  • Designed, developed, tested, and maintained site features and microsites.
  • Transitioned site task builders from Grunt to Gulp; maintained the front-end tool chain.
  • Advised on and collaboratively assisted with front-end site architecture.

Stack

HTML5SASSJavaScript jQueryNodeGrunt GulpVueAngular PHPMySQL

Links

Philanthropy.com before redesign
Before
Philanthropy.com after redesign
After

The Chronicle of Philanthropy

The Chronicle of Higher Education · 8/2013 – 9/2017

Led the front-end development of the Philanthropy.com redesign — wireframing and rebuilding a legacy, table-heavy layout into a fully responsive publication site.

  • Designed, developed, tested, and maintained site features to match the new design.
  • Maintained the front-end tool chain using Node and Gulp.
  • Collaboratively assisted with front-end site architecture.
  • Designed, coded, and tested email newsletters and communications.
  • Partnered with UX in design, interviewing, and testing.

Stack

HTML5LessJavaScript jQueryNodePHP MySQLResponsive Design

Links

earlier work

Before that

Frontend Lead / Freelance

Independent / Contract · 2017 – 2020

Frontend Lead for Empyra's myOneFlow case management platform (2020), plus front-end and design work across independent client engagements.

Parents.com

Meredith Corporation · 2012

Responsive redesign from a legacy Java codebase with an agile team; earned department recognition for CSS3 work that cut image requests and improved PageSpeed.

Appcore

Web Developer · 2012 – 2013 · Des Moines, IA

Themes for Joomla!, Apache CloudStack, RedMine, and WHMCS; managed the company's responsive site and training site.

Wells Fargo Home Mortgage & more

Contract · earlier

Educational simulations and an internal HR/onboarding site for Wells Fargo; client microsites and print for Just Service and Erickson McLellan.