首页 › weekly › 表格里长出数据库,自托管掘新矿

表格里长出数据库,自托管掘新矿

本期发掘思路

这一轮刻意避开两条已被人踩烂的路:AI 编程工具和 Agent 框架。换个思路,沿着「自托管」和「单点小工具」两条暗线往下挖——找那些不追风口、却把一个具体痛点焊死的项目。最终选了六件货:一件「表格里长出数据库」的 Grist,一件把邮件营销底座开源的 listmonk,一件让手指少打几百万个字的 espanso,一件给全家服务器做体检的 Beszel,以及两件更冷门的:户外轨迹图书馆 wanderer、育儿记录台 Baby Buddy。其中 wanderer 和 Baby Buddy 都在两千星上下的量级,属于典型的「小而美」。文中 Star 数为成稿时的量级参考,精确数据请以仓库页面为准。


1. Grist:电子表格的外壳,数据库的芯

仓库:gristlabs/grist-core | 约万星级(量级) | 长期活跃维护

一句话定位:当你用 Excel 管理业务管到几千行、公式链一断全表报错的时候,Grist 告诉你:表格的皮可以留下,但芯得换成数据库。

它解决什么痛点:Airtable 把「表格当应用」这件事教育了市场,然后按人头按月收费,数据躺在别人的云上。团队内部那些库存表、客户表、排班表,上 ERP 太重,用表格又太脆。Grist 把这个中间地带整个开源了。

核心功能拆解: - 公式是真的 Python。单元格里写的不是 Excel 公式,而是 Python,可以引用整列做过滤、聚合,相当于把 pandas 的表达力塞进了表格。 - 文档即 SQLite。每个 Grist 文档底层就是一个 SQLite 数据库,可以整文件下载带走,数据主权彻底归自己,这一点对担心「SaaS 跑路」的用户是降维打击。 - 细粒度权限。可以按行、按列、甚至按单元格设置谁能看谁能改,这是传统表格完全做不到的。 - 表间引用。订单表引用客户表的一行,像外键一样工作,改一处全局联动。 - 自托管用 Docker 起一个容器即可,官方还提供云服务兜底,两条路都不堵死。

上手难度:⭐⭐(会 Excel 就能上手,会 Python 如虎添翼)

适用人群:小团队运营、内部工具开发者、被 Airtable 账单吓到的人。变现思路:给中小企业交付「轻量 ERP」——用 Grist 搭库存、客户、财务流水,按套定制收费;或深耕垂直行业的模板资产,模板本身就能成为生意。


2. listmonk:把邮件营销的发动机拆给你看

仓库:knadh/listmonk | 约两万星级(量级) | 长期活跃维护

一句话定位:Mailchimp 们按订阅人数阶梯收费,订阅者过千、账单就开始爬坡;listmonk 把整套邮件营销底座开源,成本只剩 SMTP 通道费。

它解决什么痛点:独立开发者发周报、跨境电商发促销、社区发公告,全被 SaaS 邮件平台捏着喉咙——订阅人数涨,费用涨得更快,迁移时数据还得看人脸色。

核心功能拆解: - 极简部署:一个 Go 二进制加一个 PostgreSQL,docker compose up 就是完整服务,没有微服务、没有消息队列、没有一堆依赖。作者 knadh 出身印度券商 Zerodha,把「单文件哲学」贯彻得很彻底。 - 百万级订阅管理:订阅者分列表、打标签、做细分筛选,批量导入不虚。 - 完整的营销闭环:活动(campaign)用 Go 模板写,自动处理退订、弹回(bounce)、投诉反馈,合规这一环不缺。 - 事务性邮件 API:除了群发营销信,验证码、订单通知这类单发事务邮件也有 HTTP API,等于顺手把 SendGrid 的活也干了。 - 自备 AWS SES 之类的发送通道后,单封成本降到厘级。

上手难度:⭐⭐(有 Docker 一键起,懂一点域名 DNS 配置更顺)

适用人群:newsletter 作者、独立开发者、跨境电商、开源项目维护者。变现思路:代客部署发送基建并按发送量收托管费;把「数据不出自己服务器」的隐私合规作为面向欧洲客户的卖点,做白标邮件服务。


3. espanso:让手指退休一半的系统级文本扩展器

仓库:espanso/espanso | 约万星级(量级) | 长期活跃维护

一句话定位:在任何一个输入框里打下 :email,自动展开成完整邮箱;打下 :addr,展开成两行地址。Rust 写就,纯本地运行,一分钱不花。

它解决什么痛点:TextExpander 这类商业文本扩展工具按年订阅且生态偏 Mac;而客服、翻译、程序员、医生每天重复打的那些话术,才是真实的肌肉劳损。

核心功能拆解: - YAML 即配置:触发词到替换文本就是一条映射,五分钟上手,学习成本接近零。 - 不止是替换文本:支持表单(展开时弹出填空)、日期运算(自动算「下周五」是几号)、内嵌 shell 脚本输出、剪贴板图片,想象空间从「快捷短语」直接跳到「键盘自动化」。 - 真正的跨平台:Windows、macOS、Linux 全覆盖,连 Linux 下的 Wayland 都照顾到了,这在桌面工具里是稀有品质。 - 包管理器生态:官方 hub 里有社区维护的包——emoji 包、拼写纠错包、各种语言话术包,一条命令安装。 - 纯本地运行,打过的每一个字都不出机器,这一点对处理客户敏感信息的岗位尤其重要。

上手难度:⭐(本期最低,装上就回不去)

适用人群:客服、翻译、程序员、文案、医生。变现思路:行业话术包是天然的商品——法律函件模板包、医疗病历常用语包、电商客服话术包,搭配企业批量部署和培训服务收费。


4. Beszel:给全家服务器挂一张体检表

仓库:henrygd/beszel | 万星级量级,近年蹿升 | 活跃迭代中

一句话定位:想看几台服务器(或家里那堆小主机)的 CPU、内存、磁盘温度,不值得上 Prometheus 加 Grafana 全家桶——Beszel 用「一个 hub 加一堆轻 agent」把这件事做轻了。

它解决什么痛点:监控这个领域,重型的方案资源开销和上手门槛都劝退普通用户;而市面上不少轻量方案又闭源收费。Beszel 用极低的资源占用补上了这个空档,树莓派都能跑得动。

核心功能拆解: - 架构极简:中心是 hub,本体是一个 PocketBase 单二进制(自带数据库、用户系统和后台界面);每台被监控机器跑一个 Go 写的 agent,定期上报指标。 - 不需要打洞:agent 主动通过 SSH 隧道向 hub 汇报,被监控端不用开放反向代理端口,公网 VPS 和家里 NAT 后的机器都能无脑接入。 - 看得全:CPU、内存、磁盘、网络、温度,外加 Docker 容器级别的状态,homelab 玩家关心的基本都在。 - 告警和多用户:阈值告警可配,支持 OAuth 登录,一家人的小机房可以各看各的。 - 整个系统内存占用是个位数到几十 MB 的量级,和动辄吃掉一个容器的传统方案形成鲜明对比。

上手难度:⭐⭐(会装 Docker 或跑一个二进制即可)

适用人群:homelab 玩家、小公司兼职运维、独立开发者。变现思路:作为「纳管服务」的一部分捆绑卖——帮客户部署应用时顺手搭监控,月费订阅;或做白标面板给中小 IDC。

它的结构一眼就能看懂:

flowchart TD
    A1["Agent 主机一"] -->|SSH 上报| H["Hub 控制台"]
    A2["Agent 主机二"] -->|SSH 上报| H
    A3["Agent 家里 NAS"] -->|SSH 上报| H
    H -->|存储| D[("PocketBase 库")]
    U["浏览器"] --> H

5. wanderer:把徒步路线存进自己家的轨迹图书馆

仓库:flomp/wanderer | 千星级量级,低于两千星 | 持续活跃迭代

一句话定位:AllTrails 和 Komoot 把全世界的路线收进了自己的数据库,然后开始收订阅费;wanderer 是自托管版答案——你的轨迹、你的路线、你自己存。

它解决什么痛点:户外爱好者积攒多年的 GPX 轨迹散落在各种 App 里,想统一管理、想随时导出、担心平台关停或改收费规则,都无能为力。

核心功能拆解: - 上传即解析:丢一个 GPX 进去,距离、累计爬升、预计用时自动算好,不需要手动整理。 - 地图与列表双视图:所有路线落在地图上,也可按标签、难度、评分筛选,找「下一周末去哪」时特别顺手。 - 共享与私有可切换:每条路线可以完全私有,也可以生成公开链接分享给队友,俱乐部场景直接覆盖。 - 公共路线库:内置 SharedTracks 数据源,可以浏览导入别人分享的公共路线,从空库冷启动也不难。 - 整套东西轻量到可以跑在家里的 NAS 上,部署用容器几个命令的事。

上手难度:⭐⭐

适用人群:徒步与骑行爱好者、户外俱乐部、登山向导。变现思路:给俱乐部做付费托管版(成员共享路线库+权限管理);和本地户外品牌合作做联名路线内容,是这类「小数据资产型」产品最顺的变现路径。


6. Baby Buddy:育儿记录这件事,不该被广告围住

仓库:babybuddy/babybuddy | 两千星上下(量级) | 社区长期维护

一句话定位:喂奶、换尿布、睡觉、吃药、身高体重,新手爸妈每天要记的一切,Baby Buddy 用一个自托管网页全部收拢——没有开屏广告,没有会员弹窗,数据在自己手里。

它解决什么痛点:市面育儿 App 的免费版越来越像广告位,关键功能塞进订阅墙,记录了三年的数据想导出却处处受限;而育儿记录恰恰是最私密、最该长期保存的数据之一。

核心功能拆解: - 计时器是一绝:开始喂奶点一下,睡着换边点一下,自动记时长;多个计时器并行,双胞胎家庭也够用。 - 时间线视图:一天作息拉成一条线,几点喝的、睡了多久一目了然,交接给夜里值班的另一位家长零沟通成本。 - 成长曲线:身高、体重、头围按WHO标准曲线呈现(标准对照数据内置),儿保体检前打印一张就够。 - REST API 全开放:每个记录动作都有接口,社区有人接进 Home Assistant,有人用小屏幕在婴儿房门口做常驻状态板。 - 多人协作:爸妈、老人、育儿嫂各有账号,都能记,记录人可追溯。 - Django 写就的老牌项目,迭代多年,稳是它最大的特征。

上手难度:⭐⭐

适用人群:新手爸妈、托育机构、月子中心。变现思路:面向托育机构做托管部署——「记录数据不出机构」是这类 B 端客户最在意的合规卖点;也可衍生月嫂、育儿嫂的工作留痕工具。


本期横向对比

仓库 类型 热度量级 上手难度 适用场景
gristlabs/grist-core 表格型数据库 万级 ⭐⭐ 内部工具、轻量业务系统
knadh/listmonk 邮件营销底座 两万级 ⭐⭐ 通讯、营销、事务邮件
espanso/espanso 文本扩展器 万级 ⭐ 话术、代码片段、键盘自动化
henrygd/beszel 轻量监控 万级 ⭐⭐ 服务器/家庭机房体检
flomp/wanderer 轨迹管理 千级 ⭐⭐ 户外路线库、俱乐部共享
babybuddy/babybuddy 育儿记录 两千上下 ⭐⭐ 家庭育儿、托育机构

本期知识地图

mindmap
  root(("本期六件货"))
    数据自主
      Grist
      文档即 SQLite
      Python 公式
    信息触达
      listmonk
      单二进制
      自备 SMTP 通道
    效率输入
      espanso
      触发词展开
      纯本地运行
    运维观测
      Beszel
      hub 加轻 agent
      SSH 免打洞
    生活与户外
      wanderer
      GPX 轨迹库
      Baby Buddy
      计时器与成长曲线

本期之最

参考来源

  1. gristlabs/grist-core — Grist 开源核心仓库
  2. knadh/listmonk — listmonk 项目仓库
  3. espanso/espanso — espanso 项目仓库
  4. henrygd/beszel — Beszel 项目仓库
  5. flomp/wanderer — wanderer 项目仓库
  6. babybuddy/babybuddy — Baby Buddy 项目仓库

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入