NPC Census Admin Dashboard
Administer the national census — geography, field progress, and validation.
This is the central administration surface for the NPC Census: enumeration-area geography and approval, field structures and households, QA and supervision, and citizen self-census validation. The three field applications feed into it. All data shown is simulated demo data.
Imagery intelligence and planning estimates (building intelligence, population estimation, SpatialIQ alerts) live in the Dkloud SpatialIQ App — open it from the sidebar. Sign in as [email protected] for full access.
Geography & EAsField structures & householdsQA & supervisionSelf-Census validation
Explore by geography
Loading geography drill-down…
National totals
Total Structures Mapped
domain—
across — enumeration areas
↑ 0% QA-approved
View records →
Enumeration Areas
map—
— wards · — LGAs · — states
View records →
EAs Approved
verified—
ready for fieldwork
View records →
Structures Pending Review
rule—
awaiting supervisor QA
View records →
Field structures (M3)
Total
domain—
Captured today
today—
Pending review
hourglass_top—
Approved
task_alt—
Rejected
cancel—
Households & population
Total households
groups—
Total persons
person—
Average household size
monitoring—
Structures without households
home_work—
Households without members
person_off—
Members captured today
today—
0Captured structures
→0Registered households
→0Registered persons
Enumerator tracking & route evidence
Active sessions
directions_walk—
Visits today
beenhere—
Poor GPS evidence
gps_off—
Over-threshold visits
wrong_location—
Sessions pending sync
sync_problem—
Delivery roadmap
Shipped / Operational
BUILTSpatialIQ foundation (M0–M3)Monorepo, infra, EA editor, structures + GPS capture, QA flagsOpen →
BUILTOffline mobile capture + syncEnumerator app: pack/capture/sync (device-test PR #2 open)
BUILTDemographic analytics & quality hubAggregate rollups, small-cell suppression, RBAC-scopedOpen →
BUILTPopulation estimation (small-area)Modelled ranges + confidence band — estimate, not countOpen →
BUILTGEE Open Buildings + reconciliationReal Earth Engine adapter (credential-gated) → ward reconciliationOpen →
BUILTBuilding intelligence (rules-v1)Explainable typology + occupancy — planning estimate, not a countOpen →
BUILTSpatialIQ alerts + dispatchValidation alerts, supervisor dispatch, mobile correction tasksOpen →
BUILTOne-active-EA rule + EA SectionsOne EA per enumerator (DB-enforced, 409 governance); ~40-structure GeoHash-ordered Sections with progress, guarded rebalance (migrations pending manual apply)Open →
BUILTSelf-Census scaffold + citizen authStandalone API/web/DB; NIN + phone + OTP (NIMC fetch is SIM)
BUILTSelf-Census questionnaire → QR receiptSubmit → SELF_REPORTED + PII-free QR (issue/reissue/revoke, reissue lock)
BUILTSelf-Census ↔ SpatialIQ integration surfaceResolve / retrieve-minimised / field decision, fully audited (F-010: minimised PII resident at rest in apps/api as a consequence — go-live precondition)Open →
BUILTNIN-hash dedup + baseline migrationPeppered full-NIN dedup key; Prisma history baselined (c45cc91)
Simulated (swap-ready)
SIMNextNIMC identity fetchName/DOB/gender behind 3-outcome seam — swap synthetic registry for real NIMC
MH1 — Self-Census completeness
BUILTForm integrity + member roster edit/deleteDOB→age, sex dropdown, add/edit/delete members, mobile-first
BUILTEnumerator field-edit overlay + roster ops + locksFIELD_VERIFIED overlay (original retained) + add/mark-not-present; super-admin lock after validateOpen →
PARTIALNextQuestionnaire Sections A–I depthSections E/F/G currently opaque; member fields beyond name/relationship
MH2 — Identity & validation
SIMNIMC identity + OTP (consent, both methods)SIM: raw-nin + share-code default, consent-gated, OTP controls; live swap gated on NIMC (F-009)
SIMBiometrics (capture + demo liveness + match seam)SIM: in-app capture + demo-grade gesture liveness + match seam, metadata-only; real match gated (NPC Q6)
NOT-STARTEDBiometric/location dedup + inconsistency flagsBeyond NIN dedup; cross-field and cross-source checks
MH3 — Access & inclusion
DESIGNEDUSSD channelGateway adapter (SIM first); designed only today
NOT-STARTEDMultilingual (EN/HA/YO/IG)No i18n yet
NOT-STARTEDCitizen mobile app + offline submissionCitizen web is online-only today
MH4 — SpatialIQ validation
PARTIALDiscrepancy maps + per-LGA validation reportsReconciliation exists; map/report layer partial
SIMContinuous monitoring / change detectionCount-based growth/densification/new-settlement per EA — SIM baseline epoch vs live detected buildingsOpen →
SIMStreetscape layerFaçade function/typology/floors/quality — SIM provider behind the real (Mapillary-shaped) contractOpen →
DESIGNEDImagery Phase 1 (informal/riverine)Higher-res detection of informal/hard-to-reach structures
MH5 — Scale & hardening
BUILTRedis OTP/session stateIn-zone Redis OtpControlStore (rate-limit/lockout); plaintext-OTP cache eliminated — no instance-local OTP state (F-011 on the new at-rest store)
DEFERREDAsync submit queueSynchronous submit kept; queue DEFERRED by decision (PROJECT_STATUS §6.9) until load shows the write-path is the bottleneck
NOT-STARTEDObservability / metricsStructured log seams only; no metrics/log aggregation yet
NOT-STARTEDEncryption at rest + secrets managementProvision NIN pepper/keys off dev fallbacks; DB-level encryption. Tracked: F-010 (apps/api PII at rest), F-011 (Redis store) — go-live preconditions
DESIGNEDM8 hardening for pilotIntegration tests, backups, device-test (PR #2)
MH6 — Digital Twin (vision)
VisionNational Digital TwinFoundation + spatial + intelligence; growth/forecast/scenario
VisionPublic results portalCitizen-facing read-only census figures
Quick actions
space_dashboardSpatialIQ Operator Dashboard
Coverage → estimation → calibration → validation, on one screen.
qr_code_scannerField Enumerator AppResolve a citizen receipt and verify it in the field (admin / supervisor).
mapOpen EA EditorDraw, validate and approve Enumeration Areas on the map.
apiAPI documentationSwagger/OpenAPI for all endpoints.