Skip to content

Repository files navigation

ratatui_ruby-devtools

 builds.sr.ht status License Gem Version Mailing List: Development

Introduction

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.


Quick Links

The Ecosystem

RatatuiRuby:Core engineTea:MVU architectureKit:Component architecture (Planned) • DSL:Glimmer syntax (Planned) • Framework:Omakase framework (Planned) • UI:Polished widgets (Planned) • UI Pro:More polished widgets (Planned)

For App Developers

Get Started:QuickstartExamplesStay Informed:Announce ListFAQReach Out:Discuss ListBug Tracker

For Contributors

Get Started:Contributing GuideCode of ConductStay Informed:Announce ListProject HistoryReach Out:Development ListBug Tracker


Installation

Add this line to your application's Gemfile:

group:developmentdogem"ratatui_ruby-devtools"end

And then execute:

bundle install

Usage

In 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.

Provided Rake Tasks

Linting

TaskDescription
rake lintRun all lint tasks
rake lint:fixAuto-fix all linting issues
rake rubocopRun RuboCop
rake rubycriticRun RubyCritic
rake doc:suggestSuggest documentation improvements

License Enforcement

TaskDescription
rake license:allRun all license tasks
rake license:headers:allEnsure all files have SPDX headers
rake license:newApply license headers to changed files only
rake reuse:lintCheck REUSE/SPDX compliance
rake reuse:fixAdd missing SPDX headers

Version Bumping

TaskDescription
rake bump:majorBump major version
rake bump:minorBump minor version
rake bump:patchBump patch version
rake bump:exact[0.1.0]Set exact version

Executables

bin/agent_rake

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 task

bin/consolidate_md

Merge multiple markdown files into one, adjusting heading levels.

bin/hbs

Handlebars templating utility.

Templates

Devtools includes templates for scaffolding new ecosystem gems:

TemplatePurpose
AGENTS.md.erbAI agent instructions
.pre-commit-config.yamlPre-commit hooks
Rakefile.erbStandard Rakefile
sourcehut.rake.erbSourceHut CI task
build.yml.erbSourceHut build manifest
gemspec.erbStandard gemspec
bin/setup.erbSetup script
mise.toml.erbToolchain versions
REUSE.toml.erbLicense annotations
.gitignore.erbGit ignores
.rubocop.yml.erbRuboCop config

Access templates via:

RatatuiRuby::Devtools.templates_path# => "/path/to/devtools/templates"

Configuration

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:

VariableDefault
REUSE_COPYRIGHTKerrick Long <me@kerricklong.com>
REUSE_CODE_LICENSEAGPL-3.0-or-later
REUSE_DOC_LICENSECC-BY-SA-4.0

Contributing

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.

Copyright & License

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

About

🛠️ Development Tools for Contributors to RatatuiRuby 💎 👨‍🍳🐀.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages