Rojo enables Roblox developers to use professional-grade software engineering tools https://rojo.space
Find a file
Joe 6fd9037cd1 Add stress tests for VFS and Change Processor under maximum load
- Introduced a comprehensive suite of stress tests targeting various combinations of rename, ClassName changes, and source updates to evaluate the robustness of the VFS and Change Processor.
- Implemented multiple test cases that simulate rapid, concurrent operations with zero wait times, ensuring the system can handle high-pressure scenarios without race conditions.
- Enhanced the existing test framework to support fire-and-forget operations, validating the correct handling of file existence and metadata updates after intensive changes.
- Documented the purpose and structure of the new tests to clarify their role in stress testing the two-way sync functionality.
2026-02-06 10:41:46 -06:00
.cargo Use new Cargo config.toml convention 2021-07-12 13:19:36 -04:00
.config Add project configuration and test files in JSON5 format 2026-01-30 09:16:46 -06:00
.cursor Complete todos for stress tests and add syncback_stress fixture 2026-02-05 22:36:19 -06:00
.github/workflows Add JSONC Support for Project, Meta, and Model JSON files (#1144) 2025-10-28 17:29:57 -07:00
.vscode Plugin dev ux improvements (#992) 2024-11-10 15:53:58 -08:00
assets setup template project better 2026-02-02 12:52:28 -06:00
benches Add plugin build flag (#735) 2023-07-17 19:15:40 -07:00
build/windows Support long file paths on Windows (past 256 limit) (#464) 2021-08-23 15:21:01 -04:00
crates Implement comprehensive fixes for sync system issues 2026-02-05 18:25:47 -06:00
plugin Enhance ancestry node handling in PatchTree 2026-02-04 14:42:34 -06:00
rbx-dom@a5bc66e39f update 2026-02-04 15:11:08 -06:00
rojo-test Complete todos for stress tests and add syncback_stress fixture 2026-02-05 22:36:19 -06:00
scripts Add CI pipeline documentation and enhance syncback architecture 2026-02-01 18:18:31 -06:00
src Add path suppression for VFS events in JobThreadContext 2026-02-06 09:55:54 -06:00
test-projects Add project configuration and test files in JSON5 format 2026-01-30 09:16:46 -06:00
tests Add stress tests for VFS and Change Processor under maximum load 2026-02-06 10:41:46 -06:00
.dir-locals.el Plugin dev ux improvements (#992) 2024-11-10 15:53:58 -08:00
.editorconfig Changed file extensions of init command from lua to luau (#831) 2024-01-05 16:00:49 -08:00
.git-blame-ignore-revs Create .git-blame-ignore-revs & Add Stylua pr (#787) 2023-09-19 05:56:39 +00:00
.gitattributes Set linguist language of lua files to luau (#956) 2024-08-02 10:03:57 -07:00
.gitignore Implement VFS Path normalization for improved cross-platform tree synchronization (#1201) 2026-01-19 15:04:59 -08:00
.gitmodules Add msgpack-luau as a submodule 2026-01-27 06:44:16 -06:00
build.rs Update dependencies and improve build script 2026-02-01 10:24:47 -06:00
Cargo.lock Upgrade notify crate from v4 to v8 with stress tests 2026-02-04 15:10:02 -06:00
Cargo.toml Upgrade notify crate from v4 to v8 with stress tests 2026-02-04 15:10:02 -06:00
CHANGELOG.md Enhance syncback performance with parallel file operations 2026-02-02 18:10:57 -06:00
CONTRIBUTING.md Fix a grammar error and a typo (#1113) 2025-09-16 11:00:34 -07:00
install.ps1 Enhance installation script for conditional build modes 2026-01-24 04:41:05 -06:00
install.sh Add installation script for building and deploying Rojo plugin 2026-01-02 09:50:33 -06:00
LICENSE.txt Tweak bottom of README, move LICENSE to LICENSE.txt 2019-01-18 20:57:19 -08:00
plugin.project.json Refactor project configuration to use .json format 2026-01-30 10:06:32 -06:00
README.md Add JSONC Support for Project, Meta, and Model JSON files (#1144) 2025-10-28 17:29:57 -07:00
rokit.toml Move to using Rokit, update tools, and don't install unnecessary tools (#1109) 2025-08-29 18:45:15 -07:00
selene.toml Move to using Rokit, update tools, and don't install unnecessary tools (#1109) 2025-08-29 18:45:15 -07:00
testez.yml Update selene (#550) 2022-06-12 03:41:49 -04:00

Rojo
 
Actions status Latest server version Rojo Documentation

Rojo is a tool designed to enable Roblox developers to use professional-grade software engineering tools.

With Rojo, it's possible to use industry-leading tools like Visual Studio Code and Git.

Rojo is designed for power users who want to use the best tools available for building games, libraries, and plugins.

Features

Rojo enables:

  • Working on scripts and models from the filesystem, in your favorite editor
  • Versioning your game, library, or plugin using Git or another VCS
  • Streaming rbxmx and rbxm models into your game in real time
  • Packaging and deploying your project to Roblox.com from the command line

In the future, Rojo will be able to:

  • Sync instances from Roblox Studio to the filesystem
  • Automatically convert your existing game to work with Rojo
  • Import custom instances like MoonScript code

Documentation

Documentation is hosted in the rojo.space repository.

Contributing

Check out our contribution guide for detailed instructions for helping work on Rojo!

Pull requests are welcome!

Rojo supports Rust 1.88 and newer. The minimum supported version of Rust is based on the latest versions of the dependencies that Rojo has.

License

Rojo is available under the terms of the Mozilla Public License, Version 2.0. See LICENSE.txt for details.