In-room digital guest guides
A QR card in each letting room opens a mobile guide for that specific room — wi-fi, arrival and departure, an order button for food and drink, local information and the history of the building. One continuous scroll, no app, no login. Built as a product: the venue is configuration, not code.
The decision that matters
Every comparable product sells one guide per property. The guest arrives, opens it, and has to work out which bits apply to them.
What I built
- Five self-contained mobile guides, one per letting room, covering wi-fi, arrival and departure, the room itself, food and drink, safety, house rules, getting there and the history of the building — on one continuous scroll with a jump menu, no app and no login.
- An ordering button inside the guide, wired to the QR order-and-pay platform, so a guest can send food and drink to the room from the same page that tells them the wi-fi password.
- A rendering engine with sixteen block types driven entirely by a content array, and a design system inlined in every file — no build step and no dependencies beyond two web fonts.
- Print-ready QR cards generated in Python, two per A4 page with trim lines, at error-correction level H so a scuffed card in a bedroom still scans. Every code was machine-decoded from the finished PDF and verified to resolve before printing.
- Custom subdomain with SSL, pointed at the guides without delegating the main domain — the group website stays where it is.
Decisions in the detail
- Cards print black on white rather than on the site’s cream — office printers band solid pale fills, and a banded QR is a QR that sometimes fails.
- The fire notice on the back of the door is pointed to, not duplicated. Two versions of a safety notice is one version too many, and the door is the one that gets checked.
- The guide names a nearby shop and a deli but deliberately omits the competing food business next door — a guest guide that sends people elsewhere for dinner is working against the kitchen it sits above.
- The room guides carry the building’s own history, taken from notices the venue already had and had no way to put in front of anyone.
Built as a product, not a one-off
The engine is content-agnostic. A second venue is a new config object and a new content array — delivery is content entry rather than development.
Hospital management system, three sites
Patients, staff and doctors across three hospitals
White-label staff app, second group
The staff app for a second group, now on the web too