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
2023-01-12 13:02:32 +08:00
.changeset chore: cleanup actions 2023-01-06 15:03:54 +08:00
.github feat: add i18n keys auto sync 2023-01-12 13:02:32 +08:00
.husky milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
.vscode feat: add extensions recommendations 2023-01-09 14:11:19 +08:00
benchmarks milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
docs milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
packages feat: support flags in workspace 2023-01-12 00:53:53 +08:00
scripts feat: extract i18n into a package 2023-01-09 14:55:38 +08:00
tests test: skip cloud sync 2023-01-11 18:26:58 +08:00
.all-contributorsrc milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
.editorconfig milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
.eslintignore chore: cleanup jest config 2023-01-09 11:52:28 +08:00
.gitattributes milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
.gitignore chore: move ci.js to ci.cjs 2023-01-09 11:32:00 +08:00
.nvmrc milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
.pnpmfile.cjs chore: move ci.js to ci.cjs 2023-01-09 11:32:00 +08:00
.prettierignore milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
.prettierrc feat: init basic settings 2022-09-22 15:39:53 +08:00
CHANGELOG.md milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
CODE_OF_CONDUCT.md milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
CONTRIBUTING.md milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
LICENSE milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
package.json Merge branch 'master' into chore/remove-jest 2023-01-09 11:54:00 +08:00
playwright.config.ts milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
playwright.config.unit.ts chore: remove jest; using playwright over whole project 2023-01-09 11:18:47 +08:00
pnpm-lock.yaml feat: support flags in workspace 2023-01-12 00:53:53 +08:00
pnpm-workspace.yaml chore: change to monorepo 2022-10-14 13:26:06 +08:00
README.md feat: cloud sync playground (#662) 2023-01-03 20:24:40 +08:00
tsconfig.json milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00

AFFiNE.PRO
The Next-Gen Collaborative Knowledge Base

AFFiNE is a next-gen knowledge base that brings planning, sorting and creating all together.
Privacy first, open-source, customizable and ready to use - a free replacement for Notion & Miro.

affine.pro stars All Contributors Node React React Rust

       

AFFiNE - just like the word affine (əˈɪn | a-fine).

affine_screen

Join our community

Before we tell you how to get started with AFFiNE, we'd like to shamelessly plug our awesome user and developer communities across official social platforms! Once youre familiar with using the software, maybe you will share your wisdom with others and even consider joining the AFFiNE Ambassador program to help spread AFFiNE to the world.

Features

Privacy focussed — AFFiNE is built with your privacy in mind and is one of our key concerns. We want you to keep control of your data, allowing you to store it as you like, where you like while still being able to freely edit and view your data on-demand.

Offline-first - With your privacy in mind we also decided to go offline-first. This means that AFFiNE can be used offline, whether you want to view or edit, with support for conflict-free merging when you are back online.

Clean, intuitive design — With AFFiNE you can concentrate on editing with a clean and modern interface. Which is responsive, so it looks great on tablets too, and mobile support is coming in the future.

Seamless transitions — However you want your data displayed, whichever viewing mode you use, AFFiNE supports easy transitions to allow you to quickly and effortlessly view your data in the way you want.

Markdown support — When you write in AFFiNE you can use Markdown syntax which helps create an easier editing experience, that can be experienced with just a keyboard. And this allows you to export your data cleanly into Markdown.

Choice of multiple languages — Thanks to community contributions AFFiNE offers support for multiple languages. If you don't find your language or would like to suggest some changes we welcome your contributions.

Getting started

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

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

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

Our official communities - Join our friendly communities for more support and discussions

Contributing

Calling all developers, testers, tech writers and more! Contributions of all types are more than welcome, you can read more in docs/types-of-contributions.md. If you are interested in contributing code, read our docs/CONTRIBUTING.md and feel free to check out our GitHub issues to get stuck in to show us what youre made of.

For bug reports, feature requests and other suggestions you can also create a new issue and choose the most appropiate template for your feedback.

For translation and language support you can visit our docs for the internationalization guide.

Looking for others ways to contribute and wondering where to start? Check out the AFFiNE Ambassador program, we work closely with passionate members of our community and provide them with a wide-range of support and resources.

If you have questions, join us across various social platforms where our friendly community can help provide the answers.

We have done a major refactoring recently, if you want to see our previous version of the code, please go to the Pre-Alpha branch to view

Thanks

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

  • BlockSuite - AFFiNE is built with and powered by BlockSuite.
  • 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, OctoBase.
  • 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.

Contributors


Yifeng Wang

💻 📖

DarkSky

💻 📖

Chi Zhang

💻 📖

wang xinglong

💻 📖

DiamondThree

💻 📖

Whitewater

💻 📖

xiaodong zuo

💻 📖

Himself65

💻 📖

MingLIang Wang

💻 📖

Qi

💻 📖

lin onetwo

💻 📖

Cole Lawrence

💻 📖

x1a0t

💻 📖

HeJiachen-PM

🔬 📖

houjoe

🔬 📖

Yipei Wei

📖

Velika

🎨

Svaney

🎨

fanjing22

🎨

Guozhu Liu

🎨

fyZheng07

📋 📓

CJSS

📖

JimmFly

💻

mitsuhatu

💻 📖

Austaras

💻 📖

Jin Yao

💻 📖

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

💻

Reson-a

💻

Jobs

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.

License

See LICENSE for details.