One system for the entire mess.
Ration, bar, guest rooms, parties and billing — every figure traced to a versioned rate, every change on the audit log, and every appointment scoped to its own duty.
Invitation-only · unit-scoped access
- Ration & messingAvailable
Versioned scales and self-reconciling monthly bills
- Bar & cigarAvailable
Per-officer consumption posted against verified rates
- Guest roomsLive
Room inventory, bookings and incidentals in one view
- PartiesAvailable
Plan dining-ins and apportion charges to attendees
- BillingAvailable
Draft, finalise and publish bills with a full audit trail
- ReportsAvailable
Unit and cross-unit reporting on the same source data
One foundation beneath every module — access control, audit, unit scoping.
Accountable by construction
Isolation, audit and access control are enforced in the database — not the interface.
- Row-level security
- Audit trail on every change
- Capability-scoped RBAC
- Multi-unit isolation
- Versioned REST API
Capabilities
Every mess function, one source of truth.
Each module draws on the same access control, audit trail and unit scoping — no parallel spreadsheets, nothing left to reconcile by hand.
How access works
Controlled access, by design.
- 01
An admin invites you
Access is invitation-only. Your unit admin creates the account and assigns your home unit.
- 02
Capabilities scoped to your unit
You receive a capability template — Bar NCO, Mess Havildar, Quartermaster — bound to that unit only.
- 03
Operate your module
Sign in and work the screens your duty unlocks. Every change is audit-logged automatically.
Governance
Trust you can audit.
Four guarantees that hold whether a bill is raised today or reviewed years from now.
Roles
Built around your appointments.
Each member holds a capability template bound to their unit — they see and act on exactly what their appointment requires, and nothing beyond it.
FAQ
Questions, answered plainly.
How access, units, data and the API actually work.
- Is Officers Mess self-service or invitation-only?
- It is invitation-only. There is no public sign-up. A unit admin creates each account and assigns the member's home unit before they can sign in.
- Does it support multiple units?
- Yes. It is multi-tenant by design. Each unit's data is isolated at the database level with Postgres row-level security, so members only ever see their own unit. Admins can operate across units.
- Is there an API or a mobile app?
- There is a stable, versioned REST API at /api/v1 with bearer authentication and idempotency keys. The web app and any future mobile client share the same backend, rules, and data.
- How is access controlled?
- Access is capability-scoped. Each appointment receives a capability template — for example Bar NCO, Mess Havildar, or Quartermaster — bound to a single unit. Members only see and act on the modules their duty requires.
- Where is the data stored and is it audited?
- Data is stored in a managed Postgres database (Supabase). Every change to master lists, profiles, units, and capabilities is written to an immutable audit log, so every figure on a bill is traceable.
- How are rates and bills kept accurate over time?
- Master items and rates are version-tracked (SCD-2). A bill always reflects the rate that applied at the time, so historical bills never change when a current rate is updated.
Bring the entire mess onto one system.
Invitation-only, unit-scoped, and audit-logged from the first sign-in.