Skip to content

Developer Documentation

BANA is a next-generation Point of Sale platform for Vietnamese household and small businesses (F&B, retail, services). It is a Bun monorepo built on the IGNIS Framework (dependency-injection microservices), with Tauri desktop/handheld apps and a React web stack. New to the product? See What is BANA?

Canonical facts live on Platform Facts

The service registry, counts, the dependency stack and the messaging seam (Kafka + Debezium CDC, not Redis pub/sub) are maintained on Platform Facts, generated from source. This page links to the detail pages - it never restates a version, port or count.

Start here

GuideWhat you'll learn
Getting StartedClone, install, build, and run your first service
Build SystemMakefile targets, dependency graph, Docker builds
Environment ReferenceEvery environment variable across all services
Git WorkflowBranching, commits, MRs, code review, glab
IGNIS PatternsApplication hierarchy, DI, controller factory, model patterns

Architecture & reference

PageWhat it covers
System ArchitectureService registry, dependency chain, schema mapping, component matrix
Event ArchitectureKafka events, Debezium CDC, WebSocket topics, HTTP webhooks
Database Guide14 PostgreSQL schemas, Drizzle ORM, migration workflow
Testing GuideBun test runner, preload mocking, mock factories
SecurityTrust boundaries, auth, PII handling, hardening
Platform FactsCanonical registry, counts, dependency stack, infra versions

System at a glance

Full topology, dependency graph and the Issuer/Verifier hierarchy: System Architecture. Live service registry: Platform Facts.

Backend packages

18 IGNIS packages share @nx/core (base classes, 14 DB schemas, utilities). Full catalogue with ports, roles and dependencies: Backend Packages Overview.

AreaPackages
Foundationcore
Identity & catalogidentity · commerce · search · asset
Sellingsale · pricing · inventory
Money & compliancepayment · finance · ledger · invoice · taxation
Platformsignal · outreach · licensing · gateway · helpdesk

Frontend apps & integrations

SurfaceWhere
Frontend apps (POS, back office, UI kit)Applications · Frontend Patterns
Third-party integrations (VNPAY payments, e-invoice, T-VAN)Integrations
Deployment, cluster, observabilityInfrastructure

Where to go next

You are a…Start with
New backend developerGetting StartedCoreIGNIS Patterns
Frontend developerApplicationsFrontend Patterns
SRE / DevOpsInfrastructurePlatform Facts
Integration developerIntegrationsEvent Architecture

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