Show HN: Files.md – Open-source alternative to Obsidian
631 points • 19h agoArticle Link

Files.md 是一款简单且本地优先的应用,用纯 .md 文件来管理日常事务。它把自己定位为复杂"Second Brain"工具(如 Obsidian)的一种极简替代,认为过多的功能和模板会变成一种陷阱,反而拖延真正的思考。核心理念是:限制能激发创造力;因此工具被设计得极其简洁,代码库小到一个人或一个大语言模型都能完全理解。

该应用作为 Progressive Web App 直接在浏览器中运行,无需安装且支持离线使用。它强调用户对数据的所有权,所有内容都保存在本地 .md 文件中,并可选择通过单一二进制服务器或 iCloud 、 Dropbox 等云服务进行同步。一个关键功能是集成的 Telegram 聊天机器人,允许用户随手记录想法、笔记和任务,并将其保存到文件系统。

作者批评"Second Brain"概念,引用文章指出这类系统可能制造一种虚假的掌控感,成为拖延的借口。真正的价值在于用自己的大脑去思考笔记、在想法间建立联系并深化理解,而不是单纯地收集信息。文章也提醒不要让记笔记阻碍现实体验和情感疗愈。

实际使用很简单:打开网页应用、安装并选择一个本地文件夹,就能创建笔记、清单、日记和任务,这些内容按预设但灵活的结构组织。应用提供常用操作的快捷键和实用脚本,例如把 Whoop 指标加入日记或转换维基链接。项目是开源的,强调简洁、最小依赖以及便于初级开发者理解的代码。

技术上,后端使用 Go 编写,前端用 JavaScript,并附有详细指南。文章强调性能,指出互斥锁操作相比磁盘 I/O 可以忽略不计。还包含一系列 Architecture Decision Records(ADR),记录项目演进,比如从复杂的 WASM 实现回退到更简单的 JavaScript,以及统一采用纯 markdown 链接以提升跨平台兼容性。总体目标是打造一个可持续、可移植且无干扰的知识管理系统。

308 comments • Comments Link

• Obsidian 本身并非开源,但给人的感觉像是开源的:用户完全掌控自己的数据,数据以开放的 markdown 标准存储,且插件 API 非常开放,这营造出一种开源的感知,尽管核心应用仍是专有的。

• 开发者创造了有价值的产品,理应获得报酬。 Obsidian 雇佣了全职工程师,他们需要生计。其商业模式也合理:核心工具免费,笔记以纯 markdown 存储,用户可以选择付费使用同步等服务来支持持续开发。

• 由于是 Electron 应用,Obsidian 的代码并没有经过混淆,相对容易检查。官方团队甚至在支持论坛上鼓励用户自行审查代码,以增强信任。

• 越来越多的人认为,在 AI 时代软件应该以开源方式发布,这样任何人都能根据需要进行调整,最好能直接修改代码而不是依赖复杂的插件系统。借助 LLM,普通用户现在也能克隆仓库并让 AI 帮忙定制。

• 开源生态可以通过商业许可、云服务或赞助等方式补偿开发者的付出。许多开发者最初是为自己需要而构建工具,公开后又能从社区的改进和错误修复中受益。

• 但开源也有维护负担,比如要处理大量不必要的 pull request,这些工作可能超过偶尔修补所带来的价值。管理社区贡献需要维护者投入大量时间和精力。

• 与其纠结源码是否公开,更重要的是开放标准和数据可移植性。 Obsidian 使用纯 markdown 文件,意味着用户不会被锁定,可以随时迁移到其他工具。优先保证开放标准和联邦化,比开源许可本身更关键。

• Files.md 被介绍为一个自托管的开源 markdown 知识库,强调简洁和顺畅的记笔记体验。它并不是要做一个与 Obsidian 功能等同的替代品,而是一种更注重极简和开箱即用的不同路径。

• 个人知识管理领域还提到了 TiddlyWiki 、 TrilliumNext 、 SilverBullet 、 Logseq 和 SDocs 等工具,它们在自托管、 markdown 存储、可脚本化和协作功能上各有权衡。

• 长期笔记工具的一个关键原则是既保留纯文件形式的数据,又拥有打开这些文件的软件。这样文件与软件就能在用户完全拥有的前提下共同演进。 Golang 被认为是这类软件的良好选择,因为它简单、易于在几十年内维护。

讨论的核心是开源理念与可持续软件开发之间的张力,以 Obsidian 为案例展开。虽然许多人认为笔记类工具在 AI 时代应该开源,因为修改代码变得更容易,但也有人认为开发者应获得公平的报酬,而开放的数据标准已经为用户提供了足够的自由。参与者还就个人知识管理领域分享了围绕数据所有权、简洁性和长期可维护性等不同优先级的工具和方法。