Start with one package—or the complete SDK
Install Flight, import only the capabilities you need, and let your bundler remove the rest.
npm i @flighthq/sdkRendered live with Flight. The same scene runs on every backend — Canvas, DOM, WebGL, WebGPU — through one API.
See Flight in action
See Flight recreations of OpenFL, Starling, and AwayJS applications—including games and complete 3D scenes—running across Flight’s renderers.
Original implementation, explicit provenance. Flight is MIT-licensed original work developed by Joshua Granick in collaboration with coding agents. The Ports gallery recreates applications against Flight APIs; it does not embed the original frameworks. Agent work is governed by repository rules that prohibit incorporating third-party implementations. Read the provenance policy →
Built by agents. Governed like production software.
Flight is developed by a coordinated fleet of coding agents running through Quimby, purpose-built orchestration infrastructure that provisions isolated workspaces across local and remote hosts, routes work between agents, and keeps every merge under human control.
Coordinated development
Agents work concurrently in isolated workspaces across local and remote hosts.
Human-gated delivery
Quimby routes every change through review before it can enter the codebase.
Machine-enforced quality
Human and agent contributions clear the same tests, coverage, architecture, packaging, and bundle-size gates.
Explicit by design
Bounded packages, plain data, descriptive symbols, and deterministic output make the system legible to people and machines.
Designed to be read and written by machines
Explicit, not magic
Simulation, rendering, and resource passes are all invoked by name. No hidden state, no eager side effects on import.
Plain data
Colors are packed integers, physics bodies are descriptors, transforms write to out-params. Free functions over deep class hierarchies.
Self-identifying names
Every exported name carries the full type it operates on, so a symbol leads straight to its domain — grepable by design.
Bounded & owned
Tree-shakable packages with explicit ownership and clear contracts — import one in isolation and understand it in full.
Everything available. Only what's needed.
Every package is tree-shakable and side-effect-free, so a build ships only what it uses — a shape and a renderer, not an entire engine.
gzipped · measured from the project's size baseline
Built to ship at scale
Backed by mutation analysis and machine-enforced gates. Inspect the CI runs on GitHub.
One source. Three languages.
Flight’s Rust and Haxe ports are mechanically generated from TypeScript through a normalized intermediate representation. Deterministic emission keeps the APIs synchronized without maintaining three implementations by hand.
Made for visual software at any scale
Games & simulations
Compose rendering, animation, input, collision, and physics without adopting a monolithic engine.
Interactive products
Build data-rich interfaces and visual experiences across DOM, Canvas, WebGL, and WebGPU.
Agent-generated applications
Give coding agents explicit, searchable APIs with clear ownership and predictable runtime behavior.
Cross-language systems
Share the same API design across TypeScript, Rust, and Haxe through deterministic generation.
Feature set
3D
Physics & Collision
Effects
Build with Flight
Start with a focused example, install the complete SDK, or inspect the source.