Harry Jenkins

I build developer tools and games. Most of the work on this page is published somewhere you can install it or play it: the JetBrains Marketplace, NuGet, npm, Steam and the browser.

I study at Monash University and I am looking for work as a software engineer.

Projects

Monopoly Deal

The Monopoly Deal card game in the browser, with no game server. The host's browser runs the rules and sends each guest only what that guest is allowed to see.

A player who reloads gets their seat back within 120 seconds. Vitest covers the rules and Playwright plays full games end to end.

TypeScript, React, Zustand, Zod, WebRTC through Trystero

Sliced

A PvP arena game with dismemberment. It has free for all, team deathmatch, king of the hill and capture the flag.

It has its own lobby system with bots, and networked multiplayer through Steamworks.

C#, .NET 10, Godot, Steamworks SDK

Highlight on Copy

A plugin for JetBrains IDEs that flashes the text you copy, so you can see what went to the clipboard. It works in every IntelliJ based IDE and has more than 1,200 downloads.

Copy any text on this page to see it.

Kotlin, IntelliJ Platform SDK

Claude Agent SDK for .NET

A typed C# SDK for the Claude Code agent protocol, ported from the official Python SDK. It supports streaming, hooks, tool permissions, sessions and MCP tools.

It works with NativeAOT, so the JSON schemas are made at build time.

C#, .NET 10, NativeAOT

Outlook Mail MCP

A read-only CLI and MCP server that searches personal Outlook mail through Microsoft Graph. The CLI and the server share one core.

Zod checks every Graph response, and 232 Vitest tests run against a mocked Graph.

TypeScript, Node.js, MCP SDK, Microsoft Graph, Zod

agsearch

A command line tool that searches local Claude Code and Codex conversation transcripts. It reads both formats into one typed model and reports failures and token use.

Each release has native binaries for Windows, macOS and Linux.

Rust, Clap, Serde

Solar Engineer

A web app to design solar panel installs, with real-time collaborative editing over SignalR.

The backend is a set of ASP.NET services in Docker, built and tested on GitHub Actions.

Angular, NgRx, ASP.NET, SignalR, Docker, Azure

Ankive

A command line tool that syncs Markdown flashcards to Anki in both directions. It handles cloze deletions, LaTeX and Mermaid diagrams.

The integration tests run against a headless Anki in Docker.

C#, .NET 10, NativeAOT, Testcontainers

GodotUnit

A unit testing framework for Godot C#. Source generators find the tests at build time and Roslyn analyzers report mistakes in test code.

C#, .NET 10, Roslyn