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-07-22 16:40:44 +08:00
.github feat: merge keck 2022-07-22 17:04:52 +08:00
.husky init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.vscode init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
apps fix: replace pin button 2022-07-26 17:20:13 +08:00
docs init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
libs chore: clean code 2022-07-22 16:40:44 +08:00
tools init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.all-contributorsrc init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.cz-config.js init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.editorconfig init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.env init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.env.local-dev feat: router & block preview 2022-07-24 21:56:03 +08:00
.eslintignore init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
.eslintrc.json feat(comming-soon): add comming-soon 2022-07-22 21:38:57 +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 init: the first public commit for AFFiNE 2022-07-22 15:49:21 +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
Caddyfile init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
Dockerfile init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
Dockerfile-keck feat: merge keck 2022-07-22 17:04:52 +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: router & block preview 2022-07-24 21:56:03 +08:00
pnpm-lock.yaml feat: router & block preview 2022-07-24 21:56:03 +08:00
pnpm-workspace.yaml init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
README.md feat: merge keck 2022-07-22 17:04:52 +08:00
tsconfig.base.json init: the first public commit for AFFiNE 2022-07-22 15:49:21 +08:00
workspace.json feat: merge keck 2022-07-22 17:04:52 +08:00

AFFiNE

All Contributors

Workspace for AFFiNE

Installation

# Clone the repo
git clone git@github.com:toeverything/AFFiNE.git

Once cloned, switch to the master branch and navigate to the folder by typing cd AFFiNE and then running the following commands:

# Install all project dependencies
npm i -g pnpm
pnpm i

# Start the project
pnpm start
open http://localhost:4200/

This project uses pnpm for package management and is built based on nx. It is recommended to install the nx console plugin to create dependencies

If it is development, you can add environment variables in the project directory .env.local file

NODE_ENV=development

Scripts

  1. Create react dependency library: pnpm run add:library
  2. Create react components: pnpm run add:components
  3. Create a data source: pnpm run add:datasource
  4. Unit testing: pnpm test
  5. Compile specific components
    • pnpm build/test/lint project name
    • Project name reference workspace.json
  6. Create react/node program: use nx console
  7. If you need to use the git cz function, please install it globally first commitizen npm install -g commitizen conventional-changelog conventional-changelog-cli

Examples

Have a look at the examples to see AFFiNE in action.

Contributing

  • Generic functional components (such as ui components) are placed in libs/components/common
    • components within common are not allowed to reference components except utils and dependencies
    • Common components can reference each other
  • Business components are placed in libs/components
  • The data source component is placed in libs/datasource - api request code, schema, etc. belong to the data source Please see CONTRIBUTING

Documentation

Community

For help, discussion about best practices, or any other conversation that would benefit from being searchable:

Discuss AFFiNE on GitHub

Contributors


DarkSky

💻 📖

Chi Zhang

💻 📖

alt1o

💻 📖

Diamond

💻 📖

Whitewater

💻 📖

zuoxiaodong0815

💻 📖

SaikaSakura

💻 📖

Qi

💻 📖

tuluffy

💻 📖

Austaras

💻 📖

Jin Yao

💻 📖

License

AFFiNE is distributed under the terms of MIT license.

See LICENSE for details.