I'm a computer science graduate interested in graduate software engineering roles. I build applications around things I care about, working across interactive interfaces, application logic, and data storage.
Selected projects: Melt · portfolio sandbox · Gym Paradise · 3D gym builder
Market Exposure & Learning Tool. Make portfolio allocation tangible.
A working local application built with TypeScript, React, Canvas 2D, D3 and Node.js. Real Finnhub quotes drive a virtual-money portfolio: each holding becomes a slime blob sized by its dollar value. Drag between holdings to stage a transfer, review the exact amount, and see the allocation change.
The expressive interface sits on a tested decimal accounting model, with fractional shares, reversible transfers, quote-freshness checks, validated backups, and independent price-shock scenarios. The repository includes deterministic unit and browser tests, accessibility checks, architecture decisions, and an independent code-review record.
Explore the repository · Architecture · Run it locally · Checks
Paper portfolio only. No real trades or investment advice. Local use requires your own Finnhub key; there is no public shared-key demo.
Design a dream gym, customise the space, then step inside it in 3D.
A working browser prototype built with TypeScript, React, Babylon.js and Cloudflare Workers. It combines a 36-type equipment catalogue, first-person navigation, room customisation, private photo storage and training records.
The engineering work includes validated placement, camera controls, revision-based save conflicts, ownership checks, and automated tests. The repository includes real screenshots, architecture notes, a roadmap, and a local demo that needs no cloud account.
Explore the repository · Architecture · Run it locally · Checks
- Interfaces and graphics: TypeScript, React, Canvas 2D, D3, Babylon.js, responsive CSS and touch interaction.
- Application engineering: decimal accounting, validation, HTTP and streaming APIs, SQL, private storage and concurrency handling.
- Development workflow: GitHub Actions, Vitest, Playwright, accessibility checks, reproducible setup and documented design decisions.
I pair visual experimentation with conventional controls, explicit validation, regression tests, and documented trade-offs. Each featured repository has real screenshots, setup instructions, and a candid account of what is and is not implemented.
My projects are built iteratively with AI assistance. Product direction, implementation, verification, and remaining limitations are documented alongside the code. Current priorities include broader browser and physical-device testing, accessible interactions, and rendering performance.

