Contributing
This guide walks you through setting up a development environment for Rooibos. By the end, you will have a working test suite on macOS, Linux, or Windows.
Prerequisites
The only prerequisite is mise, a dev tool manager. It installs Ruby, Python, and pre-commit hooks according to mise.toml.
Setup
Clone the repository and run the setup script for your platform.
macOS / Linux
bin/setup
Windows (PowerShell)
bin/setup.ps1
Both scripts install Python, Bundler, and gem dependencies. On macOS and Linux, mise handles everything including Ruby. On Windows, the script installs Ruby via RubyInstaller (winget) since mise cannot compile working Ruby on Windows. RubyInstaller bundles the MSYS2 devkit for native gem compilation.
Running Tests
The default Rake task runs lint fixes, the test suite, code quality tools, license checks, and the Steep type checker:
bundle exec rake
Community
Active development happens on the trunk branch. The stable branch tracks releases only. Use trunk for contributions.
The discussion forum is the best place to ask questions, share patches, and get feedback. Report bugs on the bug tracker. Follow announcements for release notes. All participants follow the Code of Conduct.
File issues for the underlying Rust library at ratatui/ratatui.