账单 Bill

面向个人、家庭、合租、旅行和小团队的多用户账单应用,支持个人记账、多人共同记账、灵活分摊、余额计算和补差结算,飞牛 fnOS 上可通过 NAS 账号一键登录

v0.1.4

界面预览

PC 端 · 总览仪表盘(深色)
PC 端 · 总览仪表盘(深色)
PC 端 · 我的账本(浅色)
PC 端 · 我的账本(浅色)
移动端 · 账单与筛选
移动端 · 账单与筛选

功能特性

📒

多账本管理

按生活、交通、旅行等用途创建多个账本,支持排序、默认账本与归档

💳

收支账户

支持银行卡(借记卡/信用卡)、微信、支付宝;仅保存卡号指纹与尾号,不存完整卡号

🏷️

分类与标签

分类最多支持两级,上级分类自动继承收支类型;账单支持多标签、回车快捷新增

📝

个人账单

收入、支出、备注、时间一应俱全,支持筛选、分页和 CSV 导出

🖼️

图片附件

个人与共享账单均可上传最多 9 张图片,支持缩略图、大图预览与原图下载

📊

个人分析

支持全部或指定账本,提供区间汇总、收支趋势、分类、账本、标签和星期分布

👥

共享账本

创建、邀请、接受/拒绝、成员管理和归档,多人共同记账轻松协作

⚖️

四种分摊方式

等额、固定金额、百分比、份额,共同支出与共同收入灵活拆分

🧮

自动补差结算

自动计算每位成员应收/应付,并给出转账次数较少的结算建议

结算记录

把实际转账计入余额,支持回溯删除,账目来龙去脉清晰可查

🔐

账号与安全

密保问题找回密码、记住登录 1–365 天可配置、管理员审计日志与 API Key 管理

🐂

飞牛一键登录

支持飞牛 NAS 账号授权登录与账号绑定、URL 网关应用入口;响应式界面适配 PC 侧边栏与手机底部导航,浅色/深色/跟随系统

技术架构

后端技术栈

  • Go - 高性能编译型语言
  • Gin - 轻量级 HTTP 框架
  • GORM - ORM 框架
  • SQLite (WAL) - 单文件数据库
  • 金额以整数“分”存储,避免浮点误差

前端技术栈

  • Vue 3 - 现代前端框架
  • TypeScript - 类型安全
  • Vite - 构建工具
  • Pinia - 状态管理
  • Tailwind CSS - 原子化样式

部署方式

  • 飞牛 NAS(fnOS)FPK 包(amd64 / arm64)
  • Docker 多平台镜像
  • 本地二进制与全平台压缩包

快速开始

飞牛 NAS 安装

  1. 下载对应架构的 .fpk 文件
  2. 打开飞牛 NAS 桌面 → 应用中心
  3. 点击右上角 手动安装,选择下载的 .fpk 文件
  4. 设置应用端口(默认 8907,范围 1024–65535),点击完成
  5. 安装完成后打开应用,可通过飞牛 NAS 账号授权登录:首次创建的应用账号自动成为管理员并绑定当前 NAS 账号

Docker 运行

docker run -d \ --name bill \ -p 8907:8907 \ -v bill-data:/app/data \ -e TZ=Asia/Shanghai \ --restart unless-stopped \ techfunways/bill:latest

docker-compose.yaml

services: bill: image: techfunways/bill:latest container_name: bill restart: unless-stopped ports: - "8907:8907" volumes: - bill-data:/app/data environment: - TZ=Asia/Shanghai

二进制直接运行

解压对应平台的压缩包后:

# Linux / macOS ./bill

启动后浏览器访问 http://localhost:8907,首次注册的账号自动成为管理员。启动参数可通过 ./bill -help 查看。

💡 提示:数据默认保存在 data 目录,核心数据库文件为 data/db/bill.db;应用健康检查地址为 /api/health。运行日志按 logs/YYYYMM/ 目录按天写入,默认保留最近 30 天。

更新日志

v0.1.4 2026-09-11
  • 新增赞赏支持:右下角「支持」入口弹出收款码弹窗,可请站长喝杯咖啡,支持匿名支持计数(仅设备统计信息)
  • 飞牛授权登录改用网关跳板与一次性凭证,登录后应用走直连端口访问,刷新不再掉登录态
  • 个人账本默认分类补充常用二级分类,记账选分类更顺手
运行(x86/ARM 架构):
docker run -d -p 8907:8907 -v bill-data:/app/data techfunways/bill:latest
v0.1.3 2026-09-06
  • 修复通过飞牛网关访问时登录后刷新跳回登录页、首页数据加载失败的问题;应用改为直连端口访问,飞牛网关仅用于授权登录
  • 飞牛授权登录先弹窗确认当前 NAS 账号,支持切换其他飞牛账号,取消后不保留登录态
v0.1.2
  • 多用户与角色:开放注册可由管理员配置,第一个注册用户自动成为管理员
  • 个人账本、收支账户、两级分类与多标签,账单筛选、分页与 CSV 导出
  • 图片附件:个人与共享账单最多 9 张,缩略图、大图预览与原图下载
  • 个人分析:区间汇总、收支趋势、分类、账本、标签和星期分布
  • 共享账本:创建、邀请、成员管理和归档,共同支出与共同收入
  • 四种分摊:等额、固定金额、百分比、份额;自动补差与结算建议
  • 飞牛 fnOS:NAS 账号授权登录与账号绑定、自定义服务端口、URL 网关应用入口
  • 响应式界面:PC 侧边栏、手机底部导航,浅色、深色和跟随系统
  • 金额在服务端以整数“分”存储,个人数据按 user_id 隔离
  • 支持飞牛 NAS(fnOS)FPK 安装、Docker 部署、二进制与全平台压缩包
运行(x86/ARM 架构):
docker run -d -p 8907:8907 -v bill-data:/app/data techfunways/bill:latest

常见问题

如何修改端口?

飞牛 NAS 安装向导中可自定义服务端口(默认 8907,范围 1024–65535),升级与运行配置留空则保持当前端口。Docker 方式通过 -p 参数映射端口。

如何多人共同记账?

创建共享账本并邀请成员加入,录入共同支出/收入时可选择等额、固定金额、百分比、份额四种分摊方式;应用会自动计算每位成员应收/应付,并给出转账次数较少的结算建议,实际转账后计入结算记录即可。

忘记密码怎么办?

注册时设置了密保问题的用户,可通过密保问题重置密码。

如何备份数据?

备份数据目录即可,核心数据库文件为 data/db/bill.db,上传的图片附件与运行日志也在数据目录下。建议在升级前手动备份数据目录以确保安全。