AnKampung: the kampung, running on its own spine
One login for every home you belong to; billing that answers to Act 757; a gatehouse that keeps working — and keeps telling the truth — offline; maintenance that can only move along legal states. Built for Malaysian gated communities and strata estates, already running in a real pilot community.
Your committee’s software should tell the truth.
Gated communities run on WhatsApp groups, paper receipts and a guard's memory. AnKampung gives the enclave its own operating platform — identity, money, gatehouse and governance on one event spine that refuses to invent a fact — starting with one real community, then many.
- English, Bahasa Malaysia and Chinese from the first screen
- Visitor invitation → pass issued → checked in, one correlation
- Facility bookings with deposits settled through Finance
- Announcements that record acknowledgment, not just delivery

One person, every role — resident, committee, management, gatehouse. Bahasa, English and Chinese, from the first screen.
captured on device · first community pilot
Six things a community platform must do honestly
One person, every home
Malaysian owners hold multiple properties — a bungalow in the suburbs, a condo in the city, a family house upcountry. AnKampung's identity is hub-and-spoke: one Person, many Communities, many Units, with a different role on each. One login; a switcher chooses the community, the home, the hat you wear today.
The money wedge, done right
Maintenance fees, sinking fund at the statutory 10%, arrears tracking and numbered receipts — shaped around the Strata Management Act 2013 (Act 757), billed in MYR, paid through regulated FPX / DuitNow gateways. AnKampung never holds custodial funds; every ringgit has an audit trail.
A gatehouse that works offline
The guard verifies visitor QR and OTP passes at the gate — and when the network drops, the gatehouse keeps working on the local copy and says so plainly: “Changes will not reach the spine.” On reconnect, the access ledger reconciles without losing or duplicating a single fact.
Maintenance with a spine
Every request walks a legal state machine — Raised → Acknowledged → Assigned → In progress → Closed — with priority, common-property flags and acknowledgment SLAs. The engine rejects illegal jumps and quarantines them. It never invents facts, and it repairs nothing silently.
Governance, in the open
Announcements with acknowledgment, community polls, approvals and circulars — with one hard line: Malaysian strata e-voting is not yet legally valid, so statutory AGM/EGM voting stays separate from app polls by design, not by oversight.
Designed for many, piloted on one
Every table carries a tenant id, enforced by Postgres row-level security; editions and entitlements are a config layer, not a fork. The pilot community is tenant #1 of a platform — onboarding community #2 changes no schema. That is the whole architecture brief, in one sentence.
The one rule, four ways
The same spine that keeps AnOmbak from colouring a road it hasn't measured keeps AnKampung from stating a fact the ledger can't prove.
The engine never invents facts
State only moves along legal transitions. A contradictory event is rejected or quarantined with a reason — never silently repaired. What the board shows is exactly what the ledger proves, projected deterministically.
The ledger is the truth
The read-model is disposable and rebuildable from the append-only log; the audit ledger is not. Financial and security effects are deduplicated at the ledger, so a re-delivered payment event can never double-credit anyone.
Degradation is disclosed
Offline is a state, not a lie. The gatehouse keeps operating on its local copy and tells the guard, in words, what has not yet reached the spine — preserving origin, device sequence and wall-clock for every fact recorded in the dark.
Privacy is the default posture
The resident directory is opt-in; events are PII-minimised and ID-referenced; global identity never leaks across communities. Retention and permission matrices are written down and sent for PDPA legal review — not invented at 2 a.m. by a developer.
Events in, truth out.
Business modules write facts to an append-only log; the State Engine projects them into a Community Digital Twin — a read-model that is disposable, rebuildable and hash-checkable, and that has never invented a single fact in its life. Every surface, from the guard's app to the committee's console, reads from that one twin.
Surfaces
Compose apps · web console · visitor portal
Ktor monolith
modules, not microservices
Event log
append-only · tenant-partitioned
State Engine
project · reconcile · rebuild
Digital Twin
the honest read-model
Questions a committee actually asks
A kampung is the original Malaysian community — everyone knows the gate, the funds, and who is fixing the lamp. AnKampung keeps that word for the modern kampung: the gated-and-guarded enclave and the strata community. It is deliberately local, in the same family as Masrif and AnOmbak.
This page is the pitch. Every surface and the identity model, the intelligence kept optional, and the legal & computer-science floor each have their own page.
Ready to build something intelligent?
Let's engineer your next product — from idea to launch.