Skip to content




This project is structured as follows:

Text Only
├─ backend/
├─ common/
├─ frontend/

Using Earthly

You can build the source code by running earthly +build. This will build the frontend, backend, documentation, and common components. A Docker image can be created by running earthly +image.


Earthly automatically tracks dependencies and performs necessary ordering, caching, parallelization, etc. You don't ever need to run one target before another.

The root Earthfile has more targets, which can be listed by running earthly +ls.

Without Earthly

Sometimes it is useful to not be working with a container. In this case, you can build the project directly on your machine.

  1. Run npm i in the root the repository
  2. Run npm run build --workspaces

Testing Changes

Manually testing changes can be achieved by running the application. It is easiest to do this if you first edit your config.toml to disable features that require a GPU or web browser, if possible.