Built on modern enterprise development principles β no compromises on performance, reliability or scalability.
Each of the 31 business contexts is organized with the same structure β four clear layers with one-directional dependencies.
Domain does not depend on Infrastructure. Repositories are interfaces in the domain, implementation is in the infrastructure.
Each command and query has a separate Handler. Reads are optimised independently from writes.
No direct calls between contexts. Event Bus (in-memory + Redis) is the only communication channel.
No reflection at runtime. Dependency graph is built at compile time β zero overhead.
Chosen for performance and reliability.
Statically typed language with native concurrency. Minimal latency, minimal memory footprint.
Native uuidv7() support, LTREE for hierarchies, JSONB for metadata, DATERANGE for time boundaries.
Signals-based reactivity, standalone components, PrimeNG UI, Chart.js visualisations.
All monetary values stored as BIGINT (cents). Custom pkg/money with full arithmetic. Zero rounding errors.
Time-ordered keys enable efficient cursor pagination and natural chronological sorting without additional indexes.
Tier-1: expr-lang for fast formulas (<1ms). Tier-2: Starlark Python-like sandbox for complex logic.
Signed keys without internet connection. Public key embedded at compile time via //go:embed. Only stdlib.
Raw SQL via pgx/v5 + squirrel. Full query visibility, optimal execution plans, no N+1 problems.
Integration tests spin up real PostgreSQL 18 in Docker β not mocks. 265+ tests including real migrations.
Holding structure support: 15 migrations add company_id to 10 bounded contexts. RequireCompanyContext middleware + session-level entity switching. One Docker image for all customers.
No manual data transfer. 185+ domain events form automatic business processes.
Single binary, Docker Compose, minimal infrastructure requirements. Ideal for getting started.
Each context can be extracted independently. No direct imports. Event Bus β Kafka/RabbitMQ.
Full data control. Offline licensing. Suitable for data protection requirements.
Axiom publishes OCI multi-architecture manifest lists. One tag in the registry β Docker automatically delivers the correct binary for any server, whether Intel Xeon in a Ukrainian data center or AWS Graviton in the cloud.
# Build for x86-64 + ARM64 β GHCR
make release VERSION=0.11.0
# Intel/AMD only (faster ~40%)
make release PLATFORMS=linux/amd64
# On any target server β Docker picks arch
make ansible-upgrade VERSION=0.11.0
Dashboard data is always live β no cron jobs, no polling scripts, no manual refreshes required. The system reacts to real business events in real time.
New order, posted invoice, or production record β any INSERT / UPDATE / DELETE on orders, invoices, production_orders.
notify_dashboard_refresh() trigger calls pg_notify('dashboard_refresh', table_name) β a single lightweight signal, no data in the payload.
A dedicated goroutine holds a connection via pgx.Conn.WaitForNotification(). Rapid changes are debounced (5 s window) to prevent thundering-herd refreshes.
4 materialized views (mv_revenue_monthly, mv_ar_aging, mv_production_daily, mv_customer_summary) are refreshed concurrently β reads are never blocked.
dashboard_configs