User Interface Developer Β· Minimalist Β· Keyboardist πΉ β¨οΈ
I build clean, accessible, well-tested front-ends β and the tools that make building them nicer.
- π¦πΊ Based in Australia
- πΌ Front-end work over the years for teams including the Digital Transformation Agency, Service NSW, ANZ, Coles, Optus, Bupa, amaysim and Revolut
- π§ͺ Obsessed with testing, types and developer experience β towards zero bugs
- βοΈ I write about software craft at conwy.co
- π€ Open to interesting conversations and collaborations
π§ͺ testmatic |
π¬οΈ tailwindjs |
π higen |
π braggart |
π ts-pipeline |
π bond-calc |
π§© XmlToDynamic βdynamic object.
|
βοΈ react-mvp |
ποΈ More things I've made
| Project | What it does |
|---|---|
| conwy | Source for my personal website, conwy.co |
| checklists | Useful checklists for software professionals of various stripes |
| combinator | Generates lots of combinations β handy for unit tests |
| diary | CLI for generating Markdown-based diary files |
| react-progressive-forms | Server-rendered, progressively enhanced forms with React |
| react-router-wizard | Assemble components into a wizard, powered by react-router |
| react-sr-pronounce | Control how screen-readers pronounce your content |
| code-selectors | A convention for referencing parts of code |
| htmldoc | A documentation standard for HTML |
| pasta | π Copy/paste templates in your hand |
| CONstruct | A 2004 Windows app for editing Duke Nukem 3D CON files πΉοΈ |
- π Towards zero bugs
- π€ AI replacement theory: a critique
- π§± Types vs assertions
- π Self-similar: a versatile folder pattern for code
- β Testing steps
- π Why write?
β‘οΈ More articles on conwy.co


