18 releases (1 stable)
1.0.0 | Nov 13, 2024 |
---|---|
0.2.5 | Aug 28, 2024 |
0.2.1 | Jul 18, 2024 |
0.1.7 | Jul 15, 2024 |
0.0.6 | May 2, 2024 |
#82 in Command-line interface
184 downloads per month
275KB
6K
SLoC
🚀 Rokit
Next-generation toolchain manager for Roblox projects.
Features
- ⚡ Tools download and install really fast.
- ♻️ Drop-in compatibility with projects that already use Foreman or Aftman.
- 📦 Supports additional formats and compressed files, such as
.tar
and.tar.gz
. - 🤖 Additional commands for adding and updating tools, and even updating Rokit itself.
- 📝 Useful output messages that are easy for humans to read and understand.
Installation
Follow the instructions for your platform below - when installed, Rokit will guide you through the rest.
macOS & Linux
Run the automated installer script in your terminal:
curl -sSf https://raw.githubusercontent.com/rojo-rbx/rokit/main/scripts/install.sh | bash
Windows
Download and run* rokit.exe
from the latest release page - this will automatically install Rokit.
* Make sure to run rokit.exe
directly, by double-clicking it in the File Explorer, for automatic installation to be triggered.
If you would like to install Rokit from a terminal or shell such as PowerShell / CMD, run rokit.exe self-install
instead.
Other
Installing from source
Rokit can be compiled and installed from source using cargo
:
cargo install rokit --locked # Installs the Rokit binary
rokit self-install # Initializes necessary directories and data files for Rokit to work
This may work on systems that Rokit is not officially compatible with, but note that no support is provided for non-official targets.
Check the latest GitHub release to see which targets Rokit is compatible with.
Usage
Running rokit --help
in your terminal will give you a full overview of all available commands.
Running rokit command-name --help
will give you full details about a specific command.
Brief overview of available commands
rokit init
- Initializes a new project in the current directory.rokit add
- Adds and installs a tool.rokit list
- Lists all currently installed tools.rokit install
- Installs all project-specific tools.rokit update
- Updates a specific tool, or all project-specific tools, to the latest version.rokit authenticate
- Authenticates with GitHub or other artifact providers.rokit self-update
- Updates Rokit itself to the latest version.rokit self-install
- Installs Rokit itself and updates tool executable links.
Q & A
Why use Rokit over Foreman or Aftman?
For a new Roblox developer
Rokit is the fastest and friendliest way to get set up with tooling for a new Roblox project.
Here are some key differences between Rokit and Foreman / Aftman:
- Usable in any project, even projects using
foreman.toml
/aftman.toml
, while Foreman / Aftman are incompatible with each other by design. - Massively improved installation times and more consistent cross-platform behavior.
- No manual editing of manifest or link files.
For everyone else
While Foreman and Aftman have been working great for a long time, they have an uncertain future as toolchain managers for the community.
Most of their existing problems boil down to issues with maintainership:
- Foreman is maintained by Roblox itself, and has angled itself towards internal uses at Roblox.
- Aftman is maintained by a third party that is no longer interested in Roblox.
Rokit aims to solve this by taking a community-first approach and being built with community contributions in mind.
Rokit also acknowledges that developers will not migrate from any of the existing toolchain managers without good reason, it needs to be substantially better and require virtually no effort to migrate.
How do you pronounce Rokit?
However you want.
- "Rocket" for speed
- "Ro-kit" for Roblox-y flair
- "Rock-it" if you're feeling groovy
Dependencies
~19–38MB
~630K SLoC