There can be more than Notion and Miro. AFFiNE is a next-gen knowledge base that brings planning, sorting and creating all together. Privacy first, open-source, customizable and ready to use.
Go to file
2022-12-12 12:30:06 +00:00
.github chore: fix volta error 2022-11-02 11:42:33 +08:00
.husky chore: commit time 2022-08-15 16:51:49 +08:00
.vscode feat: about us 2022-08-23 21:04:14 +08:00
apps fix: update copyright info 2022-10-12 16:52:51 +08:00
docs docs/jobs patch (#494) 2022-10-13 14:45:49 +08:00
libs fix: once block type changed, the TextBlock node should be re-render (#551) 2022-12-12 12:30:06 +00:00
tools fix: remove unused executor svgOptimize (#296) 2022-08-19 14:17:46 +08:00
.all-contributorsrc 🐛 fix: wrong href of colaborator (#479) 2022-10-02 21:30:46 +08:00
.cz-config.js fix: whiteboard -> edgeless 2022-08-16 18:41:04 +08:00
.editorconfig init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.env delete token 2022-08-17 21:33:38 +08:00
.eslintignore init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.eslintrc.json Feat/left menu i18n (#407) 2022-09-12 19:17:59 +08:00
.gitignore init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.npmrc init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.prettierignore style(formatting): update .prettierignore 2022-08-01 10:59:38 +08:00
.prettierrc init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
babel.config.json init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
jest.config.js init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
jest.preset.js init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
LICENSE init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
nx.json init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
package.json feat: sync with keck 2022-09-14 17:32:08 +08:00
pnpm-lock.yaml feat(code): enhance markdown parse code 2022-09-15 17:19:15 +08:00
pnpm-workspace.yaml init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
README.md Update README.md 2022-11-18 01:40:22 +00:00
tsconfig.base.json feat: add new i18n package 2022-09-08 18:48:01 +08:00
workspace.json feat: add new i18n package 2022-09-08 18:48:01 +08:00

AFFiNE.PRO
The Next-Gen Collaborative Knowledge Base

Open-source and privacy-first.
A free replacement for Notion & Miro.

affine.pro stars All Contributors
Node React React Rust

       


affine_screen

Support Us and Keep Updated

952cd7a5-70fe-48ab-b74f-23981d94d2c5

Getting Started

affine.pro No installation or registration required! Head over to our website and try it out now.

Want to deploy it yourself? AFFiNE can run just about anywhere.

AFFiNE Documentation - More detailed documentation on how to use and develop with AFFiNE

AFFiNE Communities: Discord | Telegram | Twitter

⚠️ Please note that AFFiNE is still under active development and is not yet ready for production use. ⚠️

Install AFFiNE with docker - This guide assumes you already have an environment setup running docker

Create your story

There can be more than Notion and Miro. AFFiNE is a next-gen knowledge base that brings planning, sorting and creating all together. Privacy first, open-source, customizable and ready to use, built with web technologies to ensure consistency and accessibility on Mac, Windows and Linux. We want your data always to be yours, without any sacrifice to your accessibility. Your data is always stored local first, with full support for real-time collaboration through peer-to-peer technology. We don't think "privacy-first" is a good excuse for not supporting modern web features. And when it comes to collaboration, these features are not just necessarily for teams - you can take and insert pictures on your phone, edit them from your desktop, and then share them with your collaborators.

Shape your page

546163d6-4c39-4128-ae7f-55d59bc3b76b

Plan your task

41a7b3a4-32f2-4d18-ac6b-57d1e1fda753

Sort your knowledge

c9e1ff46-cec2-411b-b89d-6727a5e6f6c3

Contact Us

Feel free to send us an email: contact@toeverything.info

The Philosophy of AFFiNE

Timothy Berners-Lee once taught us about the idea of the semantic web, where all the data can be interpreted in any form while the "truth" is kept. This gives our best image of an ideal knowledge base by far, that sorting of information, planning of project and goals as well as creating of knowledge can be all together. We have witnessed waves of paradigm shift so many times. At first, everything was noted on office-like apps or DSL like LaTeX, then we found todo-list apps and WYSIWYG markdown editors better for writing and planning. Finally, here comes Notion and Miro, who take advantage of the idea of blocks to further liberate our creativity. It is all perfect... without waste operations and redundant information. And, we insist that privacy first should always be given by default. That's why we are making AFFiNE. Some of the most important features are:

  • Transformable
    • Every block can be transformed equally
      • e.g. you can create a todo in Markdown in the text view and then later edit it in the kanban view.
    • Every document can be turned into a whiteboard
      • An always good-to-read, structured docs-form page is the best for your notes, but a boundless doodle surface is better for collaboration and creativity.
  • Atomic
    • The basic elements of AFFiNE are blocks, not pages.
      • Blocks can be directly reused and synced between pages.
    • Pages and blocks are searched and organized based on connected graphs, not tree-like paths.
    • Dual-link and semantic search are fully supported.
  • Collaborative and privacy-first
    • Data is always stored locally by default
    • CRDTs are applied so that peer-to-peer collaboration is possible.

We appreciate the ideas of Monday, Airtable, and Notion databases. They have inspired us and shaped our product, helping us get it right when it comes to task management. But we also do things differently. We don't like doing things again and again. It's easy to set a todo with Markdown, but then why do you need to repeat and recreate data for a kanban or other databases. This is the power of AFFiNE. With AFFiNE, every block group has infinite views, for you to keep your single source of data, a single source of truth.

We would like to give special thanks to the innovators and pioneers who greatly inspired us:

  • Quip & Notion -- that docs can be organized as blocks
  • Taskade & Monday -- brilliant multi-dimensional tables
  • Height & Linear -- beautiful task management tool

We would also like to give thanks to open-source projects that make affine possible:

  • Yjs & Yrs -- Fundamental support of CRDTs for our implementation on state management and data sync.
  • React -- View layer support and web GUI framework.
  • Rust -- High performance language that extends the ability and availability of our real-time backend, JWST.
  • Fossil -- Source code management tool made with CRDTs which inspired our design on block data structure.
  • slatejs -- Customizable rich-text editor.
  • Jotai -- Minimal state management tool for frontend.
  • Tldraw -- Excellent drawing board.
  • MUI -- Our most used graphic UI component library.
  • Other dependencies

We use the following open source projects to help us build a better development experience:

  • nx -- Awesome monorepo manager & build system
  • tolgee -- Elegant i18n collaborative editing platform

Thanks a lot to the community for providing such powerful and simple libraries, so that we can focus more on the implementation of the product logic, and we hope that in the future our projects will also provide a more easy-to-use knowledge base for everyone.

Some amazing companies, including AFFiNE are looking for developers! Are you interested in helping build with AFFiNE and/or its partners? Check out some of the latest jobs available.

Contributors


Yifeng Wang

💻 📖

DarkSky

💻 📖

Chi Zhang

💻 📖

wang xinglong

💻 📖

DiamondThree

💻 📖

Whitewater

💻 📖

xiaodong zuo

💻 📖

MingLIang Wang

💻 📖

Qi

💻 📖

mitsuhatu

💻 📖

Austaras

💻 📖

Jin Yao

💻 📖

HeJiachen-PM

📖

Yipei Wei

📖

fanjing22

🎨

Svaney

🎨

Guozhu Liu

🎨

fyZheng07

📋 📓

CJSS

📖

JimmFly

💻

Carlos Rafael

💻

Caleb OLeary

💻

Weston Graham

📖

pointmax

📖

Bryan Lee

💻

Simon Li

💻

Bob Hu

💻

Quavo

📖

子瞻 Luci

💻

Horus

💻 📦

Super.x

💻

Wang Yu

💻

Felix Yan

💻

Lynette Lopez

💻

Manjusaka

💻

Frozen FIsh

💻

Mohammed Faraz

📖

Pranav Sriram

💻

License

AFFiNE is distributed under the terms of MIT license.

See LICENSE for details.