Stylish Norwegian hair salon interior with a booking app on a smartphone, Akilles Frisørsalong cross-platform app case study
Akilles Frisørsalong2025Mobile App

Akilles Frisørsalong

React NativeFirebaseReactNode.js
Scroll to explore

Building a Real-Time Booking and Campaign Platform Across Android, iOS, and Web for a Norwegian Salon Chain

Written by Nora L., Mobile & AI Engineer at Codanum

01 / Situation

The Context

Akilles Frisørsalong was running bookings, vouchers, and in-store promotions across separate tools that didn't talk to each other. What the Norwegian salon chain wanted instead was one platform: Android and iOS apps plus a matching web version, all syncing in real time, with a single admin panel for staff to manage bookings, push notifications, and dynamic QR campaigns.

02 / Task

The Challenge

Three platforms syncing in real-time demands an architecture where a booking made on web updates mobile availability instantly and vice versa, with no stale state visible to any user. The dynamic QR code system for campaigns had to be server-resolved rather than static, so destination URLs could be updated without reprinting physical materials. Push notifications needed to reach both Android and iOS reliably from a single trigger, without separate management flows. The admin panel had to be operable by salon staff without technical training, covering promotions, vouchers, and bookings all in one place.

3

Platforms

Real-time

Sync

03 / Action

The Solution

Built with React Native for the Android and iOS apps and a React web application for desktop access, all three platforms share a single Firebase Firestore backend. Booking availability, voucher states, and campaign content stay consistent across every surface in real-time. Firebase Cloud Messaging handles cross-platform push notifications from a single send action in the admin panel. The voucher system generates uniquely validated discount codes tied to customer accounts. Dynamic QR codes are stored as server-resolved URLs, so the destination updates server-side without a reprint. The admin panel was built in React with role-based access, giving salon managers full control over bookings, promotions, and voucher issuance without developer involvement.

04 / Result

The Impact

Akilles Frisørsalong launched across all three platforms simultaneously with real-time sync from day one. The booking system eliminated scheduling conflicts across locations, and the push notification channel gave the chain a direct line to drive footfall during quieter periods. Dynamic QR campaigns run and update without reprinting in-store materials, and the admin panel has been operated entirely by salon staff since launch without technical support.

"Having booking, vouchers, and push notifications all in one place, working the same on phones and the web, changed how we run the day. Staff update a promotion from the back room and customers see it immediately."

Management, Akilles Frisørsalong
SaaS API Security Audit
Next Project

SaaS API Security Audit

Security Audit