Projects.
WASMagick
Run ImageMagick filters directly in the browser through WebAssembly. Everything is local: no servers, no uploads.
Audioshare
Stream any audio format, including lossless, with automatic metadata and cover-art parsing. Built for sharing large music files.
Dezoomify-rs-jxl
Download and stitch massive zoomable images from museum archives. Outputs JPEG XL with multithreaded encoding and colour profile preservation.
Voxor
Self-hosted chat with threading, typing indicators, LaTeX rendering, and a CMD+K quick-search modal.
CPUsim
A 16-bit CPU emulator written from scratch, including a custom assembler and binary simulator. Handles arithmetic, stack ops, and function calls.
Streamline
Copy large folders across a local network without SFTP or Samba overhead. Zips, chunks, and transfers in parallel with SHA256 verification.
Linux Keylogger
A minimal daemon that hooks Linux input device drivers to log keystrokes. Written as a low-level systems exercise.
Open Gallery
Browse the National Gallery's collection with full historical metadata, search, and filtering.
RMT-Debrid
Manage torrent downloads through Real-Debrid from a web dashboard, with real-time progress over WebSockets.