back

ADK Hospital queue management system

Development of a queue management platform with device provisioning and SLA metrics

Role
Fullstack developer
Category
Web app
Tags
Laravel, Laravel Octane, React, Inertia.js, WebSockets, ADB

The queue management system is the platform the rest of ADK Hospital's patient-flow hardware runs on. It is built on Laravel with Laravel Octane for the long-running application server, and a React front end delivered through Inertia.js, so the interface stays a single-page application without splitting the codebase into a separate API and client.

Every screen on the floor talks back to it. WebSockets carry live state to and from the kiosks, token displays and signage screens, while ADB integration handles provisioning, management and remote updates of the devices themselves — so a screen can be registered, configured, updated and recovered without anyone walking to it. The device list carries a live feed from each unit, which is what makes remote diagnosis practical rather than theoretical.

The operational side centres on queue statistics and a dashboard builder, letting staff assemble their own monitoring views across services, counters and rooms rather than being handed one fixed layout. Around that sit analytics and SLA management: metrics tracked against defined targets, with a customisable alert system and escalation rules for when a queue starts falling behind.

Content and presentation are managed from the same place. There is a video library and playlist management for the signage screens, a customisable device template builder for the kiosks, and template management for both the signage TV app and the token display app — so the look of every screen type is configurable rather than hard-coded.

Access is governed by a granular role-based permission system, fully customisable rather than a fixed set of roles, and every action is written to a complete audit log. For a system that sits between patients and clinical scheduling, being able to answer who changed what, and when mattered as much as the queueing logic itself.