The IDE built for Roblox.

A complete desktop development environment, built around an agent that understands Roblox itself: the engine API, Luau conventions, and how a tycoon or a simulator is actually assembled. It connects directly to the Studio place you have open.

Available for macOS and Windows.

Roflow Agent
Task

Add a button that gives the player 100 coins when clickedSee more

1local button = script.Parent
2 
3-- TODO: reward the player on click

From first script to shipped game.

One environment, with the toolchain already assembled.

An agent that builds alongside you.

Describe a system and it writes the Luau across every file that needs to change, installs the components it needs from a catalog of templates and feature packs, and can generate 3D models directly into your place.

Grounded in Roblox, not just code.

The agent works from the full engine API and a curated catalog of genre templates, feature packs, and UI kits. It reaches for leaderstats and ProximityPrompts the way an experienced Roblox developer would, rather than guessing its way there.

A live connection to Studio.

Edits land in the place you have open under a single undo waypoint. Run a playtest, execute Luau inside the running game, capture screenshots, and read errors back with the exact script and line that produced them.

Built on an editor you already know.

Roflow is a full VS Code fork, so multi-file search, git, and the Open VSX marketplace behave exactly as you expect. Luau LSP, Selene, and StyLua are bundled and configured.

A closer look.

The parts you will reach for every session.

playerHandler.lua
1local Players = game:GetService("Players")
2
3player:GetMouse()
Suggestions
GetMouse()
Button1Down
Button1Up
Tab to accept
4function onClick()
5print("Clicked!")
6end

Roblox-aware Luau tooling.

Luau LSP ships with Roflow, typed against the real Roblox API, so a wrong service name or a property that does not exist is an error in the editor rather than a surprise at runtime.

  • Member completion typed against the Roblox API
  • Selene and StyLua bundled, with no toolchain to install
  • Every agent edit is checked before you see it
Roflow IDEplayerHandler.lua
1local Players = game:GetService("Players")
2
3Players.PlayerAdded:Connect(function(player)
4 print(player.Name .. " joined!")
5end)
Ready
Roblox StudioplayerHandler
1local Players = game:GetService("Players")
2
3Players.PlayerAdded:Connect(function(player)
4 print(player.Name .. " joined!")
5end)

Studio, driven from the editor.

Your local files stay authoritative. Edits land in the place you have open under a single undo waypoint, and Roflow refuses to push to a place it is not bound to.

  • A whole sync batch reverts with one Ctrl+Z
  • Scripts changed in Studio are flagged, not overwritten
  • Playtest, screenshot, and read logs without leaving the editor
MyProject · Roflow IDE
playerHandler.server.lua
1local Players = game:GetService("Players")
2
3local function onPlayerJoin(player)
4print(player.Name .. " joined!")
5local leaderstats = Instance.new("Folder")
6leaderstats.Name = "leaderstats"
7leaderstats.Parent = player
8end
9
10Players.PlayerAdded:Connect(onPlayerJoin)
main*
Lua

Start clean, or bring an existing place.

Pull the scripts out of the place you already have open in Studio into a local project, or install a genre template and bake its world into the edit session.

  • Import the open place into a file-based project
  • Templates install under one grouped undo
  • Extensions from the Open VSX marketplace

Your next Roblox game starts here.

Free to download and free to keep using. Start a new project, or import the place you already have open in Studio.

Windows
macOS

No credit card required. Sign in with Roblox.