NGS's lobby bottlenecked at the manual ticket-scanning counter during peak hours. Solution: let visitors scan their own QR and dispense their own pass.
// CASE STUDY · 2023
National Gallery Singapore
Print Pass
Self-service kiosk system for National Gallery Singapore. QR scan, ticket validation, thermal pass print. Built for high-throughput entry without a human bottleneck at the door.

// THE BRIEF
// WHAT I SHIPPED
A React kiosk UI running on the printers in the gallery's lobby. Visitor scans, the ticketing API validates, the printer dispenses a physical pass. Two-state UI, big type, generous fallbacks for QRs the scanner can't read.
// THE DETAIL WORTH TELLING
The actual work was treating scanner + ticketing API + printer as one transaction. If the printer dies mid-scan, you can't pretend the scan didn't happen. Each component had its own failure mode and the UI had to surface the right thing without making visitors feel like they broke it.
// STACK
- React
- QR
- Kiosk