Work · Built in-house

We built a 16-bit shark game that weighs less than most website logos

Hammerhead Run is a 90-second, 16-bit-style browser game we built from scratch as a technical showcase. You play a great hammerhead on tropical sand flats, pulsing to find buried stingrays and pinning them before time runs out. The whole game is about 23 KB, and nothing loads until you press Play.

Project
Hammerhead Run
Type
Browser game, built in-house
Built
October 2026
Play it
jewelofthesea.agency/play/

Why we built it

We built Hammerhead Run from scratch: no game engine, no templates. Every sprite is drawn in code and every sound is synthesised in the browser. It's a technical showcase, because if we can build this, we can build what you imagine.

It also earns its place on a marketing site: it is something people share, and its end card offers a free SEO & AEO audit.

Play it here

Press Play and the game loads in place. Swim with the arrow keys or W A S D, press Space to pulse, and hold Space next to a revealed ray to pin it. On a phone, drag on the left half and press the right half.

jewelofthesea.agency/play/
Hammerhead Run gameplay: a pixel-art hammerhead shark swimming over bright tropical sand flats.

Plays in place. Sound on. Touch, keyboard or gamepad.

How we built it

No engine. We measured a popular small game engine first: its minimum came to about 53 KB gzipped, more than our whole budget for the game, so we wrote it on the plain Canvas 2D API in strict TypeScript.

Art as text. Every sprite is written in the code as rows of palette numbers and drawn at start-up, in a 16-colour palette. There are no image files.

Sound made live. Every effect and the music loop are synthesised in the browser with the Web Audio API. There are no audio files.

Loads only when asked. The play page ships a poster drawn in CSS and a tiny script. The game itself is fetched only after you press Play.

Accessible. Keyboard, touch and gamepad controls, remappable keys, captions for sounds, a pause menu, and reduced motion when your device asks for it.

A new reef every day. The layout comes from the date, so everyone plays the same reef on the same day.

Results

The numbers

  • ≈23 KB the whole game, gzipped: code, pixel art and sound
  • ≈5 KB the play page before you press Play
  • 0 image or audio files requested during play
  • 100 / 100 / 100 / 100 Lighthouse Performance, Accessibility, Best Practices and SEO, with LCP around 0.8 s
  • 60 fps under 4× CPU throttling, a stand-in for a mid-range phone

Measured October 2026 during development, on the game's own production build (Windows 10, headless Chromium, Lighthouse mobile emulation). We will re-measure on this live site.

Screens

Gameplay: the hammerhead swims over sand flats with the Flow meter, timer and score at the top.
Gameplay at desktop size.
The end card after a run, with the score, a hammerhead fact, Play again, Share and the free audit offer.
The end card, with the score and the audit offer.

Free SEO & AEO audit

Find out how you show up

We'll check how your business appears in Google and in AI answers from ChatGPT, Perplexity, Gemini and Claude, then send you a plain-English list of what to fix first. Free, with no obligation.