Projects
A collection of things I've built over the years. From developer tools and browser extensions to games and libraries — mostly open source on GitHub.
Featured
Organise
A week-first task planner that centres everything around the weekly view — the natural rhythm for getting meaningful work done.
Hao's Search
A fast custom search engine with DuckDuckGo bang redirect support, designed to replace the slow default bang redirects.
Invoice Builder
A clean invoice builder for generating professional invoices with multi-currency support and domestic/international payment details.
Sudoku
A browser-based Sudoku puzzle game with multiple difficulty levels and a clean, minimal interface.
Money Workspace
A personal finance dashboard for tracking expenses, budgets, and financial goals.
Serina
Natural language parser for date and time in JavaScript. Parses human-readable date/time strings into structured data.
Slash Dash RPG
A browser RPG built for fun with React and xState, featuring inventory management, combat, character stats and more.
DOM Plus
A lightweight JavaScript rendering library designed to be easy to pick up and use, with zero dependencies.
All projects
Crypto Wallet
A cryptocurrency portfolio tracker that automatically updates your net worth based on the latest prices.
Clean GitHub Timeline
Chrome extension that hides noisy GitHub Actions entries from PR timelines for a cleaner review experience.
Outlook Email Ad Remover
Browser script to remove the ad section from Microsoft Outlook web mail.
Userscripts
A collection of browser userscripts for enhancing various websites.
Finance Calc
A financial calculator for take-home salary, student loans, mortgage calculations and more.
Astro Blog
Migration of the Gatsby-based personal blog over to Astro.
Bus Timetable Converter
A Python script that converts bus timetables from CSV format into JSON.
Time Tracker
A time tracking application for managing tasks and work sessions.
Top Level Domain Lookup
A Vue.js single-page app for searching and filtering top-level domain names.
Material Colors
A simple SASS/CSS library implementing Google's Material Design colour palette.
New Machine Setup
Instructions and scripts for setting up a new Mac with preferred development settings and configurations.
Home Server
Configuration files and documentation for a self-hosted home server setup.