核心功能
TRMNL Content Generator 是一个面向电子墨水显示设备的开发工具,主要用于生成适配 TRMNL 7.5英寸 e-ink 屏幕(800×480px,2-bit 灰度)的 HTML 内容,并通过 webhook API 推送到用户设备。
核心用法
该工具采用标准化的开发工作流:首先检测 TRMNL_WEBHOOK 环境变量,引导用户配置;随后基于 TRMNL CSS 框架生成 HTML 内容,涵盖 flexbox 布局、10列网格系统、Item 组件模式、数值排版等核心特性;最终通过 POST 请求发送至 webhook。内容需严格遵循 <div>{{content}}</div> 的显示标记结构,包含 layout 容器与底部 title_bar。
显著优点
1. 电子墨水优化:针对 2-bit 灰度屏设计专用 CSS 类(如 bg--gray-* 抖动灰度、value--tnums 等宽数字),确保低刷新率下的可读性
2. 紧凑框架体系:提供完整的布局引擎(flexbox/grid)、组件库(表格、进度条、图表)与工具类,无需自定义样式
3. 自动化适配:data-fit-value 自动调整字体、data-clamp 截断文本、data-overflow 管理可变列表,减少手动调试
4. 资源控制:内置 payload 检查脚本,明确区分 Free(2KB/12次每小时)与 TRMNL+(5KB/30次每小时)层级限制
5. 防反模式设计:文档明确列出 9 项常见错误(如禁用行内灰色、强制等宽数字),降低新手踩坑概率
局限性与约束
- 设备单一:当前仅官方支持 TRMNL OG 型号,其他 e-ink 设备兼容性未验证
- webhook 依赖:必须拥有 TRMNL 账户并获取 UUID 格式的 webhook URL
- 严格尺寸限制:免费层仅 2KB 有效载荷,复杂仪表盘需频繁优化 HTML
- 无实时预览:需实际设备查看渲染效果,开发调试成本较高
- 内容不回显:按设计规范不得向聊天返回内容,用户无法即时验证生成结果
适合人群
- 已购买 TRMNL 硬件的用户
- 需要低功耗、常显信息仪表盘的数据爱好者
- 追求极简数字生活的开发者(天气、待办、股票、日历等场景)
- 熟悉 HTML/CSS 基础、愿意学习专用框架的极客用户
风险评估
风险等级:A(低风险)
该技能仅涉及向用户自有设备的 webhook 发送内容,无第三方数据泄露风险。主要风险点包括:
- webhook URL 泄露可能导致他人向设备推送内容(需妥善保管 UUID)
- 频繁推送触发速率限制导致服务暂时不可用
- 过大 payload 被 API 拒绝
建议用户定期轮换 webhook URL,并始终通过 check_payload.py 预检内容大小。