Browse free open source Lua User Interface (UI) Software and projects below. Use the toggles on the left to filter open source Lua User Interface (UI) Software by OS, license, language, programming language, and project status.
Custom VMs From 1 to 96 vCPUs With 99.95% Uptime
General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.
Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
Start Free
Fully Managed MySQL, PostgreSQL, and SQL Server
Automatic backups, patching, replication, and failover. Focus on your app, not your database.
Cloud SQL handles your database ops end to end, so you can focus on your app.
IUP is a portable toolkit for building graphical user interfaces. It offers a configuration API in three basic languages: C, Lua and LED. IUP purpose is to allow a program to be executed in different systems without any modification.
Crazy Eddie's GUI (CEGUI) system is a graphical user interface C++ library. It was designed particularly for the needs of videogames, but the library is usable for non-game tasks, such as any other type of applications (rendering/visualisation/virtual reality) and tools. It is designed for user flexibility in look-and-feel, as well as being adaptable to the user's choice in tools and operating systems.
Established in 2003, CEGUI sees continual, active development and remains one of the most powerful and most popular options for developers requiring an adaptable and efficient GUI solution.
CEGUI is fully supported by the developers that created - and continue to develop - the library, and who are accessible via the project's dedicated internet forums and IRC channel.
For more information, more screenshots and for news, check out out our homepage: http://cegui.org.uk
The repository is now at bitbucket (including our issue/bug tracker): https://bitbucket.org/cegui
wxCode project is a collection of reusable components based on the cross-platform wxWidgets GUI toolkit. The project provides various tools and facilities for building, maintaining and releasing wxWidgets-based code. Visit the website for more info.
Note: As of January 2018 this project has been retired.
New customers can spin up VMs, build with AI, and query data at no cost.
Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
Performant, batteries-included completion plugin for Neovim
blink.cmp is a Neovim plugin that provides visual feedback during autocompletion using nvim-cmp. It highlights matched characters in completion items by making them blink, helping users better understand how their input corresponds to the suggestions. This is especially helpful in noisy or dense suggestion lists.
wxLua is a Lua scripting language wrapper for the wxWidgets cross-platform GUI library. It consists of executables for editing, running, and debugging wxLua scripts, a library for extending C++ programs with a fast, small, fully embeddable scripting language, and a variety of sample programs. With wxLua you can quickly write full-featured programs with graphics, networking, printing, etc. for MS Windows, Linux, and OSX.
A declarative UI library for Roblox Lua inspired by React
Roact is a declarative view management library for Roblox that is similar to Facebook’s React. You can use Roact to create dynamic graphical user interfaces in Roblox games. Combine with Rodux for optimal syncing with game data when creating GUIs.
Roact has many similarities with React: it exposes an API much like React’s, implements nearly identical semantics, and is made out of elements.
Neovim plugin to preview the contents of the registers
Show register content when you try to access it in Neovim. Written in Lua. This plugin adds an interactive and visually pleasing UI for selecting what register item to paste or use next. It offers basic syntax highlighting, a preview, and an equally (if not more) efficient experience using Neovim registers. One simply uses " or CtrlR as one would normally, and then enjoys the benefit of seeing the contents of all filled registers without having to use the :reg command beforehand. It essentially removes an annoying step in using Neovim registers (checking where a specific item is, which register you might have used earlier, etc.), and lets you increase your efficiency while also increasing Neovim’s aesthetic.
An open process control and laser engraving software solution
An extensive and multi-platform visualisation, process control and HMI application that supports many different devices via an open plug-in interface. Beside a visual GUI editor a debugger is part of the package.
VCLua is a toolkit library for building graphical user interfaces. VCLua allows a program to be executed on different os systems without any modification.
VCLua can be compiled with the Free Pascal based Lazarus compiler into one easy portable file.
To use VCLua you'll need only the Lua script interpreter.
VCLua currently tested on Windows and Linux.
Mac OS X and Windows OpenGL 3D Engine tools, content and code to create games and applications. Newton physics, OpenAL sound with OGG Vorbis, Lua, Revolution, written in C.
Neovim plugin to improve the default vim.ui interfaces
Dressing.nvim is a Neovim plugin that improves the default interfaces provided by vim.ui.input and vim.ui.select. It replaces basic prompts and selection menus with more polished and configurable interfaces. Input prompts can appear in floating windows with adjustable dimensions, positioning, borders, and mappings. Selection interfaces can use built-in menus or integrate with external pickers such as Telescope, fzf-lua, Nui, and Snacks. The plugin intentionally preserves Neovim's standard vim.ui API so other plugins can use it without custom parameters. The repository was archived in February 2025 and remains available for existing configurations, although Snacks.nvim is recommended as an alternative.
Everforest is a calm, green-tinted color scheme designed to reduce eye strain with soft contrast and carefully tuned foreground–background relationships. It ships in light and dark variants and lets you pick soft, medium, or hard contrast levels so you can match different displays and lighting conditions. The palette emphasizes readable, desaturated hues for comments and subtle accents for keywords, strings, and diagnostics. It supports true color terminals and is designed to look consistent across GUI Vim, terminal Vim, and Neovim. The theme includes highlight groups for many popular plugins, so statuslines, file explorers, and LSP diagnostics blend naturally. It aims for legible syntax differentiation without harsh saturation, making it well-suited to long coding or writing sessions.
Leadwerks Arena is an open source first-person/third-person arena game for online play between players. It is a community created tech demo for the Leadwerks Engine 2.1 and showcase of Phoenix.Framework.
Library to use the Gnome libraries from Lua, incl. GLib, GTK and others. Currently about 9000 functions and 1900 structures are supported, even though the tested part is rather small. The code is here in the GIT repository.
NOTICE: This project is not maintained anymore. A better alternative is the GIR based lgi project, see this link:
https://github.com/pavouk/lgi/
Ops is a C++ library and a Python module for reading configuration files. The files are written in Lua, which makes the configuration files easy to read and write for the beginner, and yet very powerful for advanced users.
SkyFireGMH is an administration addon for the SkyFireEMU project. This addon is LUA/XML/Addon Native and all rights are hereby reserved by the creator (Alex Summers) until further notice beginning Dec 26th 2011
A clean, dark Neovim theme written in Lua, with support for lsp
A dark and light Neovim theme written in Lua ported from the Visual Studio Code TokyoNight theme. Includes extra themes for Kitty, Alacrity, iTerm, and Fish.
A lot of people have mappings like jk or jj to escape insert mode. The problem with these mappings is that whenever you type a j, neovim wait about 100-500ms (depending on your timeoutlen) to see if you type a j or a k because these are mapped. Only after that time, the j will be inserted. Then you always get a delay when typing a j.
You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.