Repolode
tess1o

tess1o/geopulse

Self-hosted location timeline that turns GPS data from apps like OwnTracks and Overland into stays, trips, and analytics, an alternative to Google Timeline.

Open-source alternative to:Google Timeline

Stars
1,446
Forks
64
Open issues
16
Last commit
22 hours ago

What is it?

GeoPulse is a self-hosted location history platform. It takes GPS points from sources such as OwnTracks, Overland, GPSLogger, Home Assistant, Traccar, Dawarich and Colota, and converts them into a searchable timeline of stays, trips and data gaps, with travel modes classified for each trip.

The app can enrich that timeline with photos from Immich, notes from Memos and weather conditions. It also provides distance and visit analytics, trip plans, city and country breakdowns, and yearly summaries. Map matching via Valhalla can align noisy trip paths to roads while keeping the raw GPS data intact.

The project supports multiple users with friend-level visibility controls, shareable guest links, OIDC/SSO login, encrypted backups, and export to GPX, GeoJSON, OwnTracks and CSV. It is deployable with Docker Compose, Helm, Unraid, Proxmox LXC or manual installation, and it is licensed under BSL 1.1, which permits free personal and non-commercial use.

Key features

  • 01Converts GPS points into stays, trips and data gaps with travel mode classification.
  • 02Receives live location from OwnTracks, Overland, GPSLogger, Home Assistant, Traccar, Dawarich and Colota.
  • 03Adds Immich photos, Memos notes and weather data to the map history.
  • 04Map matching through Valhalla to snap trip paths to roads.
  • 05Imports from Google Timeline, GPX, GeoJSON, OwnTracks and CSV, and exports the data in standard formats.
  • 06Includes an MCP server and an AI chat option that uses an OpenAI-compatible key.

Use cases

  • Keeping a private record of your own movements instead of storing location history with a cloud service.
  • Viewing trips and stays alongside photos from your Immich library.
  • Sharing live location and history with family or friends under controlled visibility.
  • Importing an existing Google Timeline export and browsing it on your own server.

Quick start

  1. 1

    Create a directory and download the config files

    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
  2. 2

    Start the containers

    docker compose up -d
  3. 3

    Open the app at localhost port 5555 and review .env security settings for production

Things to know

  • Licensed under BSL 1.1, which is source-available rather than an OSI open-source license.
  • Requires self-hosting and server maintenance of your own location data.
  • Some integrations, such as AI Chat, need your own OpenAI-compatible API key.

Topics

FAQ

What is geopulse?
Self-hosted location timeline that turns GPS data from apps like OwnTracks and Overland into stays, trips, and analytics, an alternative to Google Timeline. GeoPulse is a self-hosted location history platform. It takes GPS points from sources such as OwnTracks, Overland, GPSLogger, Home Assistant, Traccar, Dawarich and Colota, and converts them into a searchable timeline of stays, trips and data gaps, with travel modes classified for each trip.
Is geopulse free to use? What license does it have?
geopulse is open source under the Other license. Check the license terms before using it in commercial products.
Is geopulse still maintained?
Actively maintained. The last commit to geopulse was on Oct 19, 2026.
What can I use geopulse for?
Keeping a private record of your own movements instead of storing location history with a cloud service. Viewing trips and stays alongside photos from your Immich library. Sharing live location and history with family or friends under controlled visibility. Importing an existing Google Timeline export and browsing it on your own server.
How do I install geopulse?
Create a directory and download the config files: 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 the containers: docker compose up -d Open the app at localhost port 5555 and review .env security settings for production
Where can I get geopulse?
The source code and installation instructions are on GitHub: https://github.com/tess1o/geopulse

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects