先把项目跑起来
需要 Go 1.22+、Node 20+、Git。后端与前端分开构建,前端产物由 Go 内嵌成单文件可执行程序。
git clone https://gitee.com/yixin-lot/posd.git && cd posd npm --prefix web ci npm --prefix web run build node scripts/copy-embed.mjs # 前端产物拷进后端 embed 目录 go run ./cmd/posd # 默认 http://127.0.0.1:8080
首次启动会自动建库并写入示例商品;账号密码在首次登录页生成,不写死在配置里。
可以贡献什么
报告问题
附版本号、系统、复现步骤与日志。能稳定复现的 bug 优先级靠前。
提交代码
一个 PR 只做一件事,说明动机与影响面;改动涉及数据结构的,必须带迁移与回滚说明。
补文档
用户手册、部署说明、常见故障排查。文档里的截图必须是实跑截的,不接受示意图。
提供案例
真实门店的用法与数字(可脱敏)。案例会进官网,比功能列表更直观。
翻译与本地化
英文文案、货币与日期格式、当地支付习惯。当前先做中英双语,其他语种欢迎认领。
提需求
到 Discussions 说清场景与现在怎么凑合解决的,高票需求会排进路线图。
PR 的规矩
1
从 main 切分支,命名 `feat/…`、`fix/…`、`docs/…`。
2
提交前本地跑通:前端单测、构建、以及 `node scripts/e2e/mobile375.mjs`(会真的断言 375 宽度下无越界)。
3
PR 描述写清:改了什么、为什么、怎么验证。贴真实命令输出,不要写「已测试」。
4
首次 PR 需要签署 CLA,确认你有权贡献这部分代码。
CLA 只授予项目使用你贡献代码的权利,你仍保留著作权。
路线图
按能力分批交付,不按日期承诺。最新版本以仓库发布页为准。
1
v1.0 · 开箱可用
三平台安装包、首次启动引导、数据备份与迁移、收银到报表的完整闭环。
2
v1.1 · 移动端与桌台
手机端收银、桌台并台转台、后厨分单在窄屏下的可用性收尾。
3
v1.2 · 出海基础
多币种与税制配置、英文界面补全、当地小票格式模板。
4
v2.0 · 扩展机制
打印与支付的插件接口、事件钩子,让第三方在不改主干的前提下接入。