Self-hostable alternative to Google Location History (Google Maps Timeline)
Find a file
2024-09-06 21:22:13 +02:00
.circleci Update readme 2024-08-20 22:56:42 +02:00
.github Add ci comment 2024-07-27 13:56:11 +02:00
app Add miles tests and refactor CreateStats service a bit 2024-09-06 21:22:13 +02:00
bin Add import-maps and turbo with some devise views 2023-10-21 12:52:50 +02:00
config Add DISTANCE_UNIT environment variable 2024-08-28 23:54:00 +02:00
db Fix a bug that prevented data migration from working correctly 2024-08-25 21:59:07 +02:00
docs Update How_to_install_Dawarich_on_Synology.md 2024-07-19 21:34:32 +02:00
lib Add a bunch of small changes and fixes, see CHANGELOG.md for details 2024-07-31 19:35:35 +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 miles tests and refactor CreateStats service a bit 2024-09-06 21:22:13 +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 Mark optional parameters in the Swagger API 2024-08-28 20:36:56 +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 areas 2024-07-21 20:09:42 +02:00
.app_version Add DISTANCE_UNIT environment variable 2024-08-28 23:54:00 +02:00
.dockerignore Fix bundler not found problem 2024-04-04 23:12:32 +02:00
.env.development Add DISTANCE_UNIT environment variable 2024-08-28 23:54:00 +02:00
.env.template Update CI workflow 2024-07-27 12:42:14 +02: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 Add redis to ci.yml 2024-07-27 13:40:52 +02:00
app.json Fix bundler not found problem 2024-04-04 23:12:32 +02:00
CHANGELOG.md Add miles tests and refactor CreateStats service a bit 2024-09-06 21:22:13 +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 js files to support miles 2024-08-29 00:09:04 +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 the import of geodata from Immich to Dawarich 2024-08-21 18:40:54 +02:00
Gemfile.lock Remove google_places gem 2024-08-25 19:31:40 +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 Updates here and there 2024-08-25 20:48:00 +02:00
yarn.lock Implement leaflet map with points and polyline 2024-03-16 01:07:20 +01:00

Dawarich

Discord | ko-fi | Patreon | 0x6bAd13667692632f1bF926cA9B421bEe7EaEB8D4

CircleCI

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 Docs

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
PHOTON_API_HOST Photon reverse geocoding api host. Useful, if you're running your own Photon instance

Star History

As you could probably guess, I like statistics.

Star History Chart