GUIs for Lua

Options for Graphical User Interfaces in Lua are somewhat limited.

Embed Lua in GUI app

An option that is almost always available it to take a Lua application and design it to fit inside of some other language's GUI framework.

This can be done with callbacks/etc to Lua... as would most GUI frameworks interfacing Lua.

The downside is that it is likely to be more of a challenge to use Lua to dynamically piece together GUI components.

Objective-C Bridge

If using Objective-C, one could, for example, use Cocoa to build your user interface, through which Lua should have full access to UI components and have a reasonably easy time hooking into the framework.

The downside is that the bridge needs TLC and has not been tested much on non-OSX varieties (namely, GNUStep).


This is a nice cross-platform interface to the GTK libraries. Windows, OSX, and Linux provide GTK libraries to which this binds.

Previous experience with this has proven problematic, particularly due to the use of FFI and problems with x86_64 support. It appears that the library has gone through some relatively large changes recently, so I may be in luck.


This interfaces with the wxWindows library which provides a common C++ API to various 'native' underlying toolkits. This can be an option for an application which hopes to have a native look... though some things can be problematic, ESP w/ Aqua (OSX) GUI behavior/appearance guidelines.

Recently this library broke out into the Lua module mode of operations, allowing use of it w/o having to use the 'wxLua' executable. I have yet to test this kit out.

Lua + Qt

There appears to be a few attempts at implementing a Qt binding for Lua... not sure which is the most complete/stable.

Lua + FLTK

There was a binding for Lua 4.0 that was open.. however that is a bit expired.

There has also appeared a recent binding, however that was bundled up in a project to which the license/existence was somewhat of a mess...

This sort of option would be nice, as it allows for a uniform lightweight UI for many platforms.


.... still looking for others out there... hopefully should have better information in the near future, perhaps with useful links...