receipt-printer/README.md

68 lines
1.5 KiB
Markdown

# Receipt Printer - 80mm 小票打印系统
基于 WiFi ESC/POS 的 80mm 小票打印系统,支持可视化模板配置和 REST API 调用。
## 核心特性
- 🎨 **可视化模板配置** - Web 界面实时编辑和预览
- 📝 **YAML/JSON 模板** - 声明式排版配置
- 🔌 **REST API** - 通过 HTTP 调用打印
- 📐 **自动 Schema 提取** - 从模板变量自动生成数据契约
- 🖨️ **WiFi ESC/POS** - 支持主流 80mm 热敏打印机
## 技术栈
- **后端**: Bun + Hono (轻量高性能)
- **模板引擎**: 自研 YAML → ESC/POS 转换器
- **前端**: 原生 HTML/JS (轻量化)
- **打印机协议**: ESC/POS over TCP
## 项目结构
```
├── docs/ # 设计文档
├── templates/ # 模板文件
├── src/ # 源码
│ ├── server.ts # HTTP 服务
│ ├── printer.ts # 打印机驱动
│ ├── template.ts # 模板引擎
│ └── static/ # Web 界面
└── README.md
```
## 快速开始
```bash
# 安装依赖
bun install
# 配置打印机
bun run config
# 启动服务
bun run start
# 打开配置页面
open http://localhost:3000
```
## API 示例
```bash
# 打印模板
curl -X POST http://localhost:3000/api/print/daily-todo \
-H "Content-Type: application/json" \
-d '{
"data": {
"date": "2025-02-12",
"tasks": [
{"status": "☐", "title": "修复 Bug #123"}
]
}
}'
```
## 许可证
MIT