LGI is a gobject-introspection based dynamic Lua binding to GObject-based libraries. It allows using GObject-based libraries directly from Lua.