Shared packages
The packages under pkg/ are shared by the apps. Each is a Go package in the one module, github.com/retail-cortex/blitz, and every package and exported name is documented in the code (go doc, or your editor). These pages say what each is for and who uses it. Architecture has the rules for who may depend on what.
| Package | Layer | |
|---|---|---|
api |
Contract | Backend, and the values, events and errors front ends see |
client |
Contract | Backend over the service’s socket |
socket |
Contract | Where the service listens, and how to reach it |
engine |
Engine | Blitz without a user interface, and its subpackages |
config |
Shared | Settings: loading, layering and editing .env.toml |
secrets |
Shared | API keys in the OS keychain |
i18n |
Shared | Message catalogs and locales |
images |
Shared | Preparing pictures for vision models |
observability |
Shared | The diagnostic log and OpenTelemetry |
redact |
Shared | Masking secrets before they’re written |
legal |
Shared | The license texts every program shows |
sandboxsetup |
Shared | Whether Linux’s sandbox runs, and an AppArmor profile that lets it |
loginitem |
Shared | Starting the service at login |
textutil |
Shared | Small string helpers |
The API protos, proto/blitz/v1, are shared too: see the service API.