TANGY

2D games for Linux and the 3DS. A love letter to the SNES era.

A free-to-use homebrew 2D engine with Lua scripting — make desktop games with keyboard input, export for Linux and the Nintendo 3DS family, and learn something fun. Simple, easy to learn, and built for educational, non-profit creation.

A love letter to the SNES era — desktop games on Linux today, 3DS homebrew too. Windows and macOS planned.

What is Tangy?

Tangy is a 16-bit-style 2D engine for making games on Linux desktops (keyboard input) and for Nintendo 3DS family homebrew (400×240 @ 60 Hz). Write games in Lua, paint assets in Aseprite, then export with the included tools for Linux or a .3dsx for the 3DS. Windows and macOS targets are planned.

The engine source is not publicly available. You get the compiled runtime, editor, and asset tools for free. Tangy is non-profit and aimed at educational use — not commercial shipping. It is a love letter to the SNES era of Nintendo games: limited colour, tile maps, sprites, and the joy of making something that feels at home on a handheld — or on your desktop.

The Linux download is a single .tar.gz with everything you need to start — runtime, editor, converters, game compiler, and the example projects. Use the same toolchain to ship a desktop game on Linux or pack for the 3DS.

Examples in action

Captured live from the Tangy Linux desktop runtime (keyboard playable). Hello is the easy start; Pong is medium; Platformer shows the full feature set. The same games can be exported for the 3DS family.

Screenshot of the Tangy Pong example running in the desktop runtime
Pong — medium complexity, reused platformer art
Screenshot of the Tangy Platformer example running in the desktop runtime
Platformer — expert-level showcase of the engine

How the examples map to difficulty →

Make art with Aseprite

Tangy sprites and tilesets come from indexed-colour Aseprite files, converted with tngspr and tngtiles. We encourage you to buy the paid version of Aseprite to support its developers. If you prefer, you can also compile Aseprite yourself from source and use it for free.