π°οΈ Time Trails
Explore history like never before β immersive AR experiences of nearby landmarks, from your couch or on the go!
π Inspiration
Walking through a city can be ordinary, but it holds untold stories waiting to be discovered.
Time Trails was inspired by the desire to blend technology and culture β bringing history alive by connecting users with nearby landmarks through augmented reality.
The goal is to make history accessible, engaging, and immersive, encouraging exploration and learning in everyday life.
π― What It Does
Time Trails identifies nearby historical sites, landmarks, and tourist spots based on your location. It lets you:
- πΊοΈ View interactive 3D models of landmarks in AR, sourced from Firebase.
- π§ Explore historical places virtually or plan real-life visits.
- βοΈ Add personal notes pinned to map locations for memories or important info.
- πΆ See walking distances and routes directly on the map to nearby points of interest.
- π Unlock geo-tagged collectibles and badges by visiting specific spots.
βοΈ How I Built It
The app is developed using Flutter for a smooth, cross-platform experience. Key components include:
- πΊοΈ Google Maps SDK, Street View, Geocoding, and Directions APIs for location data and map integration.
- π Firebase Firestore and Firebase Functions to securely manage 3D model data and user notes, and to keep API keys safe.
- π± ARKit and ARCore bridged through Flutter plugins to display 3D models in augmented reality.
- π§± A modular architecture following MVC principles, with robust state management for seamless user experience.
The 3D models are sourced from the Leipzig Open Data 3D Stadtmodell and linked to places by unique place IDs.
β οΈ Challenges
- π Precise Location Triggering: Handling GPS inaccuracies and ensuring AR content appears only at the right spots.
- π¦ AR Integration: Bridging native AR frameworks with Flutter required extensive testing and optimization.
- π§ Map Styling: Balancing historic aesthetic with clarity and usability on the map interface.
- π Data Management: Efficiently syncing models, user notes, and collectibles without degrading performance.
- π’ API Limitations: Managing query limits and restricting walking mode due to Google API quotas.
π Accomplishments
- π§ Merged location services and AR to create a truly immersive historical exploration app.
- π Developed a secure, scalable backend with Firebase Functions to protect sensitive API keys.
- πΊοΈ Created a clean, user-friendly map interface with note-taking and collectible features.
- π Demonstrated a strong foundation for future expansion in tourism, education, and cultural heritage.
π What I Learned
- π§ The power and potential of combining location-based data with AR to create engaging user experiences.
- π οΈ Practical insights into Flutterβs integration with native features and third-party APIs.
- π§© The importance of modular code architecture for maintainability and scalability.
- π Techniques to handle GPS variability and enhance app responsiveness in real-world conditions.
π± Download
Click the Android icon above to download the latest Time Trails APK
π₯ Demo
π Click the play button above to watch the Time Trails demo
π οΈ Tech Stack
- Flutter
- Google Maps SDK
- Google Directions, Routes & Geocoding APIs
- Firebase Firestore, Firebase Storage, Firebase Functions
- ARCore (Android) via Flutter plugins
- 3D building models from Leipzig Open Data
- App UI inspired by Figma designs:
π§© Future Plans
- Add textured, higher-quality 3D models.
- Support multiple travel modes (driving, cycling, etc.).
- Implement "Then & Now" AR image overlays.
- Expand geo-collectibles with AR mini-games and educational content.
- Enhance offline map and AR capabilities.
- Add social sharing of trails and badges.
Log in or sign up for Devpost to join the conversation.