ratatui_ruby-devtools provides shared development tooling for the RatatuiRuby ecosystem. It includes Rake tasks, linters, license enforcement, and build tooling used across all RatatuiRuby gems.
This is a non-runtime gem. It provides build tooling—not application features. Add it to your :development group only.
RatatuiRuby:Core engine • Tea:MVU architecture • Kit:Component architecture (Planned) • DSL:Glimmer syntax (Planned) • Framework:Omakase framework (Planned) • UI:Polished widgets (Planned) • UI Pro:More polished widgets (Planned)
Get Started:Quickstart • Examples ⸺ Stay Informed:Announce List • FAQ ⸺ Reach Out:Discuss List • Bug Tracker
Get Started:Contributing Guide • Code of Conduct ⸺ Stay Informed:Announce List • Project History ⸺ Reach Out:Development List • Bug Tracker
Add this line to your application's Gemfile:
group:developmentdogem"ratatui_ruby-devtools"endAnd then execute:
bundle installIn your Rakefile:
require"bundler/gem_tasks"require"ratatui_ruby/devtools"RatatuiRuby::Devtools.install!taskdefault: %i[lint]This imports all devtools rake tasks into your project.
| Task | Description |
|---|---|
rake lint | Run all lint tasks |
rake lint:fix | Auto-fix all linting issues |
rake rubocop | Run RuboCop |
rake rubycritic | Run RubyCritic |
rake doc:suggest | Suggest documentation improvements |
| Task | Description |
|---|---|
rake license:all | Run all license tasks |
rake license:headers:all | Ensure all files have SPDX headers |
rake license:new | Apply license headers to changed files only |
rake reuse:lint | Check REUSE/SPDX compliance |
rake reuse:fix | Add missing SPDX headers |
| Task | Description |
|---|---|
rake bump:major | Bump major version |
rake bump:minor | Bump minor version |
rake bump:patch | Bump patch version |
rake bump:exact[0.1.0] | Set exact version |
An AI-friendly wrapper for bundle exec rake that captures all output and only shows failure summaries.
bin/agent_rake # Run default task
bin/agent_rake test# Run specific taskMerge multiple markdown files into one, adjusting heading levels.
Handlebars templating utility.
Devtools includes templates for scaffolding new ecosystem gems:
| Template | Purpose |
|---|---|
AGENTS.md.erb | AI agent instructions |
.pre-commit-config.yaml | Pre-commit hooks |
Rakefile.erb | Standard Rakefile |
sourcehut.rake.erb | SourceHut CI task |
build.yml.erb | SourceHut build manifest |
gemspec.erb | Standard gemspec |
bin/setup.erb | Setup script |
mise.toml.erb | Toolchain versions |
REUSE.toml.erb | License annotations |
.gitignore.erb | Git ignores |
.rubocop.yml.erb | RuboCop config |
Access templates via:
RatatuiRuby::Devtools.templates_path# => "/path/to/devtools/templates"Tasks auto-discover gem configuration from your *.gemspec. Override if needed:
RatatuiRuby::Devtools.gem_name="my_gem"RatatuiRuby::Devtools.version_file="lib/my_gem/version.rb"Environment variables for REUSE tasks:
| Variable | Default |
|---|---|
REUSE_COPYRIGHT | Kerrick Long <me@kerricklong.com> |
REUSE_CODE_LICENSE | AGPL-3.0-or-later |
REUSE_DOC_LICENSE | CC-BY-SA-4.0 |
Bug reports and pull requests are welcome on sourcehut at https://sr.ht/~kerrick/ratatui_ruby/. This project is intended to be a safe, productive collaboration, and contributors are expected to adhere to the Code of Conduct.
Want to help develop ratatui_ruby-devtools? Check out the contribution guide on the wiki.
ratatui_ruby-devtools is copyright 2026, Kerrick Long.
The gem is AGPL-3.0-or-later: you may use it freely, but you must share changes you make. Documentation is CC-BY-SA-4.0. Code snippets in documentation are MIT-0 (no attribution required).
This program was created with significant assistance from multiple LLMs. The process was human-controlled through creative prompts, with human contributions to each commit. See commit footers for model attribution. declare-ai.org