I'm a self-taught developer with a broad range of interests from writing compilers and OS kernels from scratch to building desktop apps, games, and VFX tools. I like working close to the metal but I'm equally comfortable up the stack in TypeScript and React. A lot of what I build starts with a real-world problem if something can be made better with code, I'll have a go at it.
A compiler for L, a statically-typed language I designed and built from scratch. L compiles to native Linux x86-64 binaries via NASM no VM, no interpreter, no runtime. Features automatic memory management (no GC, no manual free), structs with inheritance, pattern matching, inline assembly, and a standard library. Includes a VS Code extension with syntax highlighting and a language server.
Stack: TypeScript, NASM, x86-64 assembly
A full-featured corner shop POS (point of sale) desktop application. Handles products, stock, offers/discounts, VAT, cash up, refunds, role-based staff auth, and receipt printing.
Stack: Electron, React, TypeScript, SQLite
A bootable x86-32 operating system kernel written in C and NASM assembly. Boots via GRUB, implements an IDT, exception handlers, PIC, keyboard driver, text-mode display, and a basic filesystem. Runs in QEMU.
Stack: C, x86 Assembly, NASM
Multiplayer online card game with real-time WebSocket communication for game state sync.
Stack: TypeScript, Node.js, Express, Socket.io
A login and user management system built for the Sea Cadets charity. No longer maintained as source code lost during OS change
A functioning HTTP web server written entirely in PowerShell, built as an experiment to see how far the language could be pushed outside its intended use case.
Stack: PowerShell
A radial menu UI for triggering keybinds in heavily modded packs, so you're not stuck cramming everything onto a full keyboard. Fabric support spans Minecraft 1.20.4 through 26.2 from a single source tree via Stonecutter multi-version tooling. A Forge port is planned.
Stack: Java, Fabric
