GiveRoute:别再倾倒捐款,去路由真正被需要的东西
来源:dev.to — 2026-09-06
📋 概述
这是 DEV「慷慨周挑战」的作品。作者点出所有在收容所做过志愿者的都知道的「二次灾害」:房间里堆满随机又没人要的捐赠物,而社区最紧急的需求(婴儿配方、特定药物)却完全得不到满足。他做的 GiveRoute 把捐赠物流从 donor-centric 翻转为 need-first(需求优先):验证过的需求清单聚合器带新鲜度衰减(过期请求自动降级)、一个把类别/数量上限/受众年龄/半径/新旧度都纳入的确定性 8 因子匹配引擎、8 步交接协议,以及发放可验证收据(GR-2026-XXXX)而非虚荣徽章的影响台账。
🔑 核心要点
- 二次灾害正是产品要解的题:收容所堆满随机无人要的捐赠,而婴儿配方、特定药物这类最急需求却被晾着——捐赠物流必须从捐赠者主导改为需求优先
- 用确定性打分而非 LLM 黑箱拍板物流:matcher.ts 把 100 分摊到 8 个具体变量上,明确惩罚数量过剩,避免收容所被善意淹没
- 需求有新鲜度与证据链:走 5 个审计阶段(从找到来源到机构确认),超过 30 天未验证自动标记 Stale 以防拿着过期信息乱跑
- Google Gemini 在服务端、严格 SSRF 防护之后运行,把混乱的用户描述与机构愿望清单整理成类型化 civic schema——AI 只做脏活规范化不碰关键决策
- 技术栈:React 19 + TypeScript + Tailwind,Express 后端适配 Vercel serverless,Supabase PostgreSQL 用行级安全 RLS 并带离线内存回退,41 个自动化测试覆盖匹配数学与安全边界
💡 金句
不想用一个模糊的 AI 黑箱去决定物流——打分引擎把一百分摊到八个具体变量上,显式地惩罚数量过剩,这样收容所才不会被冲垮。
👍 0
👎 0
← 返回 dev.to 首页