Choose your platform
Quest Hunter is built with Expo and React Native, providing a native experience on iOS and Android, plus web support for desktop browsing. Select your platform to get started.iOS
Android
Web
iOS installation
Requirements
Before installing Quest Hunter on iOS, ensure you have:
- iOS device running iOS 13.0 or later
- Apple ID for App Store access
- At least 100 MB of free storage
Quest Hunter supports both iPhone and iPad with optimized layouts for tablets.
Download from App Store
Search for “Quest Hunter” in the App Store or use the direct link:
- App Bundle ID:
com.levinbaenninger.questhunter - Publisher: Levin Baenninger
Grant permissions
On first launch, Quest Hunter requests:Location permissions: Required to show your position on maps and help you navigate to quest locations.The permission request shows: “Allow Quest Hunter to use your location”Camera permissions: Required to capture photos at quest checkpoints.
Sign in
Launch Quest Hunter and sign in with your Google account. See the Quickstart guide for authentication details.
iOS-specific features
Edge-to-edge display
Edge-to-edge display
Quest Hunter uses React Native’s safe area context to provide an edge-to-edge experience on devices with notches and dynamic islands, while keeping content in safe viewing areas.
App scheme
App scheme
The custom URL scheme
questhunter:// allows deep linking into specific quests and locations from external sources.Dark mode support
Dark mode support
Quest Hunter automatically adapts to your iOS appearance settings (Light/Dark/Auto) using the
userInterfaceStyle: automatic configuration.Android installation
Requirements
Before installing Quest Hunter on Android, ensure you have:
- Android device running Android 6.0 (API 23) or later
- Google Play account
- At least 100 MB of free storage
- Google Play Services installed (for authentication)
Download from Play Store
Search for “Quest Hunter” in the Google Play Store or use the direct link:
- Package Name:
com.levinbaenninger.questhunter - Publisher: Levin Baenninger
Grant permissions
Quest Hunter requests two runtime permissions:Location permissions:These are required for:
- Showing your position on quest maps
- Calculating distance to checkpoints
- Providing navigation assistance
Android 6.0+ uses runtime permissions. You’ll be prompted to grant access when starting your first quest and taking your first photo.
Android-specific features
Google Maps integration
Google Maps integration
Quest Hunter uses Google Maps on Android with API key integration for high-quality map rendering. The maps show:
- Quest location markers
- Your current position
- Distance and directions to checkpoints
expo-maps library with native Google Maps views.Edge-to-edge display
Edge-to-edge display
Quest Hunter enables Android’s edge-to-edge mode (
edgeToEdgeEnabled: true) for immersive full-screen experience on modern Android devices.Adaptive icon
Adaptive icon
The app features an adaptive icon that conforms to different device launcher styles:
- Foreground image: Main app logo
- Background: Custom color (#E6F4FE)
- Monochrome variant: For themed icons on Android 13+
Predictive back gesture
Predictive back gesture
Predictive back gestures are disabled (
predictiveBackGestureEnabled: false) to provide custom back handling within quests, preventing accidental exits.Web installation
Quest Hunter is also available as a web application for desktop and tablet browsers.Requirements
To use Quest Hunter on the web, you need:
- Modern browser (Chrome 90+, Firefox 88+, Safari 14+, Edge 90+)
- JavaScript enabled
- Location services enabled in browser
- Camera access for photo capture
Access the web app
Navigate to the Quest Hunter web URL in your browser:
The web version is a static site built with Metro bundler and optimized for performance.
Grant browser permissions
When prompted, allow:Location access: Required for map features
- Click the location icon in your browser’s address bar
- Select “Always allow” for best experience
- Grant access when starting photo capture
- Permissions persist per browser session
Web-specific features
Progressive Web App (PWA)
Progressive Web App (PWA)
Quest Hunter can be installed as a PWA on supported browsers:
- Visit the web app
- Look for the install prompt in your browser
- Click “Install” to add Quest Hunter to your home screen or app drawer
- Offline capability for cached data
- Native-like app experience
- Faster subsequent loads
Responsive design
Responsive design
The web version adapts to different screen sizes:
- Desktop: Full-width layout with optimized navigation
- Tablet: Responsive card grids and comfortable touch targets
- Mobile web: Native-like mobile experience
Camera support
Camera support
Web browsers use the MediaDevices API for camera access. On desktop:
- You’ll be prompted to select a camera
- Webcam photos work for verification
- Mobile web uses device cameras normally
Development setup
Developers who want to run Quest Hunter locally or contribute to the project can set up the development environment.This section is for developers only. Regular users should install from the App Store, Play Store, or web.
Prerequisites
Install the required tools:Clone and install
Install dependencies
package.json, including:expo~54.0.33react-native0.81.5@clerk/clerk-expo^2.19.27convex^1.32.0expo-maps~0.12.10
Run on devices
- iOS
- Android
- Web
- macOS with Xcode installed
- iOS simulator or physical device connected
Development scripts
Configuration reference
app.json configuration
app.json configuration
The Key features:
app.json file configures Expo settings:- New Architecture: Enabled for better performance
- Typed Routes: Type-safe navigation with Expo Router
- React Compiler: Experimental optimizations for React 19
Plugins
Plugins
Quest Hunter uses these Expo plugins:
expo-router: File-based routingexpo-splash-screen: Custom splash screen with light/dark variantsexpo-web-browser: OAuth redirectsexpo-maps: Native map views with location permissions
app.json under the plugins array.Project ID
Project ID
The Expo Application Services (EAS) project ID is:This ID links the local project to EAS for builds, updates, and submissions.
Troubleshooting
Location permissions not working
Location permissions not working
iOS: Check Settings > Quest Hunter > Location. Ensure “While Using the App” is selected.Android: Go to Settings > Apps > Quest Hunter > Permissions > Location. Enable “Allow only while using the app”.Web: Click the location icon in your browser’s address bar and select “Allow”.
Camera not opening
Camera not opening
iOS: Check Settings > Quest Hunter > Camera is enabled.Android: Go to Settings > Apps > Quest Hunter > Permissions > Camera and enable it.Web: Ensure your browser supports the MediaDevices API and you’ve granted camera access.
Google sign-in fails
Google sign-in fails
Ensure:
- You have an active internet connection
- Google Play Services is installed (Android)
- Clerk is properly configured with Google OAuth
- Your device date and time are correct
Maps not loading
Maps not loading
Android: Verify the Google Maps API key is configured correctly in
app.json.iOS: Check that location permissions are granted.Web: Ensure your browser supports geolocation API.If maps still don’t load, try:- Restarting the app
- Checking your internet connection
- Updating to the latest app version
Real-time sync issues
Real-time sync issues
If quest progress doesn’t sync:
- Check your internet connection
- Verify Convex deployment is running
- Try force-closing and reopening the app
- Check if other real-time features work (quest list updates)
Next steps
Complete your first quest
Follow the quickstart guide to start your first adventure
Learn about features
Explore all of Quest Hunter’s capabilities
API reference
View Convex queries and mutations for developers
Contributing
Submit issues or contribute to Quest Hunter development