Codebase overview

The codebase is organized as follows:

  • packages/ contains all code running in production.
    • backend/ contains backend code
    • common/ contains the platform independent code or basic libraries.
    • frontend/ contains frontend code, including the web app, the electron app.
  • tools/ contains tools to help developing or CI, not used in production.
  • tests/ contains testings across different libraries, including e2e testings, storybook and integration testings.

AFFiNE Core Architecture

Electron Architecture

Head First Dependency Injection