Skip to content

Platform Facts

Single source of truth

The service registry, counts and IGNIS version below are auto-generated from the backend source (packages/* env files, ServiceCodes, the schema tree) at build time. Where any other page disagrees on a port, base path, service code or count, this page wins - fix the other page. Library and framework versions live in Application stack versions; link there, never hardcode a version on another page (the build lint blocks drift).

Service registry

14Services
14DB schemas
157Entities (tables)
0.1.1-5IGNIS
ServicePortBase pathSnowflakeService code
identity31010/v1/api/identity1SVC-00010-IDENTITY
commerce31020/v1/api/commerce2SVC-00020-COMMERCE
sale31030/v1/api/sale3SVC-00030-SALE
finance31040/v1/api/finance4SVC-00040-FINANCE
inventory31050/v1/api/inventory5SVC-00050-INVENTORY
ledger31060/v1/api/ledger6SVC-00060-LEDGER
pricing31070/v1/api/pricing7SVC-00070-PRICING
payment31080/v1/api/payment8SVC-00080-PAYMENT
signal31090/v1/api/signal9SVC-00090-SIGNAL
outreach31110/v1/api/outreach10SVC-00110-OUTREACH
helpdesk31032/v1/api/helpdesk0SVC-00120-HELPDESK
taxation31130/v1/api/taxation13SVC-00130-TAXATION
licensing31120/v1/api/licensing11SVC-00140-LICENSING
invoice1190/v1/api-SVC-00150-INVOICE

Auto-generated from packages/* env files + ServiceCodes + the schema tree at build time - never hand-typed.

gateway is infrastructure (portal :3003, SVC-00100-GATEWAY) with no application server port, so it is not in the generated table. invoice runs on :1190 with its Snowflake worker unset.

Messaging seam

ChannelUsed for
Kafka topicsservice → service application events (e.g. PAYMENT_SUCCESS, inventory deduction, kitchen-ticket status)
Debezium CDCdata replication into read-models (search/Typesense, invoice tax-info, …)
Rediscache · WebSocket pub/sub · some BullMQ worker queues

Redis is not the primary event bus. Pages that describe "Redis Pub/Sub eventing" as the integration seam are from an earlier generation and are being retired in favour of Kafka + CDC.

Fixed roles

AppFixedRoles extends the IGNIS AuthorizationRoles. Custom merchant roles take any priority in the 101-499 band (between Owner and Cashier).

RoleConstantPriority
Super AdminSUPER_ADMIN999
AdminADMIN900
OperatorOPERATOR600
OwnerOWNER (organizer-owner)500
Custom merchant roles-101-499
CashierCASHIER110
EmployeeEMPLOYEE100
CustomerCUSTOMER10
GuestGUEST1

Application stack versions

The framework, library and tooling versions every service and app builds on - generated from the root package.json overrides (the single pin for the whole monorepo). This is the canonical version table: other pages link here (/en/developer/platform-facts#stack), they never restate a version.

LibraryVersionRole
@venizia/ignis0.1.1-5framework
@venizia/ignis-helpers0.1.1-3framework
@venizia/ignis-inversion0.1.1-2framework
hono4.12.30framework
@hono/zod-openapi1.5.1library
@scalar/hono-api-reference0.11.11library
bullmq5.80.8library
drizzle-orm0.45.2library
drizzle-zod0.8.3library
lucide-react0.575.0library
pg8.21.0library
ra-core5.14.2library
react19.2.4library
react-dom19.2.4library
sonner2.0.7library
typesense3.0.6library
zod4.3.6library
@venizia/dev-configs0.1.0tooling
drizzle-kit0.31.10tooling
tsc-alias1.8.17tooling
typescript6.0.3tooling
bun (engine)>=1.3.8runtime

Auto-generated from the root package.json `overrides` + `engines` - the single pin for the whole monorepo. Other pages link here, never restate a version.

Infrastructure & third-party versions

ComponentVersion
PostgreSQL17
Redis8
Typesense30.131.0.rc3
Apache Kafka4.1.14.3.0
Debezium (Kafka Connect)3.0.0.Final3.5.2.Final
PgBouncer1.24.1
PgCat4a7a6a8e7a… (pinned)
Bun (runtime)1.3.101.3.14
Prometheusv3.11.2v3.2.1
Grafana13.0.1
Loki3.7.1
Traefikv3.6
NGINX Ingressv1.12.2
OpenTelemetry Collector0.150.1
Kafka UIv0.7.2v1.5.0

Auto-generated from the infrastructure/ deployment manifests. A component showing more than one version means alpha and staging differ - standardise to remove the drift.

Generated from the deployment manifests under infrastructure/. A component showing more than one version means alpha and staging differ - standardise to remove the drift. The manifests themselves live under Infrastructure. This table is the canonical version reference - other pages should link here, not restate versions.

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.