Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Chaojizan

БесплатноНе проверен

群众帮群众的超级 App,当大基建来做:消息、视频、小程序和外卖、团购、酒店、跑腿在一个 App 里,平台只修底座。不以盈利为目的:商家总负担 5% 封顶、配送费 100% 归骑手,收支按月公开、结余不分红,账目谁都能核。FastAPI + Flutter + React,AGPL 开源,欢迎部署到你的城市。

GitHubEmbed

Описание

群众帮群众的超级 App,当大基建来做:消息、视频、小程序和外卖、团购、酒店、跑腿在一个 App 里,平台只修底座。不以盈利为目的:商家总负担 5% 封顶、配送费 100% 归骑手,收支按月公开、结余不分红,账目谁都能核。FastAPI + Flutter + React,AGPL 开源,欢迎部署到你的城市。

README

超级赞 · 群众帮群众

超级赞(chaojizan)

CI Release License: AGPL-3.0

超级赞是一个开源的生活服务平台,出发点是「群众帮群众」:把日常要用的东西装进一个 App —— 聊天、视频、小程序、外卖、到店团购、酒店、跑腿。账号和实名、消息、支付和账本、地图和配送、小程序托管、审核和申诉,这些底座修一次,上面每接一个业务都能直接用。

平台的收入只有几笔固定费用:外卖佣金 5% 封顶,团购核销收 2%,酒店离店收 5%,跑腿收 2%,消息、视频和小程序不收费。配送费一分不抽,账目每月公开,有结余也不分红,用在骑手保障、商家扶持和降费率上。代码 AGPL 开源,一个城市一个月一百多块钱就能跑起来。

现在有什么

板块 内容 状态
消息 私聊、群(最多 1000 人)、频道、服务号;订单一单一个群 已上线
通话、机器人 1 对 1 语音 / 视频通话;机器人平台(Bot API) 已完成,线上未开
视频 投稿、弹幕、评论、竖屏流、UP 主空间;探店视频可挂本平台的店 已完成,后台开关控制上线
小程序 · 小游戏 开放平台,开发者注册开放,发布免费,没有能花钱买的曝光 已上线
AI 助手 通过 MCP 让 AI 替你点餐、发视频、发布小程序;付不了款,也过不了审 点餐已上线
身份与信用 超级赞号、资料页标签与勋章、信用分(顾客/商家/骑手同一套机制) 随下一版
外卖 23 个餐饮品类、拼单、到店自取、商家自配送 运营中
到店团购 · 排队 核销才收 2%,没用随时全额退;取号叫号 运营中
酒店住宿 离店才收 5%,无排他、无竞价排名、无年费 运营中
跑腿代购 帮送、帮买,平台收 2%,账单上单列 运营中
打车 计价规则公开,司机不被抽走三成 筹备中
网页版 / 电脑版 用户端网页版和 Windows、macOS、Ubuntu 电脑版,手机扫码登录 随下一版

怎么收费

业务 平台收多少
外卖 商家佣金 5% 封顶,单量大的商家阶梯降到 4%;配送费一分不抽
到店团购 核销才收 2%,未使用随时全额退
酒店 离店才收 5%;取消、未入住不收
跑腿 跑腿费收 2%,账单上单列;帮买的商品款一分不抽
消息、视频、小程序 不收费

几句话写在明处:

  • 外卖佣金 5% 是上限,不是目标。哪天 3% 能活,就降到 3%。
  • 配送费和小费 100% 归骑手,提现不收手续费。
  • 每一单的钱去哪了(商家实收 / 骑手所得 / 平台留存),顾客在订单页看得到。
  • 平台不以盈利为目的:收入先覆盖服务器、短信、地图和客服的开销,每月收支公开,结余不分红。
  • 不做会员等级,不发平台补贴,不卖数据,不竞价排名,不收推广费。

平台收入只有上面这几笔。出了事按谁的问题算谁的:商家有责任,顾客拿回全款(配送费和小费也退),钱由商家出;骑手有责任,先从公开可查的骑手保障金池出,不够的由骑手承担,不封顶,能申诉。平台只在一种情况下出钱:平台判错了,平台自己认。首单立减、超时安抚券这类平台出钱的开关连同代码已经删了,拨不回来;停发之前发出去的券照旧能用。

账目怎么查

入口 内容
透明中心 每日核账公示(差一分钱都亮红灯)、佣金去向、赔付记录、每 100 元分账实算、实际佣金率、规则变更留痕、系统可用率
运营大屏 实时订单/注册规模/城市分布,店内电视可投屏
公开账本 全部账务流水哈希链锚点,社区见证节点持续复算。改历史上任何一分钱,全网都会知道
版本公示 线上运行的版本 = 本仓 tag,透明中心·最近更新 与本仓提交对得上

见证节点有 Python、Go、网页、App 四个实现,跑同一套核账用例(在 witness/testdata/),四个口径分叉的话,平台在某一栏做假就藏不住。

下载

直链 定位
🍜 用户端 chaojizan-user-arm64.apk 消息、视频、小程序;外卖、团购、酒店、跑腿,每一单分账可查
🏪 商家端 chaojizan-merchant-arm64.apk 入驻免费,总负担 5% 封顶
🛵 骑手端 chaojizan-rider-arm64.apk 配送费 100% 归你
🖥 用户端网页版 / 电脑版 随下一版发布:网页版在 chaojizan.cc/web/,电脑版有 Windows、macOS、Ubuntu 用手机 App 扫码登录

安卓包是 arm64,当前线上版本见上面的 Release 徽章,下载页(带更新说明)在 https://chaojizan.cc/download。安装包由公开 CI 从 tag 构建,Release 页和下载站的 SHA-256 一致,App 内置更新检查,安装前校验 SHA-256。

收集了什么、用了哪几个第三方 SDK(极光推送、腾讯地图、安卓扫码用的 Google ML Kit)都写在隐私政策里。权限清单以三端 AndroidManifest.xml 为准;比如骑手端上线期间 App 在后台或锁屏也要定位(安卓会显示常驻通知),用于抢单大厅按距离排序、顺路判断和配送轨迹,下线就停。

自己部署一个

1. 后端(5 分钟)

docker compose up -d db redis          # PostgreSQL(PostGIS) + Redis

cd server
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload          # http://localhost:8000/docs 看接口文档

# 另开终端灌演示数据
cd server && source .venv/bin/activate && python -m scripts.seed

或者全容器化:docker compose up -d --build

2. 演示账号(密码都是 123456)

角色 手机号 说明
用户 13800000001 用户端登录
商家 13800000002 名下「张记面馆」(已过审)
骑手 13800000003 骑手端登录
管理员 13800000000 管理后台 http://localhost:8000/admin
商家 13800000004 名下「李记烧烤」待审核,演示审核流程

3. Flutter 三端

装好 Flutter SDK 后直接跑(平台目录已入库):

cd apps/user_app && flutter run
# merchant_app、rider_app 同理
  • iOS 模拟器直连 http://127.0.0.1:8000
  • Android 模拟器加 --dart-define=SUPERZ_API=http://10.0.2.2:8000
  • 真机换成电脑的局域网 IP

4. 走一遍完整流程

  1. 用户端:金刚区「点外卖」→ 选品类 → 「张记面馆」加菜 → 支付(模拟一键完成)
  2. 商家端:新订单响铃 → 接单 → 出餐完成
  3. 骑手端:上线 → 抢单 → 取餐 → 送达
  4. 用户端:确认收货,订单完成。点开「钱去哪了」看这一单的分账

5. 改完代码跑什么

make unit          # 纯函数单测,秒级
make analyze       # Dart 静态检查 + 三端 Dart 单测 + 各 web tsc + 小程序测试
make test          # 近 200 套 e2e,跑在真实 HTTP 接口上(需要服务已启动)

make test 的前置条件写在 Makefile 注释里(服务端要用 AUTO_FLOW_ENABLED=false 启动等),少一个都跑不完。e2e 清单在 server/tests/e2e_suites.txt,新写的要加进去,单测会拦漏加的。CI 把这份清单按实测耗时分成 4 组并行跑,每组一个干净库,套件之间不能互相依赖数据。

CI 对每个 PR 跑同样的三件事:服务端 e2e(起真 PostGIS/Redis/MinIO,和生产同一条代码路径)、三端静态检查与 Dart 单测、工作区与全历史的密钥扫描。配置在 .github/workflows/ci.yml,里面的注释解释了每个不显然的选择。

代码结构

chaojizan/
├── apps/
│   ├── user_app/         # 用户端(Flutter):消息、视频、小程序;外卖、团购、酒店、跑腿
│   ├── merchant_app/     # 商家端(Flutter):接单出餐、菜品、对账、营销、打印
│   └── rider_app/        # 骑手端(Flutter):抢单、导航、钱包、实名认证
├── packages/shared/      # 三端共享:模型、API 客户端、登录/开屏/推送/地图
├── packages/miniapp-sdk/ # 小程序 SDK(sz-webapp.js)
├── server/               # 后端(FastAPI + PostgreSQL/PostGIS + Redis)
│   └── app/
│       ├── state_machine.py   # 订单状态机(所有状态变更的唯一入口)
│       ├── services/          # 结算/审计/账本锚点/风控/营销/定价……
│       └── routers/           # 业务路由 + 公开数据(screen/transparency)
├── web/                  # 官网 + 运营大屏 + 透明中心 + 开发者文档(React + Vite)
├── merchant-web/         # 商家网页工作台(React+TS+AntD):外卖接单/菜品批量、酒店房态
├── admin-web/            # 平台后台(React+TS+AntD):审核、仲裁、社区治理、平台开关
├── developer-web/        # 开发者后台:小程序 / 小游戏 / 机器人的发布与管理
├── miniapps/             # 官方小程序和小游戏源码 + 最小模板
├── mcp-server/           # AI 助手的 MCP 服务(只用 Python 标准库)
├── witness/              # 社区见证节点脚本(任何人可跑,复算公开账本)
├── docs/                 # 开发提示词、结构设计、运维手册
└── deploy/               # 生产部署(compose 全栈:api/nginx/frpc)

docs/DEV-PROMPTS-*.md 是这个项目的决策记录:每批功能动手前先写清楚调研结论、要守的边界、不做什么以及为什么。比 commit 信息完整,想看「为什么是这个设计」可以从 docs/INDEX.md 进。

订单状态流:待支付 → 待接单 → 制作中 → 待取餐 → 配送中 → 已送达 → 已完成。骑手在「制作中/待取餐」阶段抢单,每次流转写入 order_events 审计表。

一些设计决定

每条都给了代码坐标,不用信描述,可以直接去读实现(行号会漂移,对不上时按函数名搜):

  • 金额一律用「分」存整数,杜绝浮点误差 —— server/app/models.pyDish.price_cents,订单侧 Order.*_cents 同理
  • 状态机集中管控:非法流转直接 409,每次变更写审计表 —— 唯一入口 server/app/state_machine.pyassert_transition(),审计表 order_events
  • 账本只追加不修改:冲账 = 追加负数行;每日核账恒等式,篡改 1 分钱会被抓出来 —— 铁律写在 models.pyRiderEarning 文档里,冲账在 services/settlement.pyreverse_merchant_earning()
  • 防超卖、防双花、抢单防冲突:一律用数据库条件 UPDATE,并发安全在存储层保证 —— 抢单 routers/riders.pygrab_order(),库存扣减 routers/orders.py,提现行锁 request_withdrawal()
  • 支付幂等:模拟支付与微信回调走同一个入账函数,联调只换通道不换逻辑 —— services/payment_core.pymark_order_paid()
  • 快照优于重算:凡是要当证据或当钱的(配送费拆分、申诉证据),一律在下单/送达当时存快照 —— 设计理由写在 models.pyOrder.fee_parts 字段上
  • 样本不足就说不足:分位数、热力图这类统计,低于门槛不给数字只给样本数 —— services/drop_time.pyMIN_SAMPLE = 20,热力图每格带 enough 标记

参与

  • 提 issue / PR 前请读 CONTRIBUTING.md,提交走 Conventional Commits
  • 安全漏洞不要走公开 issue,报告方式与威胁模型见 SECURITY.md
  • 任何提交前跑 scripts/security_scan.sh .(仓库公开,密钥与内网信息零容忍)
  • 跑一个见证节点复算我们的账本;再进一步,照 docs/LEDGER-SPEC.md 用你的语言写个独立验证器
  • 想把它部署到你的城市:开城手册

几个常被问到的

没有补贴,冷启动怎么办?

死亡螺旋怕的是每单倒贴钱:补贴一停人就走,不停钱就烧完。我们不补贴,也不打算跟大平台抢全国的量。一个城市一个月的固定开销一百多块,单少只是长得慢,不会被拖死。起步也不需要三边凑齐:消息、视频、小程序不靠商家和骑手的密度,用户有别的理由先用起来;外卖先找自带熟客的小店,一份 21 块的菜别的平台扣 4 块多,这里扣 1.05;骑手不够的地方先用到店自取和商家自配送。

这不也是抽成吗,只是多少的区别?

是抽成。区别不只在多少:5% 封顶写在这里,能降就降;收入只有上面那几笔,不卖数据、不收推广费、不抽配送费;平台自己的收支按月公开,结余不分红;代码开源,账算得对不对谁都能核。

公平、公正、公开具体指什么?

公开:每一单的钱怎么分,顾客在订单页看得到;平台账目串成哈希链,谁都能跑见证节点复算;线上跑的版本就是本仓库的 tag。公平:店铺排序不卖钱,小程序目录的排序是一段公开的纯函数;信用分只算平台判定成立、能申诉的事,接单之后才给这一单的交易对方看,不用来派单和定价。公正:判了责任、处罚了人都能申诉;判责规则、处置统计、管理员查看私聊的次数,都在透明中心公示。

接下来

底座先修好,业务一个一个接上去。

底座

  • 账号与实名、消息、视频、小程序开放平台、公开账本与见证节点、信用分、用户端网页版与电脑版(随下一版发布)
  • 微信支付正式商户号联调 —— 服务商资质 2026-08 已到位,收款链路代码就位,客户端 SDK 待接
  • 分账自动化(货款直达商家、不经平台沉淀)—— 卡在一个必须先问微信的问题:我们属于「普通服务商」还是「电商平台服务商」,两套进件与分账 API 不通用
  • iOS 版
  • 逐城开城:开城清单运营 + 城市骑手/商家招募

生活服务

  • 外卖、到店团购与排队、酒店住宿、跑腿代购都在运营中,收费见上面的表
  • 外卖正在做的:场景难度进 ETA 补时(等送达段数据攒够,只补时不加价)
  • 明确不做:爆单预警与单量预测、派单分、服务分、骑手等级、拿来处罚的违规积分、付费排名、平台补贴烧钱

出行

  • 打车筹备中:司机不被抽走三成车费,计价规则公开,账目同一套透明框架

以后接进来的行当

凡是抽成高、账目不透明的行当,都可以接到这套底座上,用「低抽成 + 账目公开 + 代码开源」重做一遍:家政(阿姨的钱不过中介的手)、维修(明码标价,不搞小病大修)、货运(不收会员费,不用算法压价)、零工(日结工资一分不被中介截)。

这套代码 AGPL 开源,任何人可以拿它在任何城市部署一个不吸血的平台。它能跑通,就会有人跟着做。

开发日志

已交付能力全记录(点开)
  • MVP 全链路:下单 → 支付 → 接单 → 配送 → 完成;订单状态机 + 审计表
  • 商家入驻审核(食品经营许可证必填)、骑手实名认证(未认证不得上线抢单)
  • 配送费按距离计价、商家营业时间自动开关店、超时自动流转(关单/取消/自动确认)
  • 评价体系(一单一评,差评不删,刷评只标记不隐藏)、用户主动售后、客服工单
  • 商家实时听单(WebSocket + 锁屏语音播报)、云打印、店员账号、KDS 出餐看板
  • 骑手钱包与提现(行锁防双花)、商家对账(日账单恒等)、阶梯佣金自动降档
  • 到店团购券(核销才收 2%,未核销全额退)、拼单、店铺券/满减/限时折扣(商家承担)
  • 反作弊闭环(标记不拦截、分级处置可申诉)、食安投诉、深夜保护、极端天气停运
  • 公开账本哈希链 + 社区见证节点 + 每日账务自检(凌晨核对近 30 天每一笔)
  • 官网 + 全国运营大屏 + 透明中心(核账/佣金去向/赔付/财报/治理留痕/可用率)
  • 外卖 23 品类体系(二级品类页)、开屏运营位(后台可配,不阻塞冷启动)
  • 三端品牌开屏、亮暗双主题、长辈版字号
  • 微信支付 V3 / 极光推送骨架就位(填 Key 即联调);短信验证码已接阿里云
  • 生产部署:内网穿透全栈自持(compose:api/nginx/frpc),证书自动续期,每日备份 + 恢复演练
  • 连锁店群:门店切换(X-Shop-Id)、品牌成员授权、总部统一下发营销、多门店合并对账
  • 商家合规台账:证照有效期与到期提醒、从业人员健康证、进货查验(溯源)、菜品成本与毛利
  • 商家效率:菜单批量导入、定时改价/上下架、多台云打印机、订单回调对接自家收银 ERP、蓝牙小票机直连
  • 骑手权益:到店等餐时长记录、申诉通道、楼层补时、消息中心、接单偏好、同店批量取餐、周报、新手保护期、意见反馈(平台必须回复)
  • 配送费透明:构成拆分存快照跟着订单走,四端可见;上门难度费顾客自选
  • 消息:私聊、群、频道、贴纸、语音、1 对 1 语音/视频通话(开关控制)、订单一单一个群、服务号、机器人平台、社区治理、导出我的数据、超级赞号、标签与勋章、信用分
  • 视频:投稿与转码、弹幕、评论、收藏、投币、UP 主空间、推荐与搜索、视频挂店
  • 小程序开放平台:开发者注册开放、托管不可变版本、审核与申诉、initData 验签、云存储、小游戏
  • AI 助手(MCP):令牌分权限,每项一张全匹配白名单,付款和审核永远在人手里
  • 用户端网页版与电脑版:扫码登录、一键登录(手机确认),已登录的网页和电脑可以随时移除

许可

AGPL-3.0。拿去用,拿去改,但改完要还给群众。

from github.com/hanpaopao66/chaojizan

Установка Chaojizan

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/hanpaopao66/chaojizan

FAQ

Chaojizan MCP бесплатный?

Да, Chaojizan MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Chaojizan?

Нет, Chaojizan работает без API-ключей и переменных окружения.

Chaojizan — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Chaojizan в Claude Desktop, Claude Code или Cursor?

Открой Chaojizan на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Chaojizan with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development