AFFiNE - 开源知识库与协作平台,用于替代Notion和Miro实现一体化工作

AFFiNE - 开源知识库与协作平台,用于替代Notion和Miro实现一体化工作

你是否也曾面临这样的困境:写作时用Notion,画流程图时切换到Miro,做项目管理时再打开Trello,数据统计又得用Airtable——工具切换本身就成了工作的负担。AFFiNE的出现就是为了打破这种割裂。它是一个开源、隐私优先的一体化工作空间,将文档、白板、表格和演示融为一体,让你可以在一个无限的画布上自由组合文字、图形、数据库和网页,真正实现“写作、绘图、规划”三位一体。作为Notion和Miro的开源替代品,AFFiNE正在重新定义知识管理的方式。

项目基本信息

信息项详情
项目名称AFFiNE
GitHub地址https://github.com/toeverything/AFFiNE
项目描述There can be more than Notion and Miro. AFFiNE(pronounced [ə‘fain]) is a next-gen knowledge base that brings planning, sorting and creating all together. Privacy first, open-source, customizable and ready to use.
作者toeverything
开源协议Other
Stars66662
Forks4680
支持平台Windows / macOS / Linux / Web
最后更新2026-03-29

一、项目介绍

AFFiNE是一个下一代知识库平台,名字源自“affine”(意为“有密切联系的”),发音为 [ə‘fain]。它的核心理念是打破传统生产力工具的边界,将文档、画板、表格和演示等不同形式的“构建块”融合到一个无边界的画布中。你可以在一个页面里同时撰写富文本、绘制思维导图、嵌入数据库、摆放便签,甚至插入任何网页,所有元素都可以自由移动、缩放和关联。

与传统笔记应用不同,AFFiNE采用了“本地优先”的架构。你的数据默认保存在本地设备上,而不是强制上传到云端。这带来了两个显著优势:一是隐私安全——你完全掌控自己的数据;二是离线可用——没有网络也能正常工作。当然,它也支持实时云同步和多人协作,满足团队使用的需求。

AFFiNE的技术栈非常现代:前端使用React和BlockSuite(自研的协作编辑器框架),后端核心由Rust编写(y-octo和OctoBase),实现高性能的本地存储和实时协作。项目完全开源(社区版采用MIT许可证),你可以自己部署,也可以深度定制,甚至可以基于其底层框架开发自己的应用。

二、核心优势

  1. 文档与白板的真正融合
    这是AFFiNE最突出的特点。在传统工具中,文档(如Notion)和白板(如Miro)是分离的,你需要在不同应用间切换。而AFFiNE允许你在同一个页面上自由混合两种模式——既可以像写文档一样自上而下地组织文字,也可以像在白板上一样随意摆放任何元素。这种“无限画布+文档流”的混合模式,让知识组织和创意表达更加自由。
  2. 本地优先,数据自己掌控
    AFFiNE默认将数据保存在本地设备(支持文件系统存储),你可以随时备份、导出、迁移,无需担心供应商锁定。云同步是可选的,而且使用端到端加密。对于注重数据隐私的个人用户或需要数据合规的企业来说,这是极大的优势。
  3. 强大的AI能力集成
    AFFiNE内置了多模态AI助手,能够帮助完成多种创造性任务:根据大纲生成演示文稿、将文章提炼成思维导图、规划项目任务、甚至直接通过提示词生成简单的应用原型。AI不是独立的功能,而是嵌入到工作流中的协作伙伴。
  4. 高度可定制与自托管
    作为开源项目,AFFiNE允许你完全自主部署。官方提供Docker镜像,一键即可在自己的服务器上运行。同时,项目采用模块化设计,未来将支持插件系统和第三方组件,你可以像改造VSCode一样定制AFFiNE的功能和外观。
  5. 现代化技术栈与高性能
    基于Rust构建的底层数据引擎(OctoBase)和CRDT同步协议(y-octo),保证了即使在处理大型文档和复杂白板时依然流畅。前端使用React和Jotai进行状态管理,响应迅速。整体性能远超同类Electron应用。

三、适用场景

  • 个人知识管理与写作
    无论是写技术博客、整理读书笔记、构建个人维基,还是记录灵感碎片,AFFiNE都提供了灵活的组织方式。你可以用文档模式进行线性写作,也可以用白板模式进行发散思维,甚至两者结合。
  • 团队协作与项目管理
    一个项目所需的所有资料——需求文档、原型图、任务看板、会议记录——都可以集中在同一个AFFiNE页面中。团队成员可以在同一个画布上进行实时协作,@提及、评论、版本历史等协作功能一应俱全。
  • 教学与演示
    教师可以用AFFiNE准备课程大纲、绘制知识图谱、嵌入视频和互动内容。学生可以在同一个空间中完成作业、整理学习笔记。内置的演示模式让你可以将任何页面转化为幻灯片进行展示。
  • 产品设计与原型
    产品经理可以用AFFiNE收集用户反馈、绘制用户旅程图、制作低保真原型。设计师可以在白板上分享设计稿,收集评审意见。开发人员可以关联技术文档和API说明,形成完整的项目上下文。
  • 替代Notion/Miro的工作流迁移
    如果你正在使用Notion或Miro,但受限于其封闭性、性能或价格,AFFiNE提供了一个功能对等甚至超越的开源替代方案。它支持导入Markdown和部分Notion导出格式,平滑过渡成为可能。

四、安装教程

AFFiNE提供多种使用和安装方式,你可以根据自己的需求选择。

方式一:直接使用云端版本(最简单)

访问官网 https://app.affine.pro 注册账号即可开始使用,无需任何安装。云端版本包含基础协作功能,适合个人和团队快速体验。

方式二:桌面客户端

AFFiNE提供Windows、macOS和Linux的桌面客户端:

  1. 访问 Releases页面
  2. 根据你的操作系统下载对应的安装包(.exe、.dmg或.AppImage)
  3. 双击安装包,按照提示完成安装
  4. 启动应用,所有数据默认保存在本地

方式三:使用Docker自托管

如果你希望完全掌控数据和功能,推荐使用Docker自托管:

# 拉取最新的AFFiNE镜像
docker pull toeverything/affine:latest

# 创建数据持久化目录
mkdir -p ~/affine/data

# 运行容器
docker run -d \
  --name affine \
  -p 3000:3000 \
  -v ~/affine/data:/app/data \
  -e AFFINE_ENV=production \
  toeverything/affine:latest

启动后,访问 http://localhost:3000 即可使用。

方式四:从源码构建(适合开发者)

# 克隆仓库
git clone https://github.com/toeverything/AFFiNE.git
cd AFFiNE

# 安装依赖(需要Node.js 18+)
yarn install

# 构建应用
yarn build

# 启动开发服务器
yarn dev

构建过程中可能会下载一些原生依赖(如Rust组件),请确保网络畅通。

五、使用示例

示例1:创建第一个融合文档

打开AFFiNE,点击“新建页面”。你会看到一个空白画布,顶部有模式切换按钮。

文档模式:适合线性写作。输入文字,使用 / 命令插入各种块(标题、列表、待办事项、代码块、表格、图片等)。这是Notion用户熟悉的体验。

画布模式:点击右上角切换到画布模式,页面变为无限白板。你可以:

  • 双击任意位置创建文字块
  • 拖拽侧边栏的“便签”、“形状”、“图片”等元素到画布
  • 用连接线关联不同元素
  • 自由缩放和移动视图

关键技巧:你可以为同一个页面创建多个视图。比如,先按文档模式写完大纲,再切换到画布模式,将大纲中的每个要点拖拽出来,扩展成思维导图。

示例2:使用AI生成内容

  1. 在编辑器中选中一段文字,点击出现的AI助手图标
  2. 选择“总结”、“润色”、“翻译”或“续写”
  3. 输入你的需求,例如:“将这段话改写成更专业的语气”
  4. AI会生成结果,你可以选择替换、插入或作为新块保留

演示提示词

请为我的新项目“AFFiNE教程”生成一份大纲,包括:
- 项目简介
- 核心功能介绍(3-5点)
- 安装步骤
- 常见问题
- 结语

示例3:嵌入外部内容

AFFiNE支持嵌入多种外部内容,让页面更加丰富:

# 在文档模式下,粘贴以下链接会自动识别:

- YouTube视频:粘贴视频链接,自动生成播放器
- GitHub仓库:粘贴仓库URL,显示卡片预览
- Figma设计稿:粘贴分享链接,嵌入设计视图
- 地图位置:粘贴Google Maps链接,显示地图

你也可以通过 /embed 命令手动选择嵌入类型。

示例4:数据库与表格

AFFiNE支持类似Notion的数据库(表格、看板、日历等视图):

  1. 输入 /database 创建一个新的数据库
  2. 添加属性列:文本、数字、单选、多选、日期、人员、文件等
  3. 切换到“看板视图”,按状态或标签分组
  4. 切换到“日历视图”,按日期展示任务

每个数据库条目本身也可以是一个独立的页面,点击即可展开详细内容。

示例5:本地部署与团队协作

如果你是团队管理员,想要自托管并邀请成员协作:

# 1. 在服务器上运行Docker容器(如方式三所示)

# 2. 配置反向代理(使用Nginx示例)
server {
    listen 80;
    server_name affine.yourdomain.com;
    
    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
    }
}

# 3. 配置环境变量(可选)
# 在docker run时添加 -e AFFINE_ADMIN_EMAIL=admin@example.com 设置管理员

团队成员访问 https://affine.yourdomain.com 注册账号后,即可开始协作。

六、常见问题

  1. 问题:AFFiNE和Notion/Miro的主要区别是什么?
    解决方案

    • 开源与隐私:AFFiNE代码开源,数据可完全本地化;Notion/Miro是闭源SaaS。
    • 融合模式:AFFiNE将文档和白板真正合二为一;Notion侧重文档,Miro侧重白板。
    • 自托管:AFFiNE可以部署在自己服务器;Notion/Miro只能使用云端服务。
    • 性能:AFFiNE基于Rust构建底层,处理大型内容更流畅。
    • 定价:AFFiNE社区版免费,企业版按需付费;Notion/Miro高级功能需订阅。
  2. 问题:如何保证数据安全?本地存储的文件格式是什么?
    解决方案:AFFiNE默认使用SQLite数据库将数据保存在本地(桌面端)或服务器指定目录(自托管)。数据是明文存储,你可以随时备份整个数据目录。云同步时数据会经过端到端加密。未来版本将支持客户端加密,进一步增强隐私保护。
  3. 问题:AFFiNE支持实时多人协作吗?
    解决方案:是的。AFFiNE使用CRDT(无冲突复制数据类型)实现实时协作。多个用户可以同时编辑同一个页面,每个人的操作会实时同步,无冲突合并。协作时可以看到其他用户的光标位置和头像。目前需要通过AFFiNE Cloud服务或自托管部署才能启用协作功能。
  4. 问题:能否导入现有的Notion或Markdown数据?
    解决方案:AFFiNE支持导入Markdown文件(拖拽或通过导入菜单)。对于Notion数据,目前可以通过导出为Markdown/CSV格式后再导入。官方正在开发更完善的Notion迁移工具,预计后续版本会提供一键导入功能。
  5. 问题:AFFiNE的性能如何?能处理多大体量的内容?
    解决方案:得益于Rust和CRDT的底层架构,AFFiNE在性能上优于许多基于Web技术的同类应用。经过测试,单页面可以容纳数万级块,白板可以放置数千个元素,操作依然保持流畅。具体极限取决于设备性能,但足以满足绝大多数个人和团队需求。
  6. 问题:如何贡献代码或提交功能请求?
    解决方案:AFFiNE是一个活跃的开源项目,欢迎各种形式的贡献。

    • 提交Bug报告或功能请求:在GitHub仓库的Issues页面,选择对应的模板创建。
    • 贡献代码:阅读 docs/CONTRIBUTING.md 文件,了解开发环境搭建和代码规范。在提交PR前,需要签署Contributor License Agreement。
    • 参与讨论:加入AFFiNE的Discord社区,与开发者和用户交流。

七、总结

AFFiNE不仅是对Notion和Miro的替代,更是一次对生产力工具设计理念的革新。它用“无限画布+融合块”的模式,打破了文档、白板、数据库之间的壁垒,让知识管理和创意表达更加自由流畅。同时,它对开源、隐私、本地优先的坚守,给了用户前所未有的掌控权——你的数据真正属于你自己。

对于个人用户来说,AFFiNE是一个集写作、绘图、规划于一体的强大工具,能够替代多款应用,简化工作流。对于团队来说,它的自托管能力和实时协作功能,提供了企业级的数据安全和控制力。对于开发者来说,它开放的技术栈和活跃的社区,是学习和贡献的绝佳平台。

如果你正在寻找一个真正属于自己的知识管理工具,或者对Notion/Miro的封闭和价格感到不满,不妨试试AFFiNE。它或许不能立即替代你所有的工具,但会为你打开一扇通往更自由工作方式的大门。

已有 7922 条评论

    1. JamesBrown JamesBrown

      Overall, this article convinced me to give AFFiNE a serious try. The combination of open source, local-first, and the fusion of document and whiteboard is exactly what the productivity tool space has been missing.

    2. AshleyWong AshleyWong

      I tried the demo prompt for generating a project outline, and it worked perfectly. The AI understood the structure and gave me a great starting point. This will definitely speed up my project planning.

    3. 孙逸飞 孙逸飞

      从源码构建的步骤很清晰,我跟着教程成功跑起来了。作为一个前端开发者,对BlockSuite这个自研的编辑器框架很感兴趣,准备深入研究一下它的实现原理。

    4. PaulH PaulH

      The article mentioned the project has 66k stars on GitHub. That's a huge community. For an open-source project, that's a strong indicator of its quality and long-term viability.

    5. StephanieLin StephanieLin

      I'm a teacher, and I can see so many applications for AFFiNE in education. Creating interactive lesson plans with embedded videos, mind maps, and quizzes all in one space would be amazing.

    6. 吴佳怡 吴佳怡

      之前一直用Notion做个人知识库,但最近越来越担心数据隐私问题。看到AFFiNE的本地优先设计,终于找到一个可以放心迁移的平台了。

    7. BrianKim BrianKim

      The whiteboard mode is so intuitive. I just dragged in some shapes, added sticky notes, and connected them with lines. It felt just like Miro, but without leaving my document.

    8. 周子涵 周子涵

      试用了一下AI功能,让它帮我润色一段技术文档,效果出乎意料的好。语言更专业了,而且保留了原文的技术准确性。以后写文档可以省不少力气。

    9. MeganTaylor MeganTaylor

      I love that it's open source. That means I can customize it to fit my exact workflow. Maybe I'll even contribute some code for the plugin system when it's ready.

    10. 李一诺 李一诺

      作为一个Rust开发者,看到AFFiNE用Rust做后端存储,天然就有好感。OctoBase这个名字听起来就很酷,性能肯定差不了。

    11. AlexJohnson AlexJohnson

      What's the pricing model for the cloud version? I see the community edition is free, but for teams that want managed hosting, how does it compare to Notion's pricing?