India
ProjectsNovember 2, 2024

L'Oréal's event app for Android and iOS

image
An event app for L'Oréal Dubai, shipped on Android and iOS from one Flutter codebase, and used at more than five live events. It covers the whole day for an attendee: signing in, finding out what is on, taking part, and giving feedback afterwards.
  • Accounts and digital badges. Attendees register and are issued a badge used for identification and check-in throughout the event.
  • Badge scanning. Each attendee's badge carries a QR code that staff scan for attendance, so presence is recorded per session rather than only at the entrance.
  • Agenda and speaker profiles. The schedule, session detail, and who is presenting.
  • Live Q&A and voting. Attendees submit questions and vote from their seats during a session.
  • Surveys. Feedback collected in the app while the event is still running rather than by email afterwards.
  • Push notifications. Schedule changes and reminders, which at a multi-track event is the difference between a room being full and being empty.
  • Media gallery. Photos and video from the event, available to attendees during and after it.
  • Venue navigation. Location services for getting to the venue and around it.
Events are an unusual deployment target. There is one day when the app has to work, in a room full of people on congested wifi, and no useful opportunity to ship a fix while it is happening. That pushes the testing effort forward and makes the failure behaviour of every network call worth thinking about in advance. Flutter was the right choice here mainly because the audience arrives with whatever phone they own, split across both platforms, and the timeline did not allow two native builds. The backend is .NET over SQL.

Screens

L'Oréal's event app for Android and iOS screen 2
L'Oréal's event app for Android and iOS screen 3
L'Oréal's event app for Android and iOS screen 4
L'Oréal's event app for Android and iOS screen 5
L'Oréal's event app for Android and iOS screen 6
L'Oréal's event app for Android and iOS screen 7
L'Oréal's event app for Android and iOS screen 8

Related projects

bouncer, CI gates that let anyone contribute

bouncer, CI gates that let anyone contribute

Five checks that sit at the door of your main branch, written as pure functions so the same modules run in CI, in a Cloudflare Worker, on Railway and in the browser. Pointed at a real 1,209 file repository it went from 45 blocking findings to 13, all 13 genuine.
estate, a linter for your repositories

estate, a linter for your repositories

Checks every repository you own against declarative rules and exits non-zero, so the problems nobody notices for months fail a build instead. One Go binary, no dependencies, no dashboard.