Introduction
Colota is a self-hosted GPS tracking app for Android. It sends your location to your own server over HTTP(S), works offline, supports geofencing, and doesn't share any data except with your configured backends.
Key Features
- Self-Hosted — Send location data to your own server via REST API. Works with Dawarich, OwnTracks, Reitti, or any custom backend that accepts JSON over HTTP.
- Privacy First — No analytics, no telemetry, no third-party SDKs, no cloud services. Open source under AGPL-3.0.
- Works Offline — Works without a server. Store location history locally and export as CSV, GeoJSON, GPX, or KML.
- Background Tracking — Foreground service, auto-start on boot, retry with exponential backoff, battery-critical shutdown.
- Geofencing — Create silent zones where tracking automatically pauses to save battery.
- Sync Modes — Instant, batch, or offline. Configurable intervals with automatic retry.
- Data Export — Export location history in CSV, GeoJSON, GPX, or KML formats.
- Authentication — Basic Auth, Bearer Token, or custom HTTP headers with AES-256-GCM encrypted storage.
- Dark Mode — Full light and dark theme support.
App Screens
Colota has nine screens, each focused on a specific task:
| Screen | Purpose |
|---|---|
| Dashboard | Live map with current coordinates, tracking controls, database stats, and geofence status |
| Settings | GPS polling interval, distance filter, sync strategy, offline mode, accuracy threshold |
| API Config | Endpoint field mapping with templates for Dawarich, OwnTracks, Reitti, or custom backends |
| Auth Settings | Endpoint authentication (None, Basic Auth, Bearer Token) and custom HTTP headers |
| Geofences | Create, edit, and delete pause zones on an interactive map |
| Location Inspector | Debug view for sent and queued locations with pagination and accuracy indicators |
| Export Data | Export tracked locations as CSV, GeoJSON, GPX, or KML |
| Data Management | Clear sent history, delete old data, vacuum the database |
| About | App version, device info, links to repository and privacy policy |
Screenshots




Architecture
Colota is a monorepo with a React Native UI layer and native Kotlin modules for background tracking:
- apps/mobile — React Native + Kotlin Android app
- apps/docs — This documentation site (Docusaurus)
- packages/shared — Shared theme colors, typography, and types
The native layer handles the foreground service, database, HTTP sync, geofencing, and credential storage. See the Architecture page for details.
License
Colota is licensed under the GNU Affero General Public License v3.0. All modifications must remain open source.