Back to browse
GitHub Repository

Lemmings in HTML-in-Canvas

0 starsJavaScript

Lemmings in HTML in Canvas

by VorticonCmdr·Jul 26, 2026·1 point·2 comments

AI Analysis

●●●BangerWizardryBig BrainNiche Gem

DOM entities rendered inside canvas with native hit-testing using experimental Chrome API.

Strengths
  • HTML-in-Canvas API allows real div elements as canvas children with native accessibility
  • Reconstructed undocumented EGA, CGA, Tandy graphics modes and 2-player levels
  • Ghidra and DOSBox MCP integration enabled discovering undocumented audio hardware behavior
Weaknesses
  • Requires Chrome Canary with non-standard flags, excluding Safari and Firefox users entirely
  • Heavy reliance on Claude Code makes it unclear what portions are author vs agent work
Category
Target Audience

Browser game developers, retro gaming enthusiasts, ECS architecture explorers

Similar To

DHTML Lemmings · LemmingsJS · Lemmings.ts

Post Description

For fun I decided I wanted to reimplement Lemmings using HTML-in-cavas and a DOM-based Entity-Component-System. I made heavy use of Claude Code (using only Sonnet 5 High) and I used everything already published on this topic. I used already existing HTML ports (like DHTML Lemmings, LemmingsJS and Lemmings.ts) to kickstart development.

Even though I was able to add some new stuff like EGA, CGA and Tandy as well as Adlib, Tandy and PC Speaker that wasn't documented (or I didn't find it). I, or rather Sonnet, was able to do so because I hooked it up to a Ghidra MCP and a DOSBox MCP.

At some point feature creep set in so I am guessing there are still a few things not working as intended. I'd love to hear all about it.

Similar Projects

Giving HTML, Canvas Superpowers

355 LOC Chromium hack for Figma-like HTML performance, but security concerns unaddressed.

Bold Bet
yeargun
203mo ago
Design●●●Banger

Design Graph – a canvas for reviewing parallel HTML variants

Fixes AI design tools' static page problem by mapping screens into interactive flow graphs.

Big BrainSolve My Problem
SebastianSosa
203mo ago