Xposure XPF App
Project Brief
Project timeline
2020 - 2025
Project Type
Event Mobile Application
Client
Xposure International Photography Festival
My Contribution
Flutter Front-End Developer - UI/UX Development, BLE Beacon Integration, Guest Workflow Modules
Connecting
photographers
with
the festival experience.
The Xposure XPF App was developed to serve two principal user groups at the annual Xposure International Photography Festival in Sharjah: attendees of the festival, providing them with a rich interactive guide to the event, and guest photographers invited to the event, providing enhanced tools and personalised workflows. The festival is held at Aljada, Sharjah, and brings together photographers, filmmakers, and visual storytellers from around the world.
Overview
To assist visitors in navigating the Xposure Festival's multi-hall exhibition area, an indoor navigation system was implemented using BLE (Bluetooth Low Energy) beacons.
The system allowed both visitors and guest photographers to see their live position on the venue map, receive directions to exhibitions or talks, and get contextual notifications nearby points of interest.
How It Works
The mobile app continuously scans for nearby BLE beacons (model MBM01, long-range type).
Each beacon broadcasts a unique ID and signal strength (RSSI).
By measuring the signal strength from at least three beacons simultaneously, the app estimates user position via RSSI-based triangulation — a lightweight method suitable for real-time indoor positioning.
Triangulation Principle:
Each beacon defines a circular signal zone. The user's device estimates its distance to each beacon, and the intersection of three or more circles defines the current location.
This setup provided accuracy within 1–2 meters, sufficient for hall navigation and event discovery.
Technical Implementation
- • Implemented in Flutter, integrated with a native Android BLE scanning service.
- • Signal strength filtered via a Kalman filter to reduce noise from reflection and interference.
- • Mapped to the venue's PDF plan, scaled and calibrated through beacon coordinates defined in meters.
- • Combined with Firebase for real-time event location updates and proximity-based notifications.
Outcome
Attendees could:
- • Navigate easily between exhibition halls, talks, and workshops.
- • Receive indoor route suggestions.
- • Guest photographers could get personalized navigation to their assigned areas.
E-Commerce & Payment Integration
To enhance the festival experience and provide seamless merchandise purchasing, a comprehensive e-commerce solution was integrated directly into the mobile application.
WooCommerce Store Integration
A full-featured WooCommerce store was created within the app, allowing festival attendees to browse and purchase festival merchandise, photography books, and exclusive items directly from their mobile devices.
- • Complete WooCommerce store implementation with product catalog, shopping cart, and order management.
- • RESTful API integration enabling real-time communication between the Flutter app and WooCommerce backend.
- • Synchronized inventory management ensuring product availability and pricing accuracy.
- • Secure authentication and user session management for personalized shopping experiences.
Aramex Courier Integration
To streamline order fulfillment and delivery, the WooCommerce store was integrated with Aramex API, enabling automated courier setup and shipping management.
- • Aramex API Integration: Direct integration with Aramex's shipping API for automated courier service setup and shipment creation.
- • Automated shipping label generation and tracking number assignment upon order confirmation.
- • Real-time shipment tracking integration, allowing customers to monitor their order status directly within the app.
- • Automated courier pickup scheduling and delivery notifications sent via push notifications.
- • Seamless order-to-shipment workflow, reducing manual processing time and ensuring accurate delivery information.
Mobile Payment Solutions
To provide a modern, secure, and convenient checkout experience, Apple Pay and Google Pay were integrated as primary payment methods, connected to the Network International payment gateway.
- • Apple Pay Integration: Native iOS payment processing with Touch ID and Face ID authentication for seamless one-tap purchases.
- • Google Pay Integration: Android-native payment solution with fingerprint and PIN authentication for quick and secure transactions.
- • Network International Gateway: All payment transactions are securely processed through Network International's payment provider infrastructure, ensuring PCI DSS compliance and fraud protection.
- • Real-time payment status updates and order confirmation notifications delivered via push notifications.
E-Commerce & Payment Integration
Overview
The Xposure XPF mobile application was designed around a dual-role architecture to serve both public attendees and invited guest photographers.
Each role unlocked a distinct feature set, interface, and notification flow — all within the same Flutter-based app.
This approach allowed the platform to scale elegantly without fragmenting the experience into multiple apps.
1. Attendee Workflow (Public Users)
Objective: Help visitors explore the festival efficiently and stay informed.
Access Path:
- • Registered or anonymous sign-in (email or social).
- • Automatic assignment to the Attendee role.
Main Modules:
- 📅 Schedule & Agenda: View all exhibitions, talks, and workshops.
- ⭐ Favourites: Bookmark sessions and receive reminders before they start.
- 🧭 Indoor Navigation: Use BLE-based positioning to find routes to stages, halls, or events.
- 🔔 Push Notifications: Get alerts about schedule changes, announcements, or crowd updates.
- 📰 News & Highlights: Daily summaries, live photos, and updates from organizers.
UX Traits:
- • Focused on discoverability and navigation.
- • Minimal input from user — mostly read-only or bookmarking actions.
- • Designed for speed and clarity, with large typography and high-contrast dark theme for readability indoors.
Overview
The Venue Map & Search module served as the core spatial interface of the Xposure XPF app.
It allowed users to explore the festival layout, locate exhibitions, talks, and meeting points, and navigate to sessions with high precision through BLE beacon–assisted indoor positioning.
Unlike static maps, this system was designed as a layered hybrid mapping engine combining real-world geolocation with the detailed indoor floor plan of the venue.
Layered Mapping Architecture
🧩 1. Google Maps Foundation
The base layer used Google Maps coordinates as a universal geospatial reference frame.
This allowed the app to anchor the indoor map precisely to its real-world location while retaining compatibility with external navigation (e.g. guiding visitors from airport → festival entrance).
- • Accurate geolocation reference
- • Enabled outdoor-to-indoor transition
- • Simplified integration with existing map SDK tools
📐 2. Venue Plan Overlay
The official Xposure venue layout (PDF) was overlaid on top of the Google Maps base layer using captured corner points (latitude/longitude).
Each corner of the plan was manually mapped to its corresponding coordinate in Google Maps, allowing the overlay to align seamlessly with the real environment.
- • Used offset calibration between real coordinates and plan pixels
- • The plan was dynamically scaled and rotated based on captured reference points
- • Final alignment achieved sub-meter accuracy across the exhibition halls
📍 3. Beacon Coordinate Layer
On top of the venue plan, we added a beacon positioning layer — defining the BLE beacon grid used for indoor triangulation.
To populate this layer, we built a custom internal tool app:
- • Displayed the venue plan on-screen
- • Allowed developers to tap on the map to mark beacon positions visually
- • Automatically captured the device's current GPS coordinates, associating them with the tapped point
- • Exported data to Firestore for use by the main navigation app
This method ensured fast, accurate mapping of dozens of BLE beacons without manual coordinate entry.
Functional Highlights
- • Interactive Map View: Users could zoom, pan, and explore the venue in real time.
- • Session Search: Integrated search filtered events, talks, and exhibitions by name, category, or location.
- • Favourites & Routing: Sessions marked as favourites appeared on the map, and users could navigate directly to them via indoor guidance.
- • Seamless Beacon Integration: The app merged map coordinates with BLE signal strength data for live indoor positioning.
Technology Stack
Modern technologies powering the festival mobile application
Flutter
Cross-platform mobile development
BLE Beacons
Indoor navigation & positioning
Firebase FCM
Push notifications
QR Pass System
Single-use access codes
WooCommerce
E-commerce store & API integration
Apple Pay
iOS mobile payments
Google Pay
Android mobile payments
Network International
Payment gateway provider
Aramex API
Automated courier & shipping
Results
The Xposure XPF App was successfully delivered in time for the festival launch, serving both general attendees and invited guest photographers. The app provided reliable indoor navigation via BLE beacons, seamless role-based workflows, and real-time updates throughout the event. The modular architecture in Flutter allowed for easier iterations and maintainability, ensuring a smooth experience for all festival participants.
Process
Development approach for building an event-based mobile application
Module Development
Developed multiple interconnected modules using Flutter, including event schedule, push notifications, guest-photographer tasks, BLE beacon navigation, interactive venue maps, favourites/bookmarking, news/updates section, and info section. Separating concerns (schedule, map/navigation, guest-workflow, QR pass) allowed easier iterations and maintainability.
BLE & Backend Integration
Integrated BLE beacon SDKs/plug-ins to communicate with MBM01/LR beacons for indoor localisation and positioning. The app consumed APIs for schedule, flights, guest tasks, QR passes, venue mapping. Custom widgets were developed for indoor map rendering, beacon-based positioning, and venue way-finding, with fallback strategies for weak Bluetooth signals.
Next Project
Explore more of our innovative solutions