By lorismaz
Build beautiful, interactive CLI tools in Ruby using the charm-ruby ecosystem (Bubble Tea, Lipgloss, Bubbles, Huh, and more)
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Build beautiful, interactive command-line applications in Ruby using the charm-ruby ecosystem.
Charm Ruby is a collection of Ruby gems ported from Charm.sh's Go libraries by Marco Roth. It provides everything you need to build stunning terminal user interfaces:
| Gem | Purpose |
|---|---|
| bubbletea | Model-View-Update architecture for interactive apps |
| lipgloss | CSS-like terminal styling |
| bubbles | Pre-built components (spinners, inputs, lists, tables) |
| huh | Interactive forms with validation |
| glamour | Markdown rendering in terminal |
| harmonica | Physics-based spring animations |
| gum | Shell script interactions |
| bubblezone | Mouse event tracking and clickable zones |
| ntcharts | Terminal charts (sparklines, bar/line charts, heatmaps) |
Comprehensive knowledge for building CLI tools:
Triggered when you ask about building CLI tools in Ruby, terminal UIs, or any charm-ruby library.
| Command | Description |
|---|---|
/charm:init [name] | Scaffold a new charm-ruby CLI project |
/charm:add-component [type] | Add a Bubbles component to your project |
/charm:package | Prepare your CLI for RubyGems distribution |
Expert Ruby CLI architect that helps you:
Create a new project:
/charm:init my-awesome-cli
Add components as needed:
/charm:add-component list
/charm:add-component spinner
When ready to publish:
/charm:package
require "bubbletea"
require "lipgloss"
class CounterModel
include Bubbletea::Model
def initialize
@count = 0
@style = Lipgloss::Style.new.bold(true).foreground("#FF69B4")
end
def init
nil
end
def update(msg)
case msg
when Bubbletea::KeyMsg
case msg.string
when "q" then return [self, Bubbletea.quit]
when "up", "k" then @count += 1
when "down", "j" then @count -= 1
end
end
[self, nil]
end
def view
"Count: #{@style.render(@count.to_s)}\n\n↑/k inc • ↓/j dec • q quit"
end
end
Bubbletea.run(CounterModel.new)
In Claude Code, run these slash commands:
Add the marketplace:
/plugin marketplace add lorismaz/charm-ruby-claude-plugin
Install the plugin:
/plugin install charm-ruby@charm-ruby
The skill, commands, and agent will be automatically available after installation.
MIT
npx claudepluginhub lorismaz/charm-ruby-claude-pluginRuby LSP for Claude Code — code intelligence, diagnostics, and navigation for Ruby files
Build smooth, reactive Rails UIs using Turbo Morphing, View Transitions, and Stimulus optimistic UI patterns
Generic webhook channel plugin for Claude Code. Accept HMAC-authenticated webhooks from any external service with interactive pairing and reply capability.
Harness-native ECC operator layer - 67 agents, 271 skills, 92 legacy command shims, reusable hooks, rules, selective install profiles, and production-ready workflows for Claude Code, Codex, OpenCode, Cursor, and related agent harnesses
v9.44.1 — Patch release for Gemini environment/version detection and qwen auth gating. Run /octo:setup.
Superpowers Plus core skills library for Claude Code: planning, execution routing, TDD, debugging, and collaboration workflows
Unity Development Toolkit - Expert agents for scripting/refactoring/optimization, script templates, and Agent Skills for Unity C# development
AI-powered development tools for code review, research, design, and workflow automation.
Tools to maintain and improve CLAUDE.md files - audit quality, capture session learnings, and keep project memory current.