mcpField
B
bubbletea

bubbletea

github.com/pedronauck开发644260 次安装1 周前更新
代码仓库

关于 bubbletea

面向 Go 开发者的 Bubble Tea TUI 开发技能,帮助在现有项目结构中实现终端界面。重点关注终端尺寸、Unicode 显示、布局与模型更新生命周期。

主要功能

  1. 01遵循项目现有模型与更新结构
  2. 02按终端单元格测量和截断文本
  3. 03处理小型终端的布局尺寸
  4. 04保持命中检测与渲染一致
  5. 05将副作用置于渲染之外

适用场景

  1. 01为现有 Go 项目添加 TUI 组件
  2. 02修正窄终端中的面板布局
  3. 03处理 Unicode 文本对齐和截断

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/pedronauck/skills --skill bubbletea

安装后在 Claude Code 中输入/bubbletea确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
components.md
emoji-width-fix.md
golden-rules.md
troubleshooting.md

详细介绍

Bubble Tea TUI 开发

使用仓库已安装的 Bubble Tea/Lip Gloss 版本,以及现有的 model/update/view 结构。针对特定版本的 API 变更,请查阅当前官方文档;不要假设附带的示例与使用该项目的主版本相符。

实现

  • 复用附近的组件和状态所有权。小型控件不需要新建项目脚手架、YAML 配置、热重载、鼠标处理或效果库。
  • 更改布局前,请查看 references/golden-rules.md 中的相关指南。测量实际的边框/内边距,并限制小型终端的尺寸;只有对那个特定边框而言,减去固定的两个单元格才有效。
  • 使用支持终端单元格和 ANSI 的测量与截断方式。不要按字节长度切分字符串,也不要假设码点数等于显示宽度。根据内容的行为选择裁剪、换行或滚动;并非所有带边框的文本都必须截断。
  • 确保命中测试与渲染布局和焦点状态一致。比例尺寸适用于可灵活调整的面板;固定尺寸也适用于有意设置固定大小的控件。
  • 将有副作用的工作放在渲染之外,并保留 model/update 生命周期。验证更改后的交互以及相关的窄屏/宽屏终端尺寸;仅在行为缺少覆盖时添加对应测试。

参考资料

关注点按需阅读
边框尺寸、面板对齐references/golden-rules.md
现有控件模式references/components.md
渲染失败references/troubleshooting.md
Unicode/emoji 对齐references/emoji-width-fix.md

附带的模板可作为新应用的可选起点。请调整其 API 版本和布局假设;不要替换可正常运行的项目结构,也不要添加项目用不到的依赖。通过仓库的包管理工作流安装所需依赖,不要手动编辑 go.mod。产品行为、终端限制和项目约定优先于示例说明。

评论

支持 Markdown