Show HN:CheapFoodMap——一张 10 美元以下好饭地图

查看原文 HN 讨论

文章摘要

作者 jaep1 的自述带着相当直接的个人处境:他在同一家公司干了 18 年后被裁,于是给自己定了 100 天,公开地做点有用的东西。CheapFoodMap 就是产物——一张众包的 10 美元以下餐食地图,明确排除连锁品牌,只收本地好馆子。

灵感来自韩国的「거지맵」(乞丐地图),一个学生们用来找便宜吃食的众包地图。上线时覆盖以德州最密(作者住在达拉斯),但已经有 15 个美国城市、1200 份餐食。种子数据的来源是 Google 评论中 4.2 星以上、评论数至少 500 条的店,并逐条核实单品价格在 10 美元以下。他在帖子里点名求两类反馈:价格新鲜度模型是否说得通,以及什么才能让人信任这类网站上的价格——因为通胀让餐饮涨价变得非常频繁,他想知道怎么激励用户来更新价格。

站点的 About 页把定位写得更明白:这是一场对抗通胀的小型运动。15 美元的三明治、9 美元的咖啡、名不副实的「超值套餐」,CheapFoodMap 面向的是既爱好吃又爱好价的人。它承诺至少 10% 的利润捐给流浪者供餐项目和食物银行,并会发布带确切数字的季度报告——作者强调这条承诺从第一天就写进去了。参与方式是三件事:放一个点、给别人的点投票、分享给受够了 15 美元三明治的朋友。产品侧有排行榜和「橡果」积分的游戏化机制,吉祥物是一只花栗鼠 Chip。

技术栈方面作者在评论里交代得很清楚:Next.js + TypeScript + Tailwind,部署在 Vercel,地图和门店数据用 Google Maps API(贵,但他认为最成熟、用户最熟悉),种子数据是用 Google API 和 Yelp API 拉取高分餐厅后,再用 Claude API 对每条列表和菜单做两轮审阅。设计上他的四条心得是:Tailwind 配一个刻意收窄的调色板(一个强调色、近系统字体、其余全用默认);吉祥物能掩盖大量设计瑕疵;用 Claude Code 在紧密循环里迭代 UI——描述哪里不对、看渲染、再调,他的工作是判断结果而不是推像素;以及对工具类应用,原创布局是负债,直接抄你已经喜欢的应用,用户要的是熟悉感。

需要说明的是,本文的原文部分主要基于站点 About 页面和作者在 HN 上的自述——CheapFoodMap 主体是一个客户端渲染的地图应用,直接抓取只能拿到框架,没有可读的正文内容。

HN 评论精华

帖子拿到 287 分。作者几乎回复了每一条评论,整个讨论区实际上变成了一场高强度的公开产品评审,作者当场改了服务器配置、加了功能、记了一整周的待办。

最核心的批评:什么算「一顿饭」

最有价值的商业模式建议:GasBuddy 类比

改名之争

这条支线意外地长。Waterluvian 指出「cheap food」这个名字会劝退商家,连「budget food」都更容易接受。作者说这正是他最大的顾虑,已经和几位老板聊过,负面联想让他们不太愿意上榜;他考虑过 under10、dimedrop、Fooglemap,但 Fooglemap 太像 Google Maps,一旦做大就有律师函风险。于是评论区变成了一场取名大会:MealOnADime、Dine n’ Save、mealdeal.com(已被注册)、Munch4Less、LunchBuddy(又被指出会撞 GasBuddy)、valuefoodie、FoodMiser、Food4thecheap……作者一边试 namecheap 一边回复,自曝已经买了大约十个域名。ohbleekcommandrea 则站在原名一边:cheapfoodmap 挺好,那些因为这个词却步的商家才是傻——能让需要一顿实惠好饭的人吃饱是一种荣幸,他们应该为能给社区提供这份福气而骄傲。toader 补充语言学观察:在美国口语里 cheap 大多数时候被当作 inexpensive 用,理解为低价而非低质。

冷启动与数据质量

发布日的真实场景

评论区完整记录了一次 Show HN 上首页的实况:sshankychirau 报站点打不开,作者当场升级了服务器和 Google API 配额;mncharity 提交了一份非常细致的 UX 报告(点击附近餐厅列表项后地图毫无反应、聚合标记不显示选中态、卡片上每一行都写着「New York, NY」这种无用信息),作者连声道谢;throwup238 报告从餐厅页返回时地图视口不还原,会被甩回德州。作者在一条回复里写道,被裁后做了三个月,这是第一次真正获得关注,过去 24 小时让他充满感激。

国际化的呼声压倒性

欧盟、加拿大、澳大利亚、德国、新西兰、以色列、斯洛文尼亚的用户都在要求支持,作者一开始只回「会努力」,几小时后在某些回复里已经变成「现在支持了」。chrysoprace 给了两条具体建议:用户拒绝定位授权时可以按 IP 做粗略地理定位来居中地图;以及可以按购买力平价来换算「10 美元档」在当地货币中的等价物。smnplk 的评论则是最直白的抱怨:这对欧洲毫无用处,什么都加不了。

几条跑题但有意思的