AFFiNE/README.md
2022-07-22 17:04:52 +08:00

7.5 KiB

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.