Independent Software Engineering
Browser software, built end to end.
I design, build, test and ship Manifest V3 Chrome extensions and browser-native systems — architecture through automated testing to the store listing. Every project on this site: one engineer, no team to hand the hard parts to.
What I build
Three kinds of work, one way of working
Different surfaces, same discipline: pure logic separated from the interface, tested headlessly, and shipped without an analytics tag anywhere in it.
Chrome Extensions
Manifest V3 across side panel, popup and new-tab surfaces. Local storage only, minimal permissions, and a permission-versus-code audit before every store submission.
Idle Games and Simulation
Economy curve design, offline-accrual math, and headless simulation harnesses that fast-forward thirty in-game days in seconds to catch balance and concurrency bugs.
Automation and Tooling
Python automation, browser RPA against legacy systems, reporting pipelines, and the document workflows behind a working legal-services operation.
Flagship — on the Chrome Web Store
Dota Companion
A private Dota 2 dashboard that grew a second half. It tracks whether you are actually improving — a streak counted against your own GPM baseline, not against attendance — and it values your entire Steam inventory against the Community Market. No account, no API key, nothing stored anywhere but your own machine. Version 2.5 moves it into Chrome’s side panel and adds hero reviews, searchable Guides, a ward map and share cards.
What it does
Improvement streaks, goals measured against your current twenty-game average, hero splits, and private notes on people you queue with. Then a full-page inventory view: every item priced, grouped and searchable, with a value history built from your own refreshes rather than a market average.
The part a price cannot tell you
Because it already reads your match history, it can cross the two: how much of your cosmetic spend is riding on heroes you actually play, and how much is parked on heroes you have not picked in twenty games. Every other inventory tool has the price lookup. None of them have the second dataset.
Flagship — on the Chrome Web Store, version 2.0
Annoying Dino
A mischievous dinosaur that lives on whatever page you are reading. He chases your cursor, perches on headings, lays eggs that hatch into friends, delivers joke cards, and occasionally survives a meteor. Version 2.0 rebuilt the lot — a new motion system, five species, volcanoes, a wardrobe and a fossil record — on the same three permissions as before.
What he does
Roams the page and leaves footprints, chases the pointer and either chomps or tail-bonks it when he catches it, naps in the middle of your article, roars at nothing in particular, and brings friends: hatchlings that follow him around and the occasional pterodactyl fly-by.
What he does not do
Touch the page. Everything he does is drawn in his own layer, and the site underneath is never modified. No network requests, no analytics, no account — and 2.0 added nothing to the permission list, so nobody who already had him installed saw a new warning.
Who this is for
Depends why you are here
Hiring teams
Every project here was specified, built, tested and shipped by one person. The engineering section above and the devlog are the evidence — including the parts where something broke and had to be diagnosed properly.
Agencies and collaborators
Browser-native work, automation against systems that were never meant to be automated, and internal tooling. If it runs in a tab or cleans up a manual process, it is probably in scope.
People who just want the thing
Most of these are free on the Chrome Web Store and run entirely offline. No sign-up, no email capture, nothing phoning home. Pick one from the list below and install it.
Selected work
Projects
A selection. The full index, with per-project privacy details, is on the projects page.
A cozy new tab where a kawaii raccoon tidies up on his own and feeds the litter to Dumpy, a friendly dumpster fire. No account, no analytics. Coming to the Chrome Web Store.
A free website report card. Paste a public page and get a grade for security, SEO, accessibility, best practices and speed, plus the top fixes in plain English.
An idle game about a wizard’s tower. Build rooms, send familiars out, compose spells from runes and Ascend. Free in the browser.
Wreck any web page with a hammer, fire or a quake, then mend the cracks in gold or let it grow wild. Chaos Mode hands the tools to a small black cat that picks its own targets. Nothing leaves your browser.
An idle game about a healer who cannot attack. Pick a road, pick your creature friends and keep them alive with songs while they do the fighting. Free in the arcade and on itch.io.
The complete showcase index, including the legal-tech and automation work.
Ask
There is an AI on this site now
It answers questions about what gets built here, and it will work through a build decision with you — decompose, find the flaw, resolve, check. It is deliberately short, and it says “I don’t know” rather than inventing a version number.
Ask about the work
What these extensions do, how they are tested, and whether I am free for a project. It points at the real page instead of guessing at details.
Bring a stuck decision
Side panel or popup, a bug that only appears on a double click, an idle curve that went flat. Real constraints get better answers than tidy questions.
Built on a free tier
A Val Town proxy holds the key and enforces a four-axis budget against Groq’s free tier. The whole build is written up in the devlog.
Devlog
Recent shipping notes
Questions
Before you ask
Are you available for work?
What is the actual stack?
Why is there no telemetry in any of this?
Did you build all of this alone?
Where do the numbers on this page come from?
What is Annoying Dino?
Let us build something
Open to contract work, collaboration, or a technical role. Tell me what you are trying to make work.
Replies come from a person · usually same day
WRITEUPS
Read the work, not just the list
Long-form case studies live on the writing index, with short direct answers to the same questions on the answers page. For the professional summary, see the CV. The engineering profile covers how the work gets built. There is also a Positivity Wall — a shared nine-panel surface where every visitor leaves one generated stamp, and yours is still there when you return.
DEVLOG
New builds, in your inbox
Occasional notes on what shipped, what broke, and what the fix actually was. No schedule, no marketing.