Web and mobile app to track, manage and discuss NFT collections
Todo Emojis
Checkbox emojis for todo lists in Slack
Alias HQ
The end-to-end solution for migrating to and using path aliases
Control Space
Browser tab / workflow manager
How do AIs code as well as they do?
Claude AI explains in its own words how it writes such good code
Nuxt Content Assets
Enable locally-located assets in Nuxt Content
Vue Class Store
Universal Vue stores you write once and use anywhere
Forgd
Data-driven tools & advisory services for blockchain token launch
Clear Bank
Development of internal banking systems and tooling
State Machine
A powerful yet simply-configured JavaScript finite-state machine
Modular site architecture with Nuxt layers
Build sites that scale by organising code by domain, not concern
WorkFlowy MultiFlow
Multi-column view for WorkFlowy
Asterisk
Greenfield build of peer to peer securities lending platform
Twosday's hidden analogue symmetry
22:22 is palindromic and ambigramic, but what about its analogue form?
A guide to MSAL authentication in Vue
Architect a Vue JS app secured with Microsoft Authentication Library
On mindsets, mind shifts and wins
A 10-year (ish) retrospective of self-reflection and improvement
Branding Experiment
Branding experiment with overlays and colour mapping
The work is never just “the work”
A deep dive on why projects always take longer and a framework to improve future estimation
Sentiance
Development of data visualisation dashboard for data science firm
FairSquare
Greenfield build of car finance and sales platform
Got Paper?
A cheeky app to calculate your toilet paper requirements
Outliner
Convert SVG strokes to outlined fills as a post-export process
I started out in Animation and Flash, which taught me how things should feel. I've spent 10 years building web applications, which taught me how things should work.
Now I combine both to create eye-catching and satisfying experiences:
Right now I specialise in UI architecture, component libraries, and design systems – but I'm just as comfortable working across the full application stack.
I'm available for contract work or permanent roles where I get to work across design, product, and engineering.