Docs · preview

What using Luanode will be like

Luanode hasn't shipped yet — but here's the walkthrough we'll hand to new users on day one. Read it now to know what you're getting in for, then join the waitlist to grab it the day it launches.

1 · Install Luanode

Heads up: Luanode isn't downloadable yet — the steps below describe what the installer will do once we launch. Join the waitlist to get notified when it's ready.

When Luanode ships, you'll grab the installer for your OS from the download page and run it. The installer will:

Luanode runs entirely on your machine — no mandatory account, no cloud sync, your project files never leave your computer.

Already have Roblox Studio open? Close it before running the installer — the plugin step needs to copy files into Studio's plugins folder, and Studio locks them while it's running.

2 · Set up the Roblox Studio plugin

The installer handles this for you. After it finishes, re-open Studio and look at the top toolbar — you'll see a LuaFlow section with five buttons:

If you don't see the toolbar, open Studio's Output window (View → Output) and look for a line like:

[LuaFlow] plugin loading v0.4.0-sync from ...
[LuaFlow] toolbar created with 5 buttons

Missing? Jump to Troubleshooting.

3 · Your first project

Open Luanode on the desktop. You'll see an empty canvas with a node palette on the left.

Let's make a "give every player 100 coins when they join" script:

  1. From the palette, drag a PlayerAdded event onto the canvas. It has one input pin (none — events start chains) and one output pin called Player.
  2. Drag a Set Property node next to it. Connect its Exec input to the event's Exec Out.
  3. In the Set Property node, type leaderstats.Coins.Value into the Property field, and 100 into the Value field.
  4. Click Generate Lua in the top bar. A panel shows the actual Lua your graph compiles to.

That's it. The generated Lua looks like:

local Players = game:GetService("Players")

Players.PlayerAdded:Connect(function(player)
    player.leaderstats.Coins.Value = 100
end)

4 · The block library

Luanode ships with 50+ block types organised by category. The most useful starter blocks:

Events (orange)

PlayerAdded, PlayerRemoving, CharacterAdded, Touched, Heartbeat, RenderStepped, ClickDetector, and more. Events are the "entry points" — every exec chain starts at an event.

Variables (green)

Set Variable, Get Variable. Luanode handles the scope — module-level vs. function-local vs. event-local — based on where you put the node.

Flow (red)

If/Else, Loops (for, while, repeat), Switch, FlipFlop, DoOnce, Parallel.

Math (blue)

Add / Subtract / Multiply / Divide / Modulo / Power, plus comparisons (< > ==), trig (sin, cos, tan), random, clamp, lerp.

UI (purple)

Frame, TextLabel, TextButton, ImageLabel, UIListLayout, UIPadding. Building HUDs without scripting one line of GUI code.

5 · Live sync with Studio

With the desktop editor open and Studio's Sync toolbar button toggled on, the two stay in lockstep.

  1. Add a script in the desktop Outliner → appears in Studio within 1 second.
  2. Edit the script's source in Studio → reflected in the desktop editor.
  3. Rename / delete / move scripts on either side — propagates both ways.

Sync uses a tiny HTTP server on 127.0.0.1:7777. You'll need to enable HTTP Requests in your place's Game Settings the first time:

Home tab → Game Settings → Security
   → "Allow HTTP Requests" → ON → Save

6 · Watching performance

Click the Telemetry button on Studio's toolbar. A dock widget appears at the bottom showing every script in your place:

Click Auto-send: on to stream snapshots to the desktop editor every 5 seconds. The desktop has the same view with more screen space to sort + chart trends.

7 · Troubleshooting

The LuaFlow toolbar isn't showing in Studio

Re-run the desktop installer's plugin step. It cleans up any old/broken copies in your Plugins folder and drops a fresh build. Then fully quit and reopen Studio.

Sync is on but nothing updates

Check Studio's Output window for HTTP errors. The most common cause: HTTP Requests isn't enabled in Game Settings. The plugin will warn you in Output if that's the case.

"Plugin failed to load"

Studio's Output shows the exact module that failed (e.g. require TelemetryPanel failed: …). Take a screenshot, email it to Support@luanode.com, and we'll dig in.

Email waitlist confirmation didn't arrive

Check spam. If still missing, send us a note — we'll add you manually.

8 · Where to go next