/dawarich

Self-hosted alternative to Google Location History (Google Maps Timeline)

Primary LanguageRubyGNU Affero General Public License v3.0AGPL-3.0

Dawarich

Discord | ko-fi | Patreon

Screenshots

Map

Stats

Import

Dawarich is a self-hosted web application to replace Google Timeline (aka Google Location History). It allows you to import your location history from Google Maps Timeline and Owntracks, view it on a map and see some statistics, such as the number of countries and cities visited, and distance traveled.

You can find changelog here.

Disclaimer

⚠️ The project is under very active development.

⚠️ Expect bugs and breaking changes.

⚠️ Do not delete your original Google Maps Timeline data after importing it to Dawarich.

⚠️ Export your data from Dawarich using built-in export functionality before updating to a new version.

⚠️ Try to keep Dawarich up-to-date to have the latest features and bug fixes.

Usage

To track your location, install the Owntracks app or Overland app on your phone and configure it to send location updates to your Dawarich instance.

OwnTracks

The url to send the location updates to is http://<your-dawarich-instance>/api/v1/owntracks/points?api_key=YOUR_API_KEY.

Currently, the app only supports HTTP mode of OwnTracks.

Overland

The url to send the location updates to is http://<your-dawarich-instance>/api/v1/overland/batches?api_key=YOUR_API_KEY.

Your API key can be found and/or generated in the user settings.

To import your Google Maps Timeline data, download your location history from Google Takeout and upload it to Dawarich.

How-to's

Features

Location Tracking

You can track your location using the Owntracks or Overland app.

Location history

You can view your location history on a map. On the map you can enable/disable the following layers:

  • Heatmap
  • Points
  • Lines between points

Statistics

You can see the number of countries and cities visited, the distance traveled, and the time spent in each country, splitted by years and months.

Import

You can import your Google Maps Timeline data into Dawarich as well as Owntracks data.

⚠️ Note: Import of huge Google Maps Timeline files may take a long time and consume a lot of memory. It also might temporarily consume a lot of disk space due to logs. Please make sure you have enough resources before starting the import. After import is completed, you can restart your docker container and logs will be removed.

How to start the app locally

docker-compose up to start the app. The app will be available at http://localhost:3000.

Press Ctrl+C to stop the app.

How to deploy the app

Copy the contents of the docker-compose.yml file to your server and run docker-compose up.

Environment variables

ENV var name Description
MIN_MINUTES_SPENT_IN_CITY minimum minutes between two points to consider them as visited the same city, e.g. 60
MAP_CENTER default map center, e.g. [55.7522, 37.6156]
TIME_ZONE time zone, e.g. Europe/Berlin, full list is here
APPLICATION_HOST host of the application, e.g. localhost or dawarich.example.com
BACKGROUND_PROCESSING_CONCURRENCY (only for dawarich_sidekiq service) Number of simultaneously processed background jobs, default is 10

Star History

As you could probably guess, I like statistics.

Star History Chart