Documentation

Tangy games are Lua scripts plus converted assets. Make desktop games with keyboard input on Linux, or export for the Nintendo 3DS family. Start with the examples, then dig into the API and tools. Windows and macOS export are planned.

Getting started

  1. Download the Linux .tar.gz (tools + examples included).
  2. Install or compile Aseprite if you will create art.
  3. Run an example: ./tangy examples/hello/main.lua
  4. Read the Lua API and open examples/*/main.lua to learn by editing.

How scripts work

There is no engine update / draw callback. Your entry file (main.lua by default) runs as a coroutine. Use wait(ms), engine:yield(), and engine:spawn(fn) to structure game loops. Input handlers are registered with input.button_pressed:connect and input.button_released:connect.

Target platforms

Games use a logical display of 400×240 @ 60 Hz (the New 3DS XL top-screen size). Tangy is for:

  • Linux desktops — develop and export standalone games with keyboard input via the SDL2 runtime and tngc (default --target desktop).
  • Nintendo 3DS family homebrew — pack a .3dsx with tngc --target n3ds.
  • Windows and macOS — planned future export targets (tool downloads are placeholders for now).