finds.dev← search

// the find

rogerboesch/lineforge

★ 2 · C · updated Sep 2026

Unity inspired Retro Engine with JS support

A hobby game engine written in C/C++ that renders everything as glowing vector lines instead of filled polygons, with a Unity-style scene graph, QuickJS-based JS scripting, and the unusual ability to stream the actual line output over TCP to real vector hardware like a Vectrex or Atari ST. This is for people who want to build games for vector displays or just like the aesthetic, not a general-purpose engine.

The remote display protocol is the standout feature — streaming rendered lines over TCP to a Vectrex via PiTrex, an Atari Jaguar, or an Atari ST is a genuinely unusual and well-thought-out piece of engineering, and it's documented at the protocol level (9 bytes per line, 3 packet types). Scenes are plain YAML and the component system (Mesh, Collider, Animator, Script, etc.) mirrors something like Unity closely enough to be immediately legible. Embedding QuickJS directly into the binary for scripting is a sane, lightweight choice compared to pulling in a full V8 or Lua+bindings setup. There are three complete, playable demo games (Vexxon, Skyfang, a Q*bert clone) in the repo, which proves the engine isn't just a renderer with no gameplay loop built on top of it.

No LICENSE file anywhere in the tree, which makes the legal status of using or forking this unclear. Documentation is duplicated across doc/, docs/, and homepage/editor/doc with no obvious single source of truth, so it's unclear which copy is current. There's no CI configuration and no visible test suite for the engine code itself (only QuickJS's own vendored tests), so correctness of the renderer, scene serializer, or component system rests entirely on manual testing. Build instructions only cover macOS and Linux/Raspberry Pi — nothing for Windows despite using SDL2, which is cross-platform and would normally support it.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →