The CLI is used for both running the server core and for interacting with the server core over GraphQL.
./graphql
The channel of communication with the server core used by all other interaction methods, along with 3rd party services.
./internal/domain
Code that defines the core application logic.
./internal/gateway
Defines how the domain interfaces with external systems.
./schema.graphql
./spa
A Vue client application that interacts with the server core via GraphQL.
Persistence
The source of truth is a series of HistoricalFact events that are processed to form multiple projections including
a SearchProjection and GraphProjection. Each projection is specifically designed to support different use cases.