All projects

Serious and not-so-serious projects, side projects and ideas that I have worked on. Not all are complete but they should be functional. Almost all are open source.


YouTube Summariser

Summarise YouTube videos with AI

YouTube Subtitle Transcript

A Typescript library for fetching transcripts of YouTube videos


Generate domain names with GPT & logos with Stable Diffusion

Animal Guesser

Exploring using GPT as an AI for simple games

AI Horde Text UI

A web UI for interacting with the AI Horde's text generation models


Tailwind to CSS

Convert tailwind utilities to CSS

Googly Eyes Generator

Generate googly eyes on objects with stable diffusion

Kind Wordle

A kinder version of Wordle that gives you all vowels


Pipe output from command line programs to a web page


Emoji Maker

Create custom emoji

Temperature Blanket

Inspired by knitted/crocheted temperature blankets that have a coloured row for every day of the year

Guess the width

Can you drag the div to the right width?


Safe Santa Pictures

A COVID safe photo opportunity


A custom React hook for the Screen Wake Lock API


Convert *emphasis* to ✨emphasis✨ in markdown documents

Headless Wordpress with Next.js

A rewrite of Netlify's Headless WordPress JAMstack Template from Nuxt.js to Next.js

Junior Developer Jobs

A collation of recent tweets advertising junior developer positions


CSS mechanical keyboard

I postponed buying a mechanical keyboard by making a CSS one

Christmas e-cards

A 2000s inspired Christmas e-card generator

Firebase authentication

An example app using Firebase authentication with React & Express

Smile on five

A smol facial expression recognition game

Gatsby e-commerce

A Gatsby e-commerce site that uses Stripe integration & Netlify Functions

Australia votes

A collection of 67,284 public tweets published on the night of the 2019 Australian election


A starter template for using Python with Node.js and Websocket

micro:bit demos

A collection of demos for the micro:bit

Split flap

A fun project modelled on a split flap display


Guess the sketch

Can you guess what Magenta's sketch-rnn model is drawing?

Prototype based programming

A discussion on prototype based programming (with a focus on JavaScript) chat

An exploration into displaying chat unconventionally

Git branches

An introductory guide on using branches