FORGE ARCADE

The templates below were generated from a single line of text — layout, difficulty curve, palette, sound and all — and each exports as a signed Android APK that runs with no internet. The hand-built games are here for contrast: same studio, same art-from-code approach, no generator in front of it. Two are Python compiled to WebAssembly; IVORY GAMBIT is TypeScript, and its whole chess engine — board, rules, search — fits in 150 KB.

7 TEMPLATES 5 HAND-BUILT EVERY LEVEL VERIFIED FINISHABLE NO PLUGINS

PLAY

NEON COIL gameplay PLAY

NEON COIL

Hand-built · arcade snake

Free-steering snake with a body that traces real curves. Three modes, six power-ups, eight skins, and a combo chain worth playing for.

Python + pygame, compiled to WebAssembly · zero asset files · 156 automated checks

First load fetches a ~10 MB engine runtime from this site, then the browser caches it.

PLAY NOW GET APK 10.5 MB EMBED
BLOCK BLOOM gameplay PLAY

BLOCK BLOOM

Hand-built · block puzzle

Drag blocks onto an 8x8 board and fill rows to clear them. Smart piece dealing that never hands you a dead board, escalating combos, ten objectives and five themes.

Python + pygame, compiled to WebAssembly · zero asset files · 239 automated checks

First load fetches a ~10 MB engine runtime from this site, then the browser caches it.

PLAY NOW GET APK 10.5 MB EMBED
IVORY GAMBIT gameplay PLAY

IVORY GAMBIT

Hand-built · chess

Full-rules chess with a real engine behind it — six difficulty levels, clocks, puzzles, six themes and a piece set drawn from code rather than downloaded.

TypeScript + Canvas · 150 KB total · 186 automated checks including perft

Starts instantly — no runtime to download. Plays offline once loaded.

PLAY NOW GET APK 65 KB EMBED
EMBERWAKE gameplay PLAY

EMBERWAKE

Hand-built · platform adventure

Ten levels across five worlds, with coyote time, jump buffering and a dash. Secrets, emberstones, seven enemy types and a boss at the end of the sky.

TypeScript + Canvas · 118 KB total · every level proved completable by a solver

Starts instantly. Keyboard, touch and gamepad. Plays offline once loaded.

PLAY NOW GET APK 49 KB EMBED
FEATHER & FETCH gameplay PLAY

FEATHER & FETCH

Hand-built · duck shooting arcade

Aim, shoot, and let Biscuit do the fetching. Seven duck types, nine flight patterns, five environments and four modes — including Open Season, where the birds pile up in the grass until you call the harvester in.

TypeScript + Canvas · 85 KB total · every duck proved fairly hittable by a sweep

Starts instantly. Mouse or touch. Plays offline once loaded.

PLAY NOW GET APK 45 KB EMBED
GLITCH CIRCUIT gameplay PLAY

GLITCH CIRCUIT

Rhythm Dash · reflex

One tap, one life. No menus — die and you are already running again.

10 levels · 174 elements verified · ~5.9 min

PLAY NOW GET APK 361 KB
CINDER SPRINT gameplay PLAY

CINDER SPRINT

Endless Runner · arcade

Auto-run and jump. Twenty levels, then endless mode.

20 levels · 455 elements verified · ~11.5 min

PLAY NOW GET APK 361 KB
VOID RUNNER gameplay PLAY

VOID RUNNER

Tap-to-Fly · arcade

Tap to flap and thread the gaps.

20 levels · 454 elements verified · ~12.1 min

PLAY NOW GET APK 365 KB
WILD DASH gameplay PLAY

WILD DASH

Snake · arcade

Eat, grow, and do not run into yourself.

20 levels · 106 elements verified · ~5.1 min

PLAY NOW GET APK 361 KB
INK EDGE gameplay PLAY

INK EDGE

2048 Merge · board

Swipe to merge tiles and reach the target.

20 levels · 132 elements verified · ~27.6 min

PLAY NOW GET APK 361 KB
THORN SPRINT gameplay PLAY

THORN SPRINT

Memory Match · board

Find every pair before the clock runs out.

20 levels · 168 elements verified · ~12.6 min

PLAY NOW GET APK 361 KB
FROST DRIFT gameplay PLAY

FROST DRIFT

Sliding Puzzle · board

Slide the tiles back into order.

20 levels · 713 elements verified · ~19.2 min

PLAY NOW GET APK 361 KB
Embedding these on another page. Every game here has a frameless version made for iframes, so it plays inside your own page instead of navigating away from it:
<iframe src="https://fojiphoto.github.io/AIGameGen/embed/rhythm-dash-glitch-circuit.html"
        style="width:100%;aspect-ratio:900/506;border:0;border-radius:14px"
        title="GLITCH CIRCUIT"></iframe>
The WebAssembly ones need the two allow permissions, without which they load but stay silent, and each wants a box of its own shape:
<iframe src="https://fojiphoto.github.io/AIGameGen/embed/neon-coil.html"
        style="width:100%;aspect-ratio:16/9;border:0;border-radius:14px"
        allow="autoplay; fullscreen" allowfullscreen
        title="NEON COIL"></iframe>
<iframe src="https://fojiphoto.github.io/AIGameGen/embed/block-bloom.html"
        style="width:100%;aspect-ratio:9/16;border:0;border-radius:14px"
        allow="autoplay; fullscreen" allowfullscreen
        title="BLOCK BLOOM"></iframe>
<iframe src="https://fojiphoto.github.io/AIGameGen/embed/ivory-gambit.html"
        style="width:100%;aspect-ratio:16/9;border:0;border-radius:14px"
        allow="autoplay; fullscreen" allowfullscreen
        title="IVORY GAMBIT"></iframe>
<iframe src="https://fojiphoto.github.io/AIGameGen/embed/emberwake.html"
        style="width:100%;aspect-ratio:16/9;border:0;border-radius:14px"
        allow="autoplay; fullscreen" allowfullscreen
        title="EMBERWAKE"></iframe>
<iframe src="https://fojiphoto.github.io/AIGameGen/embed/feather-and-fetch.html"
        style="width:100%;aspect-ratio:16/9;border:0;border-radius:14px"
        allow="autoplay; fullscreen" allowfullscreen
        title="FEATHER & FETCH"></iframe>
Why "verified finishable" is the interesting part. Levels are generated procedurally, then each one is simulated headlessly before it ships — jump arcs, gap reachability, landing room, move budgets. A level that cannot be completed is re-seeded until it can be. Nothing here was hand-placed, and nothing here is impossible.