ToSummit is a modern Android application built with Kotlin and Jetpack Compose that enables crowd-sourced discovery and mapping of outdoor locations such as mountain peaks, shelters, and water sources.
The app focuses on real-time collaboration, location-based features, and clean UI architecture, allowing users to contribute and explore verified trail data shared across the community.
![]() |
![]() |
![]() |
![]() |
| Login | Register | Map | Details |
![]() |
![]() |
![]() |
![]() |
| Add | Filter | List | Leaderboard |
- Interactive Google Maps integration
- Displays user’s current location
- Supports multiple outdoor location types:
- Mountain summits
- Water sources
- Shelters
- Viewpoints
- Parking
- Other points of interest
- Dynamic markers with type-specific icons
- Dedicated Add Location screen
- Users can:
- Select a position on the map
- Choose a location type
- Add title and description
- Upload a photo
- Each location is automatically linked to its author
- Data is stored in Firebase Firestore and synced in real time
- Material Design Bottom Sheet UI
- Opened from map markers or list items
- Displays:
- Location title and type
- Description
- Distance from current user
- Uploaded image
- Author information
- Creation timestamp
- Image selection from device gallery
- Images uploaded and hosted via Cloudinary
- Displayed consistently across map and detail views
- Registration and login using Firebase Authentication
- User profiles stored in Firestore, including:
- Full name
- Phone number
- Profile photo
- Contribution points
- Contributions are automatically attributed to the logged-in user
- All user-submitted locations are shared in real time
- Enables collaborative and continuously growing trail data
- Designed with mobile crowd sensing principles
- Background distance calculation
- Users receive notifications when they are within 100 meters of a saved location
- Locations List
- Sorted by distance from the user
- Filter Screen
- Filter locations by type ,author and date posted
- Leaderboard
- Ranks users based on contribution points
- Language: Kotlin
- UI: Jetpack Compose (Material Design)
- Maps: Google Maps SDK
- Backend: Firebase
- Authentication
- Firestore (real-time updates)
- Media Hosting: Cloudinary
ToSummit demonstrates:
- Real-world use of location services
- Modern Compose-based UI
- Cloud-backed real-time data synchronization
- Clean separation of concerns and scalable app architecture
- Practical implementation of community-driven data collection







