Lua - Reddit – Telegram
Lua - Reddit
30 subscribers
278 photos
31 videos
4.23K links
News and discussion for the Lua programming language.

Subreddit: https://www.reddit.com/r/lua

Powered by : @r_channels & @reddit2telegram
Download Telegram
please ban roblox studio posts

Right off the bat it is not because they are bad or have bad intentions. But there are many other places for these things with more knowledgeable communities such as r/robloxgamedev and r/ROBLOXstudio.

95% of help posts for these are just "i know nothing, where can i learn" (which all have same answer and don't need a post. 5 seconds of google search can solve this.) or "i know nothing, looking for devs to teach me and help me make my game" (no one wants to help someone with 0 experience make a game/dedicate their time when there are thousands of pre existing online guides)

So because:
1. There are better places for roblox related posts
2. Most posts are made by noobs and have same answers
3. They make it a bit hard to find non-roblox posts (not as much in this sub but still)
4. NOT because the OP has bad intentions

Roblox related posts should be banned (unless they have a good reason to be in specifically this sub, such as conparing to other lua variations)

https://redd.it/1pf3tkt
@r_lua
Anyone know how to code with Lua on roblox and willing to teach me or help me make a game



https://redd.it/1pf1ey6
@r_lua
Mini not-so noscripting language in Lua

Hi! I've been working on a project for the past few days. It's kinda like a noscripting language but it's really not. It feels like more of a layer over Lua, but I'm very happy about it. It makes me feel like learning how to code wasn't a useless waste of time.

Github: https://github.com/oberondart/NovaScript

To use it, download nova.lua and require it into your program.

-- noscript in novanoscript (ik its a stupid name, but I CANT THINK OF ANYTHING >:) )

local nova = require("nova")
nova.let("mystring", "hello, world!")
nova.out("my
string")

nova.let("mynumber", 1)
nova.let("this
number", 2)
nova.let("happynumber", 3)

nova.out("my
number")
nova.out("thisnumber")
nova.out("happy
number")

nova.array("myarray", {1, 2, 3, 4, 5})
nova.out("my
array")
nova.out("goodbye, world!")

https://redd.it/1pf6f5l
@r_lua
LF a lua project I can help with

I just have nothing of my own and no inspiration for something new to work on. so I thought I would try to find a project I can help with.

no roblox or nonstandard lua, no luajit either

DM open

https://redd.it/1pf63gn
@r_lua
Working on a Lua TUI Compositor.

I wrote my own simple little "Window Engine" as I like to call it, as my four brain cells can't think of a better name.

Basically all it does is draw boxes, circles, and windows in a terminal window without the fuss of manually defining the size and all the writable space.

The source code for the "Window Engine" can be found here (do excuse the poor repository, my first time doing a serious project...)

Screenshot of this in action, in the included starfield demo.



https://redd.it/1pgoat5
@r_lua
Full-stack event-sourced demo app written entirely in Lua

Hello all,

I have created a demo called Todoodle that demonstrates a full-stack application written entirely in Lua using TENUM’s artifact-based approach. It’s a todo app built with CQRS + event sourcing for the domain logic and a reactive UI layer (LuAct) for the frontend.

The project includes:

* Entities with commands/events/queries (todo.e.lua, todoList.e.lua)
* UI components written in Lua (CreateTodo.uie.lua, TodoItem.uie.lua, etc.)
* Spec files for testing the domain logic
* A development flow with live preview and test watcher

The goal is to explore what a full-stack workflow in pure Lua can look like, without build noscripts or infrastructure code. I’d be very interested in feedback from the community on the workflow, design choices, and expected tooling.

We also plan to provide an open-source version of the framework, and this demo helps validate the approach.

If you’d like to try it:

checkout: [https://github.com/TENUM-Dev/todoodle](https://github.com/TENUM-Dev/todoodle)

npm install -g u/tenum_dev/tdm-cli

tdm test --watch 

tdm preview




or simply watch the demo video:

[https://www.youtube.com/watch?v=Acxfu-IhqKs](https://www.youtube.com/watch?v=Acxfu-IhqKs)

Thanks, and I’d appreciate any thoughts or critique.

https://redd.it/1phdngq
@r_lua
I need help with this noscript error Players.Username.CoreScript(Local):35: Expected ')' (to close '(' at line 14), got 'UIS'

UIS.InputBegan:Connect(function(Input, processed)
if Input.UserInputType == Enum.UserInputType.Keyboard and not processed then
if Input.Keycode == Enum.KeyCode.LeftShift then
Player.Character.Humanoid.WalkSpeed = 32
Running = true

i already define UIS as UserInputService

local UIS = game:GetService("UserInputService")

https://redd.it/1phj0es
@r_lua
ion (JSON Inspired Data Format)

I've spent quite some time attempting to perfect this simple module, and have today decided to attempt to share it. I do not doubt the coding might not be very good, but I at least hope it performs what it's designed for, and that's storing a table using as many space saving shortcuts as possible. I also do not expect it to be perfect at what it tries to achieve either.

There's example code here, but I will still provide some simple example usage.

local ion = require("ion") -- for getting the module
local database = {"Bob","Mary"}
ion.Create(database,"database")

The resulting created ion will look like this:

|ion:{
1:|Bob
2:|Mary
}

And, it can be turned back into a table like so:

local ion = require("ion")
local database = ion.Read("database.ion")

ion.Create() in particular has a lot more parameters for fine tuning what gets written to the resulting ion, but for now that's all this post needs I suppose.



The GitHub Pages Site:

https://nibiritheman.github.io/ion.lua/

https://redd.it/1pixnj5
@r_lua
Alpha Release of TENUM – Lua on Kotlin Multiplatform (Open Source)

Hello everyone,

we are excited to announce that the alpha version of TENUM, our Lua runtime and toolchain built on Kotlin Multiplatform, is now available as open source.

GitHub: [https://github.com/TENUM-Dev/tenum](https://github.com/TENUM-Dev/tenum)

TENUM aims to make Lua a first-class citizen across modern platforms by compiling to JVM, JavaScript, Linux, Windows, and macOS from a single Kotlin codebase. The project provides a foundation for building full-stack Lua applications without custom C toolchains, while still keeping Lua's simplicity and embedability.

Current Alpha Features:

* Lua interpreter implemented in Kotlin
* tlua (interactive interpreter)
* tluac (compiler runner)
* Multiplatform builds (JVM, JS, native targets)
* Published to npm for easy installation: npm install -g u/tenum-dev/tenum

Run the tools using:

tlua

tluac

Goals:

The alpha release is intended to gather community feedback as we continue stabilizing the runtime and improving compatibility with standard Lua behavior and libraries. We would appreciate input on which areas should be prioritized, including tooling, performance, interoperability, APIs, and language compatibility.

Feedback Welcome:

This is an early release, but the core is open and evolving quickly. If you are interested in Lua on JVM, JS, or native platforms, or in building multiplatform Lua applications, please take a look and let us know your thoughts.

Thanks,
The TENUM Team

https://redd.it/1pjtu44
@r_lua
Lua PageMaker: A Lua-powered layout engine for generating magazine-style multi-column pages in LaTeX

I’ve been working on a project that may interest people who enjoy using Lua as a lightweight declarative engine inside other systems.
It’s called Lua PageMaker, and it turns Lua into a page-layout noscripting language for LaTeX.

The idea is simple: Lua computes all frame geometries (columns, banners, figures, sidebars, etc.), then emits flowfram primitives during the TeX run.
This gives LaTeX something close to a mini InDesign—but fully programmable.

---

## What it does

- Arbitrary multi-column layouts, including variable-width columns
- Static boxes (top banners, figures, sidebars, bottom boxes)
- Boxes can span multiple columns
- Page structure is defined in a small, readable Lua DSL
- Coordinates expressed in screen space (origin = top-left, y downward)
- Deterministic layout (all geometry computed before TeX sees text)
- Only depends on LuaLaTeX

---

## Example DSL (pages.lua)

return {
width = 7.88,
height = 10.75,
left = 0.5,
right = 0.5,
top = 0.75,
bottom = 1,

colsep = 0.25,

pages = {
{
columns = {
{ width = 1/3 },
{ width = 1/3 },
{ width = 1/3 }
},
boxes = {
{ name="topbanner", colfrom=1, colto=3, top=0, h=1.0 },
{ name="sidebar", colfrom=2, colto=3, top=1.0, h=2.5 }
}
}
}
}

Lua computes all coordinates, resolves spans, trims columns, and emits compatible flowfram frames.

---

## Why Lua?

LuaTeX provides Lua as an embedded engine, enabling:

- real numeric geometry (no TeX dimension arithmetic)
- custom DSLs
- separation of concerns: geometry in Lua, rendering in TeX
- deterministic, debuggable layout specification
- extensibility and simplicity

The project is intentionally minimalistic: a Lua geometry engine + a declarative page denoscription file.

---

## GitHub

https://github.com/sylvainhalle/lua-pagemaker

---

## Feedback welcome

I’d love to hear ideas about:

- the DSL design
- idiomatic Lua improvements
- extensions to the layout model
- integration with ConTeXt / LuaMetaTeX / SILE

If you try generating your own layouts, please share your results!


https://redd.it/1pk9l28
@r_lua