Self-hostable alternative to Google Location History (Google Maps Timeline)
Find a file
2024-06-25 14:11:06 +02:00
.github Update issue templates 2024-06-14 18:16:44 +02:00
app Update fields in settings form 2024-06-20 23:59:14 +02:00
bin Add import-maps and turbo with some devise views 2023-10-21 12:52:50 +02:00
config Add new settings page to allow user change route rendering options 2024-06-20 23:57:00 +02:00
db Add new settings page to allow user change route rendering options 2024-06-20 23:57:00 +02:00
docs add Synology and Docker documentation 2024-06-25 14:11:06 +02:00
lib Update Records.json importing script 2024-06-10 22:48:05 +02:00
log Initial Rails 7.0.2.3 template w/ rspec, tailwind, and devise user 2022-04-06 22:46:10 +04:00
public Implement Exporting points to a file 2024-06-12 20:29:38 +02:00
screenshots Update README.md 2024-06-08 22:39:28 +02:00
spec Add new settings page to allow user change route rendering options 2024-06-20 23:57:00 +02:00
storage Initial Rails 7.0.2.3 template w/ rspec, tailwind, and devise user 2022-04-06 22:46:10 +04:00
swagger/v1 Implement GPX imports 2024-06-19 21:16:06 +02:00
test Initial Rails 7.0.2.3 template w/ rspec, tailwind, and devise user 2022-04-06 22:46:10 +04:00
tmp Initial Rails 7.0.2.3 template w/ rspec, tailwind, and devise user 2022-04-06 22:46:10 +04:00
vendor Add a heatmap layer to the map to show the density of points 2024-05-25 22:14:55 +02:00
.app_version Add new settings page to allow user change route rendering options 2024-06-20 23:57:00 +02:00
.dockerignore Fix bundler not found problem 2024-04-04 23:12:32 +02:00
.env.development Move import processing to background job & allow to disable reverse geocoding 2024-03-24 18:05:39 +01:00
.env.template Migrate from old template 2024-03-15 23:27:31 +01:00
.env.test Move import processing to background job & allow to disable reverse geocoding 2024-03-24 18:05:39 +01:00
.gitattributes Initial Rails 7.0.2.3 template w/ rspec, tailwind, and devise user 2022-04-06 22:46:10 +04:00
.gitignore Implement Exporting points to a file 2024-06-12 20:29:38 +02:00
.rspec Initial Rails 7.0.2.3 template w/ rspec, tailwind, and devise user 2022-04-06 22:46:10 +04:00
.rubocop.yml Add swagger along with api/v1/points swagger doc 2024-05-18 13:35:48 +02:00
.ruby-version Update ruby version to 3.2.3 2024-03-15 22:24:23 +01:00
app.json Fix bundler not found problem 2024-04-04 23:12:32 +02:00
CHANGELOG.md Add new settings page to allow user change route rendering options 2024-06-20 23:57:00 +02:00
config.ru Add some frozen_string_literal 2022-10-30 18:42:06 +01:00
dev-docker-entrypoint.sh Scope points to a user 2024-05-25 13:26:56 +02:00
dev-docker-sidekiq-entrypoint.sh Fix bundler not found problem 2024-04-04 23:12:32 +02:00
docker-compose.yml Fix a bug where the export file was not being created in the public folder 2024-06-14 19:33:24 +02:00
Dockerfile Update to Bundler 2.5.9 2024-04-17 22:34:10 +02:00
Dockerfile.dev Update to Bundler 2.5.9 2024-04-17 22:34:10 +02:00
Gemfile Implement GPX imports 2024-06-19 21:16:06 +02:00
Gemfile.lock Implement GPX imports 2024-06-19 21:16:06 +02:00
LICENSE Create LICENSE 2024-04-08 03:11:23 +04:00
Makefile Update to Bundler 2.5.9 2024-04-17 22:34:10 +02:00
package-lock.json Implement leaflet map with points and polyline 2024-03-16 01:07:20 +01:00
package.json Implement leaflet map with points and polyline 2024-03-16 01:07:20 +01:00
Procfile Fix bundler not found problem 2024-04-04 23:12:32 +02:00
Procfile.dev Fix bundler not found problem 2024-04-04 23:12:32 +02:00
Rakefile Add some frozen_string_literal 2022-10-30 18:42:06 +01:00
README.md Update readme 2024-06-15 20:13:44 +02:00
yarn.lock Implement leaflet map with points and polyline 2024-03-16 01:07:20 +01:00

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