GeoPulse transforms raw GPS data from OwnTracks, Overland, Dawarich, GPSLogger, Home Assistant, Traccar, Colota and other sources into a searchable timeline of stays, trips, and movement patterns. It runs fully on your own infrastructure and integrates with Immich, Memos, and Weather so photos, notes, and conditions appear directly on your map history.
Comprehensive timeline visualization with automatic trip classification.
# Create directory and download config
mkdir geopulse && cd geopulse
curl -L -o .env https://raw.githubusercontent.com/tess1o/GeoPulse/main/.env.example
curl -L -o docker-compose.yml https://raw.githubusercontent.com/tess1o/GeoPulse/main/docker-compose.yml
# Start
docker compose up -dAccess: http://localhost:5555
Note: For production, review your .env for security-related settings first.
Need MQTT support for OwnTracks, Kubernetes, Unraid, Proxmox or bare-metal installation? See the deployment options.
- Self-hosted, no telemetry: Your location data remains on your own infrastructure.
- Open ecosystem: Works with popular GPS apps (OwnTracks, Overland, GPSLogger, Home Assistant, Colota, Traccar) and tools like Immich, Memos, and Weather.
- Full data ownership: Import historical data and export your data in standard formats anytime.
- Lightweight runtime: Typically under 100MB RAM and under 1% CPU in regular usage.
- Accessible & Localized: Currently available in English and Ukrainian, ensuring an inclusive experience across different regions.
Timeline & Analysis
- Smart Detection: Automatically converts GPS points into stays, trips, and data gaps.
- Custom Logic: Fully configurable detection sensitivity and travel mode classification.
- Deep Insights: Analytics for distance, visit frequency, and movement patterns over time.
- Map Matching: Valhalla-backed route refinement makes noisy trip paths follow roads and paths while raw GPS remains authoritative.