Selected Work

Projects

Software, systems, and the production work underneath

I build production systems on my own, quickly, by directing AI and then gating it with tests that fail loudly. Three shipped products in 2026, all live, all solo. Below is what each one does, how it is put together, and the checks that make the method safe.

  • 678commits in 2026
  • 90automated suites
  • 4live products
  • 1person

How these were built

I did not type most of this code. I specified it, reviewed it, and wired the gates that catch it when it is wrong. That is the skill, and the gates are described in each case study below.

The gates are the point. A deploy script that opens with One way in and refuses on the first red suite. Forward-only migrations, never edited after they run. A CI check that fails the build if admin code reaches a public bundle. A staging guard that requires two independent marks before it will call a record synthetic, and refuses rather than passing when it cannot reach the database.

Speed without those is a liability. With them it is just leverage.

Builds

Three products shipped in 2026. Each one is live, and every number below is checkable.

  • Bryn Athyn Cemetery screenshot

    Bryn Athyn Cemetery

    Map, walking directions, a 3D mode and an offline-first record system for a community cemetery. Live on two domains, with the runbook written to hand it over.

    • Expo
    • React Native
    • React 19
    • Three.js
    • Leaflet
    • 318commits, solo
    • 50test files
    Read the case study
  • A Human Business Platform screenshot

    A Human Business Platform

    A public site, a team platform in daily use, a paid academy and a demo, on Cloudflare Workers with no framework and no build step.

    • Cloudflare Workers
    • D1
    • Workers KV
    • Durable Objects
    • Vanilla JS
    • 355commits, 100% mine
    • 40gated check suites
    Read the case study
  • sowonpark.com screenshot

    sowonpark.com

    A film portfolio rescued off a host that was being shut down, rebuilt with no framework and no dependencies, with the gallery mapping recovered exactly.

    • Static HTML
    • Python generators
    • Cloudflare Pages
    • Pages Functions
    • Resend
    • ~2 hrsstart to live
    • 248 MBof originals, to 13 MB
    Read the case study

Selected features

Individual pieces from those builds, each one shipped. Screens from client-facing tools have personal names replaced with roles, and internal figures left out.

  • An operator dashboard with four KPI cards, a funnel breakdown and a queue of items flagged for a human

    Try the platform, live

    Learning platform · interactive

    The whole platform as a working demo you can click through — role switcher, funnel, learners, sync health. Sign in with you@yourcompany.com / demo. Every number is invented and nothing is live.

  • A 3D view along a cemetery path, a lit marker ahead on the ground and a compass bearing in the corner

    Guided 3D walk

    Bryn Athyn Cemetery

    A first-person walk to one specific grave, with the path drawn on the ground and the compass bearing held in view. Runs in a phone browser, no app.

  • A walk-options panel with a walking-speed slider and buttons for overhead view, explore freely and auto stroll

    Pacing controls

    Bryn Athyn Cemetery

    Walking speed, overhead view, free exploration, auto-stroll. Someone visiting a grave sets their own pace rather than being driven.

  • An aerial cemetery map where groups of graves are drawn as numbered circles rather than separate dots

    Cluster rendering

    Bryn Athyn Cemetery

    At low zoom a dense burial field collapses into counts, so the grounds read as a place instead of a smear of dots.

  • The same map zoomed in, hundreds of individual grave markers arranged in readable rows

    Dense-field markers

    Bryn Athyn Cemetery

    Zoomed in, clusters resolve to individual plots while the row structure stays legible under the pins.

  • A table of every email sequence a subscriber receives, listed with the day each one arrives

    Campaign funnel map

    Learning platform

    Every sequence and every email the business sends, in the order one person receives them, so the team could stop reasoning about campaigns from memory.

  • A shooting plan listing nine numbered segments per module, each with the role who leads it

    Production shoot map

    Learning platform

    The shooting plan for a video course: nine segments per module, who leads each, and what the learner does. Built so a crew could shoot straight from it. Presenter names shown as roles.

  • An artist's portfolio home page, the name in large type above a grid of film thumbnails

    WordPress rescue

    sowonpark.com

    An artist's site moved off a slow WordPress install onto static hosting, keeping the work front and centre.

  • A six-step assessment, a progress bar on step one above the first principle's question card

    Owner assessment

    Learning platform

    A six-step reflective assessment as one self-contained page — no framework, no dependencies, no backend. The only one of these repos that is public: source.

Systems and craft

The work underneath the apps: curriculum, illustration, and twenty years of production.

Course and curriculum system

The learning product behind A Human Business: five manuals, a strategic build bible, and the toolchain that turns them into what a crew shoots from.

  • Instructional design
  • Python
  • Publishing pipeline
  • Five course manuals including role-specific editions for facilitators, leaders and mentors, plus a fillable academy workbook.
  • A generator chain in Python that builds the shoot map, the shooting script and an Excel workbook from one source, then publishes the shoot map straight into the live team platform.
  • 39 course videos scripted, mapped in curriculum order, and reviewed with timestamped notes inside the platform.

Illustration system

A drawn visual language for a business philosophy: a stick-figure library with construction rules, a model sheet and a seven-view turnaround so anyone can extend it on-brand.

  • Illustration
  • Design system
  • Brand
  • Over 240 illustrations across values, principles, poses and expressions, group scenes, comics and chapter art.
  • Rules, not just drawings. A model sheet, a turnaround and written construction guidance, so the library survives other hands.
  • Designed for A Human Business (Glenn Bostock) in partnership with SnapCab. Shown with permission.

Seminar and promo video

Campaign video for a live seminar, plus an animated explainer ending cut to voiceover.

  • Direction
  • Editorial
  • Motion
  • A promo campaign for the Mind of a Human Business live seminar, from strategic plan through finished cut.
  • An explainer ending storyboarded and cut to a 51-second voiceover, delivered with a handoff document so someone else could finish it.
  • Twenty years of production behind this, from wedding film in 2004 to broadcast studio operations.

This site, and an assessment rebuild

silverparkstudio.com is the same pattern as sowonpark: WordPress captured, rebuilt as static files, deployed to Cloudflare Pages. The assessment was a similar rescue.

  • Static
  • Cloudflare
  • Migration
  • This site is generated by two Python scripts from a manifest, with a Pages Function handling contact, and a redirect map preserving the old WordPress URLs.
  • The Human Business Owner Assessment was rebuilt out of WordPress and Gravity Forms into a single self-contained HTML file: no plugins, no external scripts, no fonts, five principles scored in the browser.
  • The scoring bands were reverse-engineered from live submissions and documented honestly, including which boundary thresholds were inferred rather than sampled.

How I work

Method
Specify tightly, generate fast, review hard. I write the data model, the trust model and the failure modes myself, then direct the implementation and read every diff that matters.
Verification
Every project above ships with the gate that would catch me being wrong: test suites wired into the deploy path, CI checks that fail the build, and staging that refuses rather than guesses.
Delivery
Live URLs, not demos. Where the work belongs to someone else, a written runbook naming every account and the order to transfer it.

Let's talk

Download résumé