Lunar Security
Unified security workforce ecosystem — Next.js command dashboards plus Flutter guard apps for geofenced attendance, patrols, SOS, incidents, and payroll-ready hours.
Security ops flow
Check-in → patrol → incident/SOS → sync → payroll-ready hours.
- Check-in Geofenced presence
- Patrol QR checkpoints
- Incident Media + taxonomy
- SOS Deterministic alert
- Sync Offline queues
- Payroll Exportable hours
The challenge
Security firms need proof of presence, incident response, and payroll-grade hours — not another checklist app. Guards work in low-connectivity sites; supervisors need live maps; admins need UK-aware labour exports.
Lunar required both a field Android/iOS client and a serious web operations console.
Emergency paths (SOS) must stay deterministic — any AI layer that adds latency to panic flows is a product failure.
What we built
We delivered lunar_security_web dashboards and lunar_security_guard Flutter clients with geofenced check-in, GPS telemetry, QR checkpoint patrols, SOS, incident media, offline queues, and play-store-ready iconography.
Role separation covers admin, supervisor, and guard realities.
Offline-first field behaviour with SQLite queues syncs when connectivity returns.
Platform architecture
Field apps, command dashboards, and compliance exports on one ops graph.
Guard app
Flutter field client with offline queues and SOS.
Ops web
Next.js command dashboards and live oversight.
Telemetry
Geofence, GPS trails, and checkpoint scans.
Compliance
Auth hardening and payroll-ready hour exports.
Field-to-command diagram
How guard devices feed supervisors without putting AI on the emergency path.
Field
Command
AI loop
SOS is immediate and deterministic — models assist after the fact, never in the panic loop.
Design principles
Guards need offline truth; supervisors need live maps; AI never slows SOS.
Offline is real
Guards work where radios fail — queues are mandatory.
SOS stays dumb-fast
AI never adds latency to panic flows.
Hours are product
Payroll-grade exports ship with patrol features.
Roles are physical
Admin, supervisor, and guard are different jobs — mirror that in UI.
How we approached it
Requirements were written as an ecosystem: mobile ingestion, cloud logic, reactive web oversight.
Offline-first field behaviour was non-negotiable — SQLite queues sync when radios return.
Payroll and compliance were designed alongside patrol features so hours survive audit.
Brand and store assets were produced for distribution, not only internal QA builds.
SOS remains a deterministic path — telemetry AI sits on the supervisor loop, not the emergency button.
Where AI enters — and where it must not
AI belongs on the supervisor loop: unusual GPS drift, missed scans, repeated incident categories, fatigue patterns across shifts.
Structured incident taxonomy + media makes triage assistants possible with citations back to the event record.
We keep panic/SOS deterministic and immediate — AI must never add latency to emergency paths.
Clean exportable hours also enable forecasting of site coverage risk.
Technical notes from production
Details that only show up once the season is real.
- Offline SQLite queues preserve patrol and attendance truth until connectivity returns.
- SOS is wired as a deterministic path — no model inference on the critical alert.
- Incident taxonomy plus media enables cited triage later without freeform chaos.
- Payroll exports were designed with patrol features so hours survive compliance review.
Delivery & systems
Next.js web, Flutter guard apps, backend services, playstore assets, and domain cutover scripts for production hosts.
Documented architecture covering biometric/OTP auth, geofence, and payroll exports.
Role-separated experiences for admin, supervisor, and guard.
Stack
Click a layer — each one maps to a real season responsibility.
Command web
Next.js
Supervisor and admin dashboards for live security ops.
Brand assets from the live product
Primary mark pulled from the Olympiad codebase — shown once, on the surface it was built for.
Outcomes
- Guard mobile app + ops web console
- Geofence, patrol QR, SOS, incidents
- Offline sync for field reliability
- Store-ready Lunar brand assets
- Payroll-aware hours designed for audit