Repolode
PanSalut

PanSalut/Koffan

面向家庭和合租住户的自托管购物清单网页应用,支持实时同步和离线使用。

可替代:AnyListGoogle Keep

Star
825
Fork
85
未关闭 Issue
50
最近提交
22天前

这是什么?

Koffan 是一款轻量的网页购物清单应用,适合情侣和家庭共同维护购物清单。多人可以在不同设备上编辑同一份清单,修改通过 WebSocket 实时同步,大家随时能看到还需要买什么、哪些已经放进购物车。

应用可在手机和桌面浏览器中使用,也可以作为 PWA 安装到设备上。清单可以按分区(如乳制品、清洁用品)整理,商品可标记为已购买或暂时找不到,自动补全会根据历史记录给出建议。离线时仍可创建、编辑和勾选清单,网络恢复后自动同步。

默认使用一个共享密码登录;设置 MULTI_USER=true 后可启用个人账户和独立工作区,方便多个家庭共用一台服务器。后端使用 Go 编写,数据存储在 SQLite 中,并提供 REST API 和带签名的出站 Webhook 用于集成。

核心功能

  • 01通过 WebSocket 在多台设备间实时同步共享清单
  • 02支持离线创建和编辑,网络恢复后自动同步
  • 03支持分区、自定义清单图标和多个清单
  • 04基于购物历史的自动补全
  • 05可选的个人账户和独立工作区
  • 06提供 REST API 和带签名的出站 Webhook

适用场景

  • 情侣或家庭成员用各自手机共同维护一份购物清单
  • 多个家庭共用一台自托管服务器,各自保留独立清单
  • 通过 Webhook 将购物事件接入 n8n、Zapier 等自动化工具
  • 在信号较差的超市内离线使用清单

快速上手

  1. 1

    使用 Docker 按 README 快速开始命令启动 Koffan

    docker run -d -p 3000:8080 -e APP_PASSWORD=yourpassword -v koffan-data:/data ghcr.io/pansalut/koffan:latest
  2. 2

    在浏览器中打开 http://localhost:3000 并使用你的密码登录

使用前须知

  • README 中没有明确的开源许可证说明,复用前请先查看仓库的许可条款。
  • 离线功能需要通过 HTTPS 提供服务,局域网中的普通 HTTP 地址不支持离线使用。
  • 升级到 2.16.0 会迁移数据库且无法降级,升级前请先备份数据库。

收录于专题

标签

常见问题

Koffan 是什么?
面向家庭和合租住户的自托管购物清单网页应用,支持实时同步和离线使用。 Koffan 是一款轻量的网页购物清单应用,适合情侣和家庭共同维护购物清单。多人可以在不同设备上编辑同一份清单,修改通过 WebSocket 实时同步,大家随时能看到还需要买什么、哪些已经放进购物车。
Koffan 可以免费使用吗?用的什么许可证?
Koffan 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
Koffan 还在维护吗?
活跃维护中。Koffan 最近一次提交是在 2026年10月16日。
Koffan 适合用来做什么?
情侣或家庭成员用各自手机共同维护一份购物清单 多个家庭共用一台自托管服务器,各自保留独立清单 通过 Webhook 将购物事件接入 n8n、Zapier 等自动化工具 在信号较差的超市内离线使用清单
Koffan 怎么安装和运行?
使用 Docker 按 README 快速开始命令启动 Koffan: docker run -d -p 3000:8080 -e APP_PASSWORD=yourpassword -v koffan-data:/data ghcr.io/pansalut/koffan:latest 在浏览器中打开 http://localhost:3000 并使用你的密码登录
在哪里获取 Koffan?
源代码和安装说明在 GitHub 上:https://github.com/PanSalut/Koffan

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目