This project is intended to be a safe, productive collaboration, and contributors are expected to adhere to the Code of Conduct.
Bug reports are welcome on sourcehut at https://todo.sr.ht/~kerrick/ratatui_ruby. We use a semantic label system to organize and prioritize work.
Issues for Ratatui should be filed at ratatui/ratatui.
ratatui_ruby aims to wrap all Ratatui features. Please request new features there.
This project uses a trunk-based development workflow. Target your changes to the trunk branch. See Branching and Releases for details.
Please join the devel mailing list at https://lists.sr.ht/~kerrick/ratatui_ruby-devel. Then, send a pull request via email to the mailing list.
The easiest way to send a pull request via email is to use git-send-email. If you are unfamiliar with using git to send a pull request via email, read the four-step tutorial at git-send-email.io.
Alternatively, sourcehut has a web UI you can use to prepare the email to send. Read their documentation to find out if this is right for you.
After checking out the repo, run bin/setup to install dependencies. Then, run rake test to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.
To install this gem onto your local machine, run bundle exec rake install. To release a new version, run a bundle exec rake bump sub-task (as appropriate for Semantic Versioning), and then run bundle exec rake release, which will create a git tag for the version, push git commits and the created tag, and push the .gem file to rubygems.org.
We have documentation on how ratatui_ruby works internally, how it is designed, and how it interacts with the official Ratatui projects. See the contributors’ documentation guide for more information.
commit 6184024f7eff68e8449742c202da5deb0f9b7ed5 Author: Kerrick Long <me@kerricklong.com> Date: 2026-01-26T21:04:08-06:00 docs: sync Chapter 2 (Rooibos) with beta API The documentation was out of date with the actual implementation. Updated the entry point from the test-only keyword-args API to the production fragment-based API. Updated the commands list to match what actually exists: removed Command.sequence, added cancel, all, open, and custom. Changed message format from arrays to Message:: objects. Replaced the verbose Rooibos.route/delegate example with the declarative Router DSL. Renamed Tea references to Rooibos throughout and updated version numbers in the roadmap. Generated with Antigravity (https://antigravity.google) Co-Authored-By: Claude Opus 4.5 (Thinking) <noreply@anthropic.com>