JAMES KING · projects ·
2026

STUFF
I'VE BUILT.

(mostly in typescript,
occasionally in go!)
READ IF YOU LIKE:
· over-engineered weekend projects
· putting typescript in places it
  probably didn't need to be
· automating yourself into a corner
Shall we take a look at some projects I've done? This is the bit where I pretend each project was carefully scoped and not built at 11pm because I thought it would be fun. Some are still alive, some are quietly retired, and one (waving at Janky Werewolf) was made for a lockdown and then somehow refused to die.

You can tell roughly how excited I was about a project by how much documentation I wrote for it after the fact. Spoiler: not enough.
+ INSIDE THIS ISSUE
001 · fitgluep.01
002 · skierp.02
003 · bingham srcp.03
004 · state examplesp.04
005 · pres. timerp.05
006 · janky werewolfp.06
007 · ripixel.co.ukp.07
also in the catalogue.
↓ smaller, equally chaotic ↓
NO. 002
SKIER.
A custom static site generator, because the world definitely needed another one. I kept getting frustrated with existing options — either too simple or requiring me to learn an entire framework. So I did what any sensible developer would do: spent considerably more time building my own. Powers this site, FitGlue marketing, and the Bingham SRC site.
NO. 003
BINGHAM SRC.
A full digital ecosystem for a small Sunday running club. What started as "can you make us a simple website?" turned into a React-based race tracker app, a Skier-powered club site, and a CI/CD pipeline that would make enterprise teams jealous. Every Sunday, results are live before the slowest runner even finishes.
NO. 004
STATE EXAMPLES.
A site demoing Redux, Zustand, Jotai, Context, and more — for the curious developer. With brutally honest pros/cons for each approach. Because "which state manager should I use?" deserves a better answer than "it depends".
NO. 005
PRES. TIMER.
A countdown timer with music streaming for presentations and streams, all in one browser tab. Having the countdown and music in the same tab means your streaming tool can pick up the audio without any fuss.
NO. 006
JANKY WEREWOLF.
Browser-based Ultimate Werewolf, born in lockdown 2020. My friends and I adore the card game, and when meetings went virtual there was no way to play. React frontend, WebSockets, AWS Lambdas, and a Rust backend by Michael Goddard. Who's dead, Jim?
NO. 007
RIPIXEL.CO.UK.
This very website. Why use a static site generator when you can just… y'know… write the HTML yourself? (Also it uses Skier, sometimes.) As with all personal sites, I've been going back and forth on how to implement it for literally years.
VISIT THE CORPORATE LABEL ↗ RIPIXEL.CO.UK