Skip to main content
Version: v6

Introduction

Welcome! Rojo is a project management tool designed to get professional resources in the hands of Roblox developers. Here, we'll teach you how to get started with Rojo.

This documentation is a continual work in progress. If you find any issues, please file an issue on the Rojo website issue tracker!

New to Rojo? Check out Installation.

Why Rojo?

Adding a tool like Rojo to your Roblox workflow can be daunting, but it comes with some key advantages.

Tools

There are decades of excellent tools available that operate on files. With Rojo, it's possible to take advantage of any of them!

Popular tools that are tailored towards Roblox or Lua in general:

  • Selene, a static analysis tool to help you write better Lua
  • StyLua, a formatter that helps keep your code in a consistent style
  • Wally, a package manager for Roblox projects
  • Moonwave, a documentation generator for Lua projects

Rojo at RDC 2019

Nathan Riemer (Kampfkarren) gave a talk at RDC 2019 talking about some of the benefits of using a tool like Rojo.

External Text Editors

Rojo opens the door to use the absolute best text editors in the world and their rich plugin ecosystems.

Some very popular editors include Visual Studio Code and Sublime Text.

These advanced text editors have features like multi-cursor editing, go-to symbol, multi-file regex find and replace, bookmarks and much more.

Many Rojo VS Code users also use extensions like:

Version Control

By building your game (or just the scripts) as individual files on the filesystem, it becomes easy to start using professional-grade version control tools like Git and GitHub.

Hundreds of thousands of companies and individual developers use Git to version their software projects. With Rojo, Roblox developers can take advantage of the best collaboration tool around.

Using a repository hosting service like GitHub or GitLab brings powerful features to Roblox developers like code reviews and issue tracking that professional engineers can't live without.

TypeScript

TypeScript enables static type safety, which helps prevent typos and adds unparalleled autocompletion. It also brings features like arrow functions, object destructuring, functional programming methods, and more!

With Rojo, you can use roblox-ts to compile TypeScript to Lua and take advantage of a huge ecosystem of TypeScript tooling.

It's also possible to use other languages that compile to Lua like MoonScript and Haxe.