Urgent Cover
Operations controller sign in
Guard Cover Dispatcher
0 guards

Guard coverage map — click an area to see its guards

Click an area on the map above to list the guards based there.

Top areas by guard count

Status breakdown

Quick actions

Name Postcode Area Role Phone Status Rating Tags

UK guard density heat map

few more most · circle size & colour = number of guards in that postcode area · click a bubble to filter

Areas ranked by guard count

⚡ Urgent shift cover request

1 · Target guards

2 · Message

Automated bulk send (Twilio SMS + WhatsApp Business + email API) is wired as a stub — flip DEMO_MODE off once your backend keys are set (see the production plan). Right now each channel opens the pre-filled message per guard so you can send in one tap.

3 · Send

Import guards (CSV)

Columns accepted (header row, any order): name, email, phone, postcode, role, worker, car, sia, sia_expiry, ni, dob, share, rtw_expiry, tags, status, rating, site, notes. Rating 1–10; car = Yes/No; dates = YYYY-MM-DD. Tags separated by ; or |. Rows whose mobile or NI number already exists are skipped (both are unique). Photos aren't included in CSV. Handles tens of thousands of rows.
📁 Click to choose a CSV file, or drag & drop here

Export / backup

Data is stored locally in this browser (IndexedDB). Export regularly to back up. In the hosted version this becomes a shared Supabase database.
0 logged actions — every add, edit, delete, import, bulk change, dispatch and shift assignment is recorded here with who and when.
WhenWhoActionDetail