ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

AFFiNE开源知识生产平台:文档白板数据库一体化,本地优先的Notion替代

2026/9/24 12:15:50 拓冰建站 浏览量
AFFiNE开源知识生产平台:文档白板数据库一体化,本地优先的Notion替代 这两年我把市面上能折腾的知识管理工具基本都试了一圈从 Notion 到 Obsidian再到各种基于 Markdown 的本地笔记软件最后反而在一个叫 AFFiNE 的开源项目上停了下来。AFFiNE 给自己的定位是“新一代开源知识生产平台”这个说法一开始我觉得有点营销味实际用下来才发现它真不是又一个 Markdown 笔记本而是试图把文档、白板、数据库这三类工具揉进同一个编辑器里同时做到本地优先、数据可控、多人协作不留死角。这篇文章不打算堆功能清单就从我每天实际工作的视角出发拆一拆这个平台到底解决了什么问题适合哪些人有哪些坑需要提前绕开。先说说我个人的使用背景平时既要做产品方案又要写技术笔记偶尔还要给团队画流程图和架构图。过去的状态是 Notion 里堆文字、Miro 里画白板、飞书文档里做表格知识分散在三个工具里拆得稀碎。换到 AFFiNE 之后最大的感受不是“功能变多了”而是“逻辑终于顺了”文档里可以直接铺开一块无限白板白板上又能嵌入文档块和数据库视图所有的内容层级都长在同一棵树里。这种统一才是“知识生产”这四个字真正值钱的地方。1. 先聊聊这个项目的定位为什么说它是“知识生产平台”而不是“知识库”1.1 从 Notion 到 AFFiNE我为什么换掉了主力知识工具知识管理工具这个赛道其实已经很拥挤了Notion、Obsidian、语雀、FlowUs、Logseq每个都有自己忠实的一批用户。但这类工具大多有一个共同倾向它们更像“知识收纳箱”而不是“知识生产车间”。什么意思你可以在 Notion 里建立一套漂亮的数据库在 Obsidian 里维护一个庞大的双链网络但这些动作本质上都是在“记录已经想清楚的事情”。真正的知识生产是你脑子里的想法还只是一团模糊的轮廓时需要一边画、一边写、一边调整结构把混乱逐渐变成清晰——这个过程的工具支持绝大多数知识软件都做得很差。AFFiNE 的切入点就在这里。它的核心不是某个单一功能而是把“文档块”和“白板块”放在同一个编辑器里让你写作的时候随时可以切到白板去画画完又可以嵌回文档里继续写。我实际用下来的感受是它把“写作”和“思考”之间的距离大大缩短了。从最基础的文本行出发每一段、每一张图、每一块画布都被视为一个可嵌套、可引用、可拖拽的块块的边界是软的这意味着你的知识体系不需要一开始就设计好而是先散开、再聚合最后长成结构。1.2 它到底适合谁来用我不是说 AFFiNE 能替代所有工具但它的适用人群其实比你想的宽。第一类人是产品经理和设计师大量的方案评审前需要把用户故事、流程图、原型截图混排在一起讲这类工作恰好是文档白板的天然结合场景。第二类人是技术团队里的文档维护者受够了 wiki 系统的僵硬希望既能写结构化的 Markdown又能随手画时序图和架构图并且不想把数据托管在某个 SaaS 服务上。第三类人更简单就是那些对数据主权特别敏感的用户不想自己的笔记内容被某家商业公司拿去训练模型也不希望哪一天服务关停就永远丢失十年的积累。如果你本身的工作流已经完全依赖 Notion 的数据库生态或者你需要的只是一个无限层级的目录树来囤资料那你可能感受不到它的价值。这也是我在使用过程中反复提醒自己的AFFiNE 不是要取代你现有的所有工具它更适合作为“从想法到产出”的核心枢纽把零散输入变成半成品和成品再按需导出和分发。2. 核心机制拆解文档、白板和数据库是怎么拼成一张网的2.1 三大基础能力各自解决什么问题AFFiNE 的界面和交互并不复杂表面上看就是一个左侧目录、中间编辑区的双栏布局。但它的关键能力集中在下面三块这也是我日常使用频率最高的功能组合。第一块是 Docs 文档模式。它支持块级编辑回车自动切段落斜杠呼出功能菜单Markdown 语法也能直接输入。这个层面跟大多数现代块编辑器没有本质区别但有个体验是很多编辑器没做好的文档里任意选中的文字或块可以一键转换为白板里的卡片而且转换后文档和白板中的内容是同一份数据改动一处另一处会立刻同步。这一点对我来说价值很大过去我在 Notion 里写周报要把某段内容复制到白板里重新排版两份内容完全脱离后续只要改一遍就必须手动维护两处。第二块是 Edgeless 白板模式这个名字取得很贴切打开后就是一张无边无际的画布。你可以在白板上直接画图形、写便签、连线、拖入图片和 PDF也可以把文档转换成卡片放进去。白板最重要的不是画布大小而是和白板之间的信息流动。支持把白板里的一块区域框选后作为一个对象嵌入文档反过来文档里的大段文字也能变成一个白板节点继续在上面做批注。对做技术方案的人来说这个闭环意味着架构草图和文字说明不再是两套东西而是一套内容的不同视图。第三块是数据库能力。AFFiNE 的数据库不是独立的表格应用而是作为文档内嵌的块存在。你可以像 Notion 数据库那样建立表格、看板、画廊、列表四种视图给每个条目增加自定义属性。我比较常用的是在项目周报里嵌入一个“任务看板”把各个模块的状态从待启动、进行中、已完成三个列拖来拖去。这个数据库视图和白板也有联动数据库的每一条记录都能一键变成白板上的卡片白板上框选卡片也能批量导入数据库。这种“数据一次录入多视图呈现”的设计做产品规划和项目管理时非常顺手。2.2 底层技术方案与二次开发的可能性站在一个对技术有那么一点好奇心的用户角度AFFiNE 的底层选型也值得聊两句。它的编辑器部分不是从零拧出来的轮子而是构建在 BlockSuite 框架之上这个框架本身也是开源的提供了块编辑器、协同编辑、版本管理等一系列能力。简单粗暴地理解就是用一套统一的“块数据模型”去覆盖文档和白板让文字、图形、表格、数据库全部成为同一棵数据树上的节点这样文档白板之间的自由转换才有了根基。另一个值得关注的设计是“本地优先”。AFFiNE 的所有数据默认先落在本地再通过你选择的同步方案进行多端分发而不是像传统 SaaS 产品那样强制把数据上传到服务端。对于喜欢自己掌控数据的人来说这种方式从根本上规避了“云端服务倒闭导致资料丢失”的风险。也因为数据模型足够标准官方还提供了从 Notion、Markdown、HTML 等格式的导入器迁出时也能导出为 Markdown、HTML、PDF 等通用格式。这一点在选型时要特别留意很多笔记工具进去容易出来难AFFiNE 至少把出口留得比较宽。3. 本地优先与私有化部署把数据稳稳握在自己手里的具体做法3.1 数据导出与迁移策略我刚开始用 AFFiNE 时心里最没底的问题只有一个我写了这么多东西万一哪天项目不维护了数据怎么办所以第一批实际测试里我最先做的不是写笔记而是反复验证导入导出链路。从 Test 结果看单个文档可以直接导出 Markdown、HTML、PDF文档内的图片资源会一并打包整个工作区可以导出为包含全部文档和白板的备份文件。白板部分导出为 PDF 时如果画布范围比较大最好先手动调整视图范围再导出否则分页会把一张大图画得稀碎。迁移策略上如果你是从 Notion 迁移过来AFFiNE 支持导入 Notion 导出的 zip 文件页面层级和大部分正文内容能保留但 Notion 里复杂的数据库关联和自定义视图基本不会完全复刻。我个人的建议是不要把迁移当成一键搬家而是当成一次知识梳理的机会把精华内容带过来顺带清掉那些存了再也没看过的收藏夹残骸。另外无论你用哪个版本都建议定期把工作区整体导出一次备份到本地磁盘这比任何自动同步机制都更让人安心。3.2 自托管部署不依赖任何官方服务的搭建方式AFFiNE 依然是开源软件这意味着除了使用官方提供的云服务或桌面客户端你完全可以在自己的服务器上搭建一套私有化服务。对技术团队来说这个选项很有吸引力数据不出内网、权限自己控制、和内部认证系统对接也方便。如果你有一台基础配置的云服务器自托管的主要步骤大致是这样的先装好 Docker 和 Docker Compose然后拉取 AFFiNE 的官方镜像配置好环境变量和数据卷再启动容器组。从实际测试看服务器配置建议至少 2 核 4G否则多人同时编辑白板时会有明显的卡顿感。启动之后默认通过 3010 端口访问需要 HTTPS 的话自己加一层反向代理即可。整个部署过程没什么黑魔法但对没有容器基础的朋友来说还是建议先在本地虚拟机里走通一遍再上服务器。注意自托管版本的功能迭代速度和官方云服务并不是完全一致的某些较新的 AI 能力或在线协作功能可能需要更高版本的服务端支持。如果你对版本一致性有强迫症建议升级前先看一眼官方发布日志。数据库存储方面自托管默认使用内置的数据库组件大量的文档数据会直接存在数据卷里所以不要把数据卷随便绑定到本地临时目录否则容器重建后数据就没了。我踩过的坑之一就是第一次部署时图省事把数据目录放在了 /root/tmp 下面后来清磁盘时误删了整个工作区直接回到空白状态。虽然体验了一把“意外重置”的心痛但也让我养成了更严格的备份习惯。4. 从个人知识库到团队协同几种我验证过的实战用法4.1 一个完整的“知识生产”流程示例与其空谈功能不如展示一套我个人实际跑通的流程也是我认为最能发挥 AFFiNE 价值的使用姿势。假设你是一个初创新业务的负责人需要从零产出一份可执行的运营方案。第一步先在白板模式里做脑暴。把所有能想到的关键词、用户痛点、竞品名字、资源限制全部写成便签卡片扔到画布上不需要考虑逻辑先让信息浮现。第二步对这些卡片做分组和连线把有因果关系的节点连接起来这一步会自然形成业务链路图。第三步切换到文档模式以“目标-现状-路径-资源需求”为骨架开始写正式方案写到需要引用业务链路的地方直接把白板里那个画好的区域作为嵌入对象插进来不用截图、不用重画。第四步把任务拆解成数据库表格配上负责人、截止日期、优先级三个属性并切换成看板视图放到方案末尾方便团队直接认领任务。第五步方案定稿后把整篇文档和 白板导出为 PDF 发给协作方同时把数据结构按原格式备份一份到本地。这套流程过去需要 Notion Miro Excel 协作完成现在我只在 AFFiNE 里操作中间不跨工具也就不会再出现“需求文档里写了一个版本白板画的是另一个版本”的尴尬。4.2 团队协同中的现实取舍AFFiNE 在多人实时协同时的表现整体来说超过了我的逾期。多个人同时编辑同一个文档光标和选区是实时同步的白板里两个人同时移动卡片也不会出现拉锯现象。这背后是 CRDT 一类算法的功劳避免了一般的锁机制可能带来的冲突等待。不过我也要诚实地说它在协同权限上的颗粒度相对有限目前更偏向“工作区级别的权限控制”还没细到能按页面设置某个人只读、某个人可评论这种级别。如果你的团队有强烈的权限分层需求可能需要再等版本迭代或者用自托管版本自己做一层网关控制。另外一个现实问题是移动端 App 的完成度目前 iOS 和 Android 客户端可以应对日常查阅和简单笔记但要在手机上精修白板排版、拖拽数据库卡片体验还是比不上网页端。我的经验是移动端定位为“只读和快速捕捉”真正的深度编辑回到桌面端完成。这个分工清楚之后使用体验就会顺畅很多。5. 开源生态与扩展方向AFFiNE 能长成什么样子5.1 开源协议和社区贡献的定位AFFiNE 选择了比较宽松的开源协议这一点在开源知识管理工具里其实相当难得。宽松协议意味着你可以近距离研究源码、部署私有服务不用担心后续使用上的授权问题也更适合企业内网环境下的定制改造。项目本身在 GitHub 上非常活跃社区提交 issue 的效率也很高你反馈一个 bug 后往往几天内就能看到新版本里的修复记录。对想参与开源贡献的人来说AFFiNE 的门槛其实不算特别低。它的前端涉及复杂的块编辑器和协同逻辑后端也有不少数据存储和同步的细节新手第一眼看代码会觉得内容量很大。不过好在其模块划分清晰BlockSuite 框架层和应用层是分开的如果你只是想修一个小交互 bug先从 UI 组件入手会比直接碰协同逻辑轻松很多。社区里的文档沉淀也算齐全有专门的贡献者指南和开发环境搭建说明跟着文档把客户端跑起来第一个 PR 并不难。5.2 常见问题与避坑清单用 AFFiNE 大半年我整理了一份自己遇到过的典型问题和排查思路给刚上手的读者做个参考。问题现象可能原因处理建议自托管服务启动后访问不了页面端口未放行或反向代理配置错误检查防火墙和云服务器安全组确认 3010 端口可访问白板中插入的图片显示模糊原图分辨率较低或视图放大后自动压缩尽量使用高清原图导出 PDF 时选择适配内容尺寸文档与白板内容同步延迟网络环境不佳或本地数据库锁冲突检查同步状态刷新页面本地优先场景下无需过度担心从 Notion 导入后层级乱Notion 的父子页面结构映射不完全导入后手动整理目录树把复杂数据库拆成多个文档数据卷误删导致工作区空白容器数据卷绑定位置设置不当部署前规划好数据卷目录设置定时备份脚本多人同时编辑白板有卡顿服务器配置不足或浏览器内存占用过高至少 2 核4G起步多人会议场景建议关闭不必要的浏览器标签还有一个容易被忽略的点AFFiNE 的块编辑越灵活越容易因为强行追求排版美观而浪费大量时间。我见过很多新手上来就研究各种卡片颜色、边框样式、字体搭配折腾一晚上内容产出几乎是零。我的建议是前两周不要碰主题定制先把文档-白板-数据库这条主链路跑顺等真正依赖它工作了再慢慢调属于自己的视觉风格。5.3 这个项目的扩展想象力作为一个开源项目AFFiNE 的未来走向其实嵌套在整个开源知识库的演化浪潮里。现在大家都在谈本地优先、数据可控、AI 辅助AFFiNE 的底座已经把这些前置条件占齐了。它不像某些闭源笔记软件那样需要担心有一天强制下架或者更改免费额度因为整个代码都摊开在你面前你随时可以 fork 一份按自己的需求继续维护。对我个人而言这种“随时能跑路”的确定性反而比任何花哨功能都让人安心。如果说还有什么可以做得更好的地方我期待的方向是离线状态的协同逻辑还能再顺畅一些比如离线时编辑的部分改动重新联网后能更细粒度地合并另外原生移动端白板的流畅度也有不少优化空间。但这些都属于“更好的路上”的问题不影响它现在就能作为一款称手的知识生产工具投入使用。说实话市面上并不缺新笔记软件缺的是能把思考过程和生产流程真正统一起来的工具。AFFiNE 让我留下并且持续使用的原因不是它每一个功能都碾压对手而是它几个关键场景的组合拳正好命中了我真实的工作方式。如果你也厌倦了在四五个工具之间来回切换又格外在意长期数据的安全性可以找一天安静的时候把 AFFiNE 下载下来用一次真实的方案流程跑一遍看看那种“不用再搬运内容”的感觉是不是你想要的。最后分享一个我个人的习惯每周五下班前我会把本周新建的文档和白板统一导出一次备份文件名带上日期扔进网盘。这个习惯在两年前导出 Obsidian 时就有现在在 AFFiNE 里做起来成本更低因为整个工作区一次就能打包。数据安全这事工具能帮你省心但最后的底线永远要自己守。