尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
建一个饭局,拿到别人猜不到的链接。不注册。 后面的功能沿用这一套,不另换。 • Next.js(App Router)与 TypeScript • SQLite,通过 @libsql/client 连接。本地开发时数据在 data/split-bill.db;线上用 Turso(libSQL)。第一次访问时自动建表 • 不接登录;线上部署见下文「上线部署」 饭局写在表 gatherings(id、name、created_at)。参与人、账目、分摊写在同一库的新表里,用 gathering_id 指向饭局。饭局页地址是 /g/。id 是 16 字节随机数,编码为 base64url。 线框在 docs/wireframes/。 需要 Node.js 22。不配置 Turso 环境变量时,会自动使用本地文件 data/split-bill.db。查看完整 README ↗
建一个饭局,拿到别人猜不到的链接。不注册。
后面的功能沿用这一套,不另换。
@libsql/client 连接。本地开发时数据在 data/split-bill.db;线上用 Turso(libSQL)。第一次访问时自动建表饭局写在表 gatherings(id、name、created_at)。参与人、账目、分摊写在同一库的新表里,用 gathering_id 指向饭局。饭局页地址是 /g/<id>。id 是 16 字节随机数,编码为 base64url。
线框在 docs/wireframes/。
需要 Node.js 22。不配置 Turso 环境变量时,会自动使用本地文件 data/split-bill.db。
npm install && npm run dev
公开网址:https://split-bill-pi-eight.vercel.app
jackey-hung 下的项目 split-bill(Hobby 计划),默认 Next.js 构建,无自定义 Server。split-bill(Starter 免费档,区域 Tokyo),通过 Vercel Marketplace 的 Turso 集成 创建并绑定。集成会为 所有环境 自动写入 TURSO_DATABASE_URL 与 TURSO_AUTH_TOKEN,无需在 Vercel 里手填这两项。turso db create split-bill(名称可自定)。turso db show split-bill --url。turso db tokens create split-bill。TURSO_DATABASE_URL 与 TURSO_AUTH_TOKEN(若已用 Marketplace 集成可跳过)。main 后,Vercel 会自动部署到 Production(公开网址见上文)。饭局与账目保存在 Turso,重新部署不会清空数据。
npm run lint
npm run typecheck
npm test
npx playwright install chromium
npm run test:e2e
npm test 覆盖创建、读取、找不到饭局、链接唯一且不可猜,以及参与人的增删改。npm run test:e2e 用 Playwright,视口 375×667,覆盖建饭局与参与人相关 AC。
AC8(已入账不可删)在单元测试里用 lib/expenses.seedExpense 写入最小账目行;端到端在 E2E_TEST_HELPERS=1 时调用 POST /api/gatherings/<id>/test/expenses(Playwright 的 webServer 已设置该变量)。该路由仅用于测试,生产 dev 默认不可用。
GitHub Actions 在 pull request 和推送到 main 时安装依赖、跑 lint、类型检查、单元测试,并安装 Playwright 浏览器后跑端到端测试。