Skip to content

Seer

Reverse-engineer classic games, data-file-first. Seer extracts, transforms, and renders original game data in the browser.

Seer is a TypeScript toolkit — split into scoped @seer-project/* packages — for building browser reimplementations of classic games by working directly with their original data files.

  • @seer-project/amiga — AmigaOS binary-format parsing — HUNK executables and relocatable modules.
  • @seer-project/audio-dsp — Format-agnostic real-time-audio primitives shared by @seer-project's synthesis engines — a block-render driver, voice mixdown, and fractional-position (optio...
  • @seer-project/audio-ui — Shared bottom-docked audio-bar UI chrome for the viewer tool.
  • @seer-project/canvas-export — Asset-agnostic canvas capture: watermarked screenshot export, deterministic video-clip recording, and a shared toggle-popover controller.
  • @seer-project/core — Generic binary utilities for browser-based reverse-engineering projects.
  • create-seer-app — Scaffold a seer project — a browser-based, data-file-first game reverse-engineering project — or just its asset viewer or docs site into a project you alread...
  • @seer-project/dungeon — A generic first-person grid-dungeon walker — the schema, raster and presenter layers shared by every game-specific dungeon renderer in Seer.
  • @seer-project/engine-2d — PixiJS-based 2D runtime engine with camera, input, and display management.
  • @seer-project/engine-3d — Format-agnostic three.js viewport, glTF loading, and a {verts,edges,faces} polygon-model adapter shared by @seer-project's 3D mesh viewers.
  • @seer-project/gfx — Retro bitmap pixel-format decoders — currently the Amiga/Atari-ST planar slice.
  • @seer-project/iff — IFF-85 (Interchange File Format) parser.
  • @seer-project/mesh-viewer-ui — Shared mesh-viewer settings-panel UI chrome.
  • @seer-project/pipeline — Node-only utilities for the offline data extraction pipeline.
  • @seer-project/probe — Agent-legible binary recon for 16-bit targets — the exploratory front end of a reverse-engineering session.
  • @seer-project/retro-display — Post-display simulation — CRT shadow mask, aperture grille, slot mask, LCD subpixel — for any canvas or image source.
  • @seer-project/smus — SMUS (Simple Musical Score) interpreter and Sonix audio engine.
  • @seer-project/tracker — Custom 4-channel Paula sample-based tracker module parser and player — the Dune Amiga audio engine.
  • Recompilation surveys — the state of native static recompilation, one doc per platform (Amiga, DOS, SNES, Mega Drive, GBA, DS, 3DS, PSX, PS2, PS3, PS4, Saturn, GameCube/Wii, Wii U, Switch, arcade), plus the engine-based porting alternative. Read these before treating a native port as a stretch goal.
  • Guides — the asset viewer, and the shared audio playback architecture.
  • Examples — a real project migrated onto the framework.