Appearance
Staff Mobile Scanner
The Neverline platform includes a companion React Native application built with Expo specifically tailored for Staff members managing high-throughput Event Queues.
To optimize operational throughput beyond the standard web dashboard, the mobile-access app acts as a dedicated, native Ticket Scanner.
Prerequisites
To run the mobile app locally, you will need:
- An iOS or Android device connected to the same Wi-Fi network as your development machine.
- The Expo Go app installed from the App Store or Google Play.
Local Configuration
Because your physical phone cannot resolve localhost (it maps to the phone itself), you must explicitly configure the app to connect to your computer's LAN IP address.
Navigate to the mobile app directory:
bashcd apps/mobile-accessCopy the
.env.examplefile to create your own configuration:bashcp .env.example .env.localUpdate
.env.localto point to your machine's local IP address (e.g.,192.168.1.50):env# URL to local Supabase instance EXPO_PUBLIC_SUPABASE_URL=http://192.168.1.50:34321 # The ANON Key found in your root /.env.local EXPO_PUBLIC_SUPABASE_ANON_KEY=your.anon.key.here # URL to the Fastify API EXPO_PUBLIC_API_URL=http://192.168.1.50:3000
Starting the App
From the root of the Neverline monorepo, run:
bash
pnpm --filter @neverline/mobile-access startThis command initializes the Expo Metro Bundler and displays a connection QR code in the terminal.
Connecting Your Device
- Ensure your phone and computer are on the exact same Wi-Fi network.
- Open the Expo Go app on your phone.
- Use Expo Go (or your phone's native camera on iOS) to scan the QR code shown in your terminal.
- The Neverline iOS/Android app will bundle and open.
Features & Usage
The Staff Mobile App supports:
- Authentication: Staff log in using their standard credentials.
- Queue Selection: Tap into any authorized Event Queue.
- Camera Scanning: Hardware-accelerated barcode and QR code ticket scanning.
- Haptic Feedback: The device physically vibrates when a Session Token is successfully fetched and verified by the Neverline backend.
- Manual Override: A manual input field for entering tokens when QR codes are unreadable or broken.