ZeroBrane Studio is a lightweight cross-platform Lua IDE with code completion, syntax highlighting, remote debugger, code analyzer, live coding, and debugging support for several Lua engines (Lua 5.1, Lua 5.2, Lua 5.3, LuaJIT, LÖVE, Moai, Gideros, Corona, Marmalade Quick, Cocos2d-x, GSL-shell, Adobe Lightroom, OpenResty/Nginx, Lapis, Moonscript, and others). It originated from the Estrela Editor.
- Written in Lua, so easily customizable.
- Small, portable, and cross-platform (Windows, Mac OSX, and Linux).
- Auto-completion for functions, keywords, and custom APIs.
- Interactive console to directly test code snippets with local and remote execution.
- Integrated debugger with local and remote debugging for Lua 5.1, Lua 5.2, Lua 5.3, LuaJIT, and other Lua engines.
- Live coding with Lua, LÖVE, Gideros, Moai, Corona SDK, GSL-shell, and other engines.
- Function outline.
- Fuzzy search with
Go To File, project-wide
Go To Symbol, and
Insert Library Function.
- Several ways to extend the current functionality:
- specs (
spec/): specifications for file syntax, lexer, and keywords;
- apis (
api/): descriptions for code completion and tooltips;
- interpreters (
interpreters/): components for setting debugging and run-time project environment;
- packages (
packages/): plugins that provide additional functionality;
- config (
cfg/): settings for styles, color themes, and other preferences;
- translations (
cfg/i18n/): translations of the menus and messages to other languages;
- tools (
tools/): additional tools.
- specs (
- A short and simple overview for those who are new to this development environment.
- A list of frequently asked questions about the IDE.
- Tutorials and demos that cover debugging and live coding for different environments.
- Tips and tricks.
ZeroBrane Studio can be installed into and run from any folder.
No compilation is needed, although the scripts to compile required libraries for Windows, OSX, and Linux platforms are available in the
Open file(s): zbstudio [option] [<project directory>] <filename> [<filename>...] non-options are treated as a project directory to set or a file to open Set project directory: zbstudio <project directory> [<filename>...] (0.39+) a directory passed as a parameter will be set as the project directory Override default configuration: zbstudio -cfg "<luacode overriding config>" [<filename>] e.g.: zbstudio -cfg "editor.fontsize=12" somefile.lua Load custom configuration: zbstudio -cfg path/file.lua [<filename>] e.g.: zbstudio -cfg cfg/estrela.lua
If you are loading a file, you can also request the cursor to be set on a particular line or at a particular position by using
filename:p<pos> syntax (0.71+).
ZeroBrane Studio and MobDebug
ZeroBrane LLC: Paul Kulchenko (email@example.com)
Luxinia Dev: Christoph Kubisch (firstname.lastname@example.org)
Where is Estrela?
The Estrela project has been merged into ZeroBrane Studio.
To keep your history of files and projects copy the contents of the
in your HOME directory to
If you have used Estrela for graphics shader authoring or luxinia, create/modify
cfg/user.lua and add
include "estrela.lua" (1.20+) to load all tools
and specifications by default again.