Self-hostable alternative to Google Location History (Google Maps Timeline)
Find a file
2024-07-21 15:13:16 +02:00
.github Update issue templates 2024-06-14 18:16:44 +02:00
app Extract some code from maps_controller.js into separate files 2024-07-21 15:13:16 +02:00
bin Add import-maps and turbo with some devise views 2023-10-21 12:52:50 +02:00
config Handle Sidekiq access for non-admin users 2024-07-19 20:57:14 +02:00
db Add admin flag to users 2024-07-16 22:26:16 +02:00
docs Update How_to_install_Dawarich_on_Synology.md 2024-07-19 21:34:32 +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 Handle Sidekiq access for non-admin users 2024-07-19 20:57:14 +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 Add notifications 2024-07-04 22:20:12 +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 Extract some code from maps_controller.js into separate files 2024-07-21 15:13:16 +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 Extract some code from maps_controller.js into separate files 2024-07-21 15:13:16 +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 Extract some code from maps_controller.js into separate files 2024-07-21 15:13:16 +02:00
config.ru Add some frozen_string_literal 2022-10-30 18:42:06 +01:00
dev-docker-entrypoint.sh Disable registration and implement user creation in the settings page 2024-06-30 12:31:21 +02:00
dev-docker-sidekiq-entrypoint.sh Fix bundler not found problem 2024-04-04 23:12:32 +02:00
docker-compose.yml Update logging settings 2024-07-09 20:09:43 +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 Update logging settings 2024-07-09 20:09:43 +02:00
Gemfile.lock Update logging settings 2024-07-09 20:09:43 +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 Add REVERSE_GEOCODING_ENABLED env var to README 2024-07-13 10:39:30 +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

More guides can be found in the Wiki

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 existing location history from:

  • Google Maps Timeline
  • OwnTracks
  • Strava
  • Your own GPX files
  • Your photos' EXIF data

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 install the app

Docker

Synology

Default credentials

  • Username: user@domain.com
  • Password: password

Feel free to change them both in the Account section.

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
TIME_ZONE time zone, e.g. Europe/Berlin, full list is here
APPLICATION_HOSTS list of host of the application, e.g. localhost,dawarich.example.com
BACKGROUND_PROCESSING_CONCURRENCY (only for dawarich_sidekiq service) Number of simultaneously processed background jobs, default is 10
REVERSE_GEOCODING_ENABLED true or false, this env var allows you to disable reverse geocoding feature entirely

Star History

As you could probably guess, I like statistics.

Star History Chart