Hacker Newsnew | past | comments | ask | show | jobs | submit | _samt_'s commentslogin

I'm thrilled to announce the latest version of rtc, a standalone tool that compiles your Lua 5.4.8 scripts into native Windows .exe applications—no Makefile, no C compiler, and no Lua installation required.

But here’s the real game-changer: rtc supports full static compilation, meaning you can embed Lua binary modules directly into your executable—and they’ll load seamlessly via require() just like regular Lua files. This opens the door to packaging powerful native extensions without worrying about external dependencies.

Static Lua binary modules need just to be recompiled with the lua54-static.lib library from LuaRT distribution (rtc is coded using LuaRT).

Here are the main features :

- Standalone tool – No Makefile or external compiler needed

- Build Windows desktop or console apps

- Static or dynamic executables

- Embed any files – Lua modules, assets, configs

- Access embedded files directly from Lua

- Easy deployment – No Lua installation required


LuaRT extends Lua 5.4 -a language valued for its beginner-friendly syntax and simplicity- to create console and desktop applications on Windows. It includes runtime modules and tools to make development accessible for newcomers while supporting complex tasks with minimal effort.

Key Features

- Beginner-Friendly: Lua’s straightforward syntax makes Luart approachable for novices, while still enabling complex tasks—like crafting GUIs or handling web requests—with concise code.

- Lightweight Runtime: The LuaRT runtime is compact and self-contained, relying on no external libraries, ensuring minimal overhead and easy deployment.

- Object-Oriented Programming: LuaRT enhances Lua with robust OOP support, including multilevel inheritance, mixins, constructors, destructors, properties, and more, for structured and reusable code.

- Asynchronous Programming: LuaRT includes a Task object for asynchronous operations, supporting async/await/after paradigms to simplify non-blocking code (e.g., running tasks in the background or scheduling delayed actions).

- Batteries Included: LuaRT contains lots of modules to cover most of today’s programming tasks, such as: json data parsing, audio playing and recording, clipboard access, Windows registry management, process control, compression, sqlite for database operations, C FFI module to call C functions from your Lua scripts, and more ...

- Enhanced ui Module with Windows light/dark themes, HighDPI support, WebView2 widget for displaying web content, and interact with it from Lua, Hardware-accelerated Direct2D rendering with the Canvas widget.

- Bundled Development Tools: LuaRT Studio IDE, RTBuilder a RAD designer, and rtc, the Lua to executable compiler.

- Documentation: A thorough guide (over 1,000 pages) covers modules, examples, and tutorials,...


Maybe because Lua is an easy and interpreted programming language for beginners ?

Maybe such a big solution is not needed for tiny sized projects ?

Maybe we don't need fatty big executables for the ease of deployment ?


Thank you :) A Grid widget is planned


Yessss! Thank you!


LuaRT is open source, maybe someone will make a MacOS port


Out of curiosity did you test it under Linux with Wine? :)


Yes I have tested it several months ago, and it worked. Don't know now if it's still the case


LuaRT will work on older versions. Latest UI feature (themes, HighDPI) won't work. But any feedback on older versions is welcome


Anything about XP?

PS: I'm not kidding! Some customers (government) are still on XP...


> still on XP

Hopefully not connected to untrusted networks..


actually they are working in separated networks w/o access to internet


LuaRT encapsulates the Windows API around a think object oriented layer for Lua. All objects, properties and functions are organized with Lua modules


I'm the main author of LuaRT. Yes LuaRT can automate Office apps through COM


Can COM automation work between two networked Windows desktops?

Edit: I guess that would be DCOM, https://en.wikipedia.org/wiki/Distributed_Component_Object_M...


I don't have tested this


Great job, thanks for your work !


Thank you :)


Main features:

- Uses latest Lua 5.4.5 VM

- The runtime is lightweight and does not rely on any other libraries

- Desktop/console applications and x86/x64 binaries supported

- A number of built-in modules are available, including GUI, networking, compression, encryption, etc.

- Object-oriented programming with multilevel inheritance, mixins, constructors, destructors, properties...

- The development tools include a Lua script to executable compiler, LuaRT Studio IDE, and a REPL.

Since LuaRT 1.0, here are the main changes :

- New GUI widgets : a Webview2 widget, a Progressbar, and a Canvas to draw graphics

- New modules : json module to encode/decode JSON from/to Lua tables, audio module to play sounds and music with effects and spatialization

- New features : Seamless requiring of embedded Lua binary modules in compiled executables, string module now uses non-encoded strings by default as in standard Lua, Zip file entries removing, ...

- And a lot of bugfixes


LuaRT is a Windows-optimized runtime library and programming environment for Lua, with integrated development tools. This project aims to facilitate Lua programming by better integrating Lua with Windows operating systems.

Main features : - One-click installer (made with LuaRT)

- Latest Lua 5.4.4 VM, with a powerful runtime that does not rely on any other libraries

- Create desktop/console applications for x86/x64 platforms

- A number of built-in modules are available, including GUI, networking, compression, encryption, etc.

- Object-oriented programming with multilevel inheritance, mixins, constructors, destructors, properties...

- Provides an easy script to executable compiler with embedded content and seamless access from your Lua scripts (even from embedded Lua binary modules)

-------------------------------

Main changes in LuaRT 1.3.0:

- Compiled Lua scripts can now require for embedded DLL binary modules without extraction (may not work for all binary modules)

- String module now uses non-encoded strings by default, as standard Lua (UTF8 functions are still available, but prefixed by "u")


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: