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-04-08 16:33:58 -05:00
.github ci: add pr header check (#1836) 2023-04-06 13:12:43 -05:00
.husky refactor: move WorkspaceCard (#1803) 2023-04-03 18:13:43 -05:00
.vscode refactor: remove unused package desktop (#1815) 2023-04-04 10:32:09 -05:00
.yarn refactor: remove y-indexeddb (#1771) 2023-04-02 02:57:50 -05:00
apps fix: revalidate user token with no refresh page (#1842) 2023-04-07 17:51:51 -05:00
docs docs: add contributing tutorial (#1851) 2023-04-08 16:33:58 -05:00
packages fix: revalidate user token with no refresh page (#1842) 2023-04-07 17:51:51 -05:00
scripts fix: reload the page when login token expired (#1839) 2023-04-06 18:26:53 -05:00
tests feat: add root pinboard & rename pivots to pinboard (#1843) 2023-04-07 21:55:59 +00:00
.all-contributorsrc docs: add contributors 2023-01-13 14:31:05 +08:00
.commitlintrc.json ci: add pr header check (#1836) 2023-04-06 13:12:43 -05:00
.editorconfig milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
.eslintignore chore: update .eslintignore (#1425) 2023-03-08 17:11:49 -06:00
.eslintrc.js style: restrict type import (#1589) 2023-03-15 11:58:43 -05:00
.gitattributes milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
.gitignore fix: workspace avatar url won't update (#1817) 2023-04-04 12:46:33 -05:00
.npmrc build: add bump:nightly script (#1632) 2023-03-21 08:24:32 +00:00
.nvmrc ci: simplify the CI (#1684) 2023-03-24 23:44:14 +08:00
.prettierignore fix: some minor ui issues (#1783) 2023-04-03 00:24:53 -05:00
.prettierrc feat: init basic settings 2022-09-22 15:39:53 +08:00
.yarnrc.yml refactor: use yarn (#1619) 2023-03-20 02:05:02 -05:00
CHANGELOG.md milestone: publish alpha version (#637) 2022-12-30 21:40:15 +08:00
LICENSE docs: update LICENSE copyright name (#1627) 2023-03-20 22:35:19 -05:00
nyc.config.js refactor: remove package @affine/datacenter (#1705) 2023-03-27 17:48:22 -05:00
package.json ci: add pr header check (#1836) 2023-04-06 13:12:43 -05:00
playwright.config.ts chore: add build flag for change log (#1792) 2023-04-03 11:13:43 +00:00
README.md docs: add contributing tutorial (#1851) 2023-04-08 16:33:58 -05:00
tsconfig.json refactor: remove unused package desktop (#1815) 2023-04-04 10:32:09 -05:00
vitest.config.ts fix: reload the page when login token expired (#1839) 2023-04-06 18:26:53 -05:00
yarn.lock chore: update blocksuite (#1845) 2023-04-07 15:46:37 +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-app-logo stars-icon All Contributors codecov Node-version-icon TypeScript-version-icon React-version-icon blocksuite-icon Rust-version-icon

         

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.

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.

community.affine.pro Our wonderful community, where you can meet and engage with the team, developers and other like-minded enthusiastic user of AFFiNE.

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.
  • Collaboration — Whether you want to collaborate with yourself across multiple devices, or work together with others, support for collaboration and multiplayer is out-of-the-box, which makes it easy for teams to get started with AFFiNE.
  • 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.

Contributing

Bug Reports Feature Requests Questions/Discussions AFFiNE Community
Create a bug report Submit a feature request Check GitHub Discussion Vist the AFFiNE Community
Something isn't working as expected An idea for a new feature, or improvements Discuss and ask questions A place to ask, learn and engage with others

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.

Before you start contributing, please make sure you have read and accepted our Contributor License Agreement. To indicate your agreement, simply edit this file and submit a pull request.

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

For translation and language support you can visit our i18n General Space.

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

If you have questions, you are welcome to contact us. One of the best places to get more info and learn more is in the AFFiNE Community where you can engage with other like-minded individuals.

Thanks

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

  • BlockSuite - 💠 BlockSuite is the open-source collaborative editor project behind AFFiNE.
  • OctoBase - 🐙 OctoBase is the open-source database behind AFFiNE, local-first, yet collaborative. A light-weight, scalable, data engine written in Rust.
  • Yjs & Yrs - Fundamental support of CRDTs for our implementation on state management and data sync.
  • Next.js - The React Framework.
  • React - View layer support and web GUI framework.
  • Rust - High performance language that extends the ability and availability of our real-time backend, OctoBase.
  • Jotai - Primitive and flexible state management for React.
  • MUI - Our most used graphic UI component library.
  • Other upstream dependencies.

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
Yifeng Wang

💻 📖
DarkSky
DarkSky

💻 📖
Chi Zhang
Chi Zhang

💻 📖
wang xinglong
wang xinglong

💻 📖
DiamondThree
DiamondThree

💻 📖
Whitewater
Whitewater

💻 📖
xiaodong zuo
xiaodong zuo

💻 📖
Himself65
Himself65

💻 📖
MingLIang Wang
MingLIang Wang

💻 📖
Qi
Qi

💻 📖
lin onetwo
lin onetwo

💻 📖
Cole Lawrence
Cole Lawrence

💻 📖
x1a0t
x1a0t

💻 📖
HeJiachen-PM
HeJiachen-PM

🔬 📖
houjoe
houjoe

🔬 📖
Yipei Wei
Yipei Wei

📖
Velika
Velika

🎨
Svaney
Svaney

🎨
fanjing22
fanjing22

🎨
Guozhu Liu
Guozhu Liu

🎨
fyZheng07
fyZheng07

📋 📓
CJSS
CJSS

📖
JimmFly
JimmFly

💻
mitsuhatu
mitsuhatu

💻 📖
Austaras
Austaras

💻 📖
Jin Yao
Jin Yao

💻 📖
Carlos Rafael
Carlos Rafael

💻
Caleb OLeary
Caleb OLeary

💻
Weston Graham
Weston Graham

📖
pointmax
pointmax

📖
Bryan Lee
Bryan Lee

💻
Simon Li
Simon Li

💻
Bob Hu
Bob Hu

💻
Quavo
Quavo

📖
子瞻 Luci
子瞻 Luci

💻
Horus
Horus

💻 📦
Super.x
Super.x

💻
Wang Yu
Wang Yu

💻
Felix Yan
Felix Yan

💻
Lynette Lopez
Lynette Lopez

💻
Manjusaka
Manjusaka

💻
Frozen FIsh
Frozen FIsh

💻
Mohammed Faraz
Mohammed Faraz

📖
Pranav Sriram
Pranav Sriram

💻
Reson-a
Reson-a

💻
Zhizhen He
Zhizhen He

💻
AkaraChen
AkaraChen

💻
Suyan
Suyan

💻

Self-Host

Get started with Docker and deploy your own feature-rich, restriction-free deployment of AFFiNE - check the latest packages.

Hiring

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.

Upgrading

For upgrading information please see our update page.

Feature Request

For feature request please see community.affine.pro.

Is it awesome?

These people seem to like it.

Building

See BUILDING.md for instructions on how to build AFFiNE from source code.

Contributing

We welcome contributions from everyone. See docs/contributing/tutorial.md for details.

License

See LICENSE for details.