A busy gate starts with a simple search.
Staff narrow the list by name and confirm the right person. A focused result helps the operator confirm the guest before recording an arrival.
Less scanning. More context.
Guest Check-in
A guest check-in system for event security teams, bringing shared arrival records and coordinated gate operations into one staff-facing tool.

Scroll through four steps. Concept illustrations bring each step to life.

Staff narrow the list by name and confirm the right person. A focused result helps the operator confirm the guest before recording an arrival.
Less scanning. More context.
The operator selects Back Gate before recording the next guest. Previous Main Gate arrivals retain their original location.
One list. A clear record of each gate.
Recorded arrivals show the time, gate, and staff member. In the application, a server-side row lock preserves the first successful check-in if two operators act on the same guest.
Keep the original record. Avoid duplicates.
The application uses live notifications to refresh affected guest records. Attendance totals summarise recorded arrivals; they do not measure current occupancy.
Try the two-gate simulation below.Check in your first demo guest ↗
Find a guest and record an arrival at either gate. Watch both dashboards receive the same update.
Fictional guests · runs only in this page · no account or live database connection. The short sync delay illustrates the workflow; it is not a speed measurement.
Both views start with the same list. Check-in buttons use your selected operating gate. Switch gates to try the other staff view.
Developed with Martyn’s Law preparedness in mind, this project supports coordinated admissions and visibility of recorded arrivals. When two operators check the same guest at nearly the same time, server-controlled check-ins keep the record consistent and live updates share it with other staff devices.
A PostgreSQL function locks the guest row, returns the existing record if already checked in, and otherwise records the first successful gate, time, and staff member.
The project includes spreadsheet imports, separate list exports, staff management, attendance totals, and a related sports-roster workflow.
Live notifications update affected guests. Full reconciliation and fallback refreshes help recover shared state; failed synchronisation disables changes rather than queueing offline admissions.
Designed to support event-security operations as part of wider Martyn’s Law preparedness. Shared check-in records and staff coordination are supporting tools; this project does not establish compliance with the Act or replace a venue’s public-protection procedures.
After a confirmed save, the client reads the affected guest. Live notifications are grouped briefly and larger batches fall back to a full snapshot. Session and request guards prevent older responses from overwriting newer updates.
The documented benchmark reduced median local processing from 21.97 ms to 3.04 ms using generated guests, a stub DOM, and mocked transport. It excludes network latency, database execution, and browser rendering, and is not a measured end-to-end gate speed. Live multi-device field testing remains separate.
Measure tap-to-confirmation and cross-device propagation on actual gate connections using a dedicated fictional guest list.
Summary based on setup and performance documentation, client code, and the PostgreSQL check-in function.
Next projectCar Price Prediction