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.
Build the spine first
Six capabilities every surface leans on — infrastructure, not separate apps. No business module ships before Identity, Access and Data exist.
Identity
Login, Person, roles, permissions, the membership graph — one global identity across many communities.
Access
Authentication, QR/OTP credentials, access policies — the gate's authority, online or off.
Data
Tenant-scoped community records, storage and export — every row carries its tenant id.
Notify
Push, email, SMS and in-app messaging — the reach layer every module shares.
Workflow
Rules, approvals, automation, task orchestration — the state machine under the work orders.
Analytics
Dashboards, insights, cross-tenant rollups — read-only, never a mixed operational query.
Go deeper
This page is the pitch. The surfaces, the modules, the architecture and the evidence floor each have their own page.
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.
Bring your community onto its own spine.
One gated enclave at a time — identity, money, gatehouse and governance that a committee can actually trust.