PROJECT / 05
Antrean Pintar
Queue system with realtime display and zero drama.
- ROLE
- Web Developer, Software Architect
- YEAR
- 2024
- STACK
- Laravel, Reverb, MySQL
- STATUS
- SHIPPED ✓
THE PROBLEM
Antrean manual: kertas nomor hilang, pengunjung berdiri berjam-jam, petugas tidak tahu beban tiap loket.
CONTEXT
Harus berjalan di jaringan lokal yang kadang putus, dengan display TV sebagai pusat informasi.
CONSTRAINTS
- •Local network
- •Realtime display
- •Multiple counters
- •Kiosk hardware
SOLUTION
Nomor digital + websocket broadcast ke display, estimasi tunggu berbasis throughput loket, fallback polling saat socket putus.
ARCHITECTURE
SVG/HTML diagram — accessible, selectable, SEO-friendly. No WebGL here on purpose.
TECHNICAL DECISIONS
WHY THIS STACK?
Laravel Reverb memberi websocket tanpa infrastruktur tambahan. Polling fallback menjaga display tetap hidup.
WHY NOT FIREBASE?
Jaringan lokal dan kebutuhan offline-first membuat solusi self-hosted lebih tepat.
TRADE-OFF?
Websocket self-hosted butuh monitoring sendiri; diatasi dengan health check sederhana.
WHAT WOULD I CHANGE AT 10× SCALE?
Dedicated socket cluster + Redis pub/sub antar node.
RESULT
- ✓ Realtime queue display
- ✓ Reduced crowding
- ✓ Counter load visibility
- ✓ Offline-resilient display
LESSONS
Realtime bukan soal keren — soal memastikan TV display tidak pernah menampilkan nomor yang salah.