Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

agnos.is Forums

  1. Home
  2. Selfhosted
  3. Introducing reitti: a selfhosted alternative to Google Timeline

Introducing reitti: a selfhosted alternative to Google Timeline

Scheduled Pinned Locked Moved Selfhosted
selfhosted
98 Posts 36 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S [email protected]

    Saving for later

    douglasg14b@lemmy.worldD This user is from outside of this forum
    douglasg14b@lemmy.worldD This user is from outside of this forum
    [email protected]
    wrote on last edited by
    #71

    Samesies

    1 Reply Last reply
    0
    • D [email protected]

      Thanks 🙂

      No, did not occur to me. What would the integration look like? Connecting it to the message bus to receive location updates? Honestly it is a couple years ago I played with HA.

      W This user is from outside of this forum
      W This user is from outside of this forum
      [email protected]
      wrote on last edited by
      #72

      I have the HA app on my phone, it reports my location back to my HA server.

      I would like if Reitti could retrieve my location from my HA server, instead of asking me to upload it again to Reitti. Uploading my location in short intervals drains the battery very fast, it's something I want to avoid if I can.

      Additiinally, I don't want to expose anything to the internet. So I pay for the Home Assistant cloud subscription that does it for me in a more secure manner than what I could implement with the little free time I have. Reitti could retrieve my location more securely if it did so without exiting my LAN.

      D 1 Reply Last reply
      1
      • D [email protected]

        Hey everyone!

        I'm excited to introduce Reitti, a location tracking and analysis application designed to help you gain insights about your movement patterns and significant places—all while keeping your data private on your own server.

        Core Capabilities:

        • Visit Tracking: Automatically recognizes and categorizes the places where you spend time, using customizable detection algorithms
        • Trip Analysis: Analyzes your movements between locations to understand how you travel whether by walking, cycling, or driving
        • Interactive Timeline: Visualizes all your past activities on an interactive timeline with map and list views that show visit duration, transport method, and distance traveled

        Photo Integration:

        • Connect your self-hosted Immich photo server to seamlessly display photos taken at specific locations right within Reitti's timeline. The interactive photo viewer lets you browse galleries for each place.

        Data Import Options:

        • Multiple Formats Supported: Reitti can import existing location data from GPX, GeoJSON, and Google Takeout (JSON) backups
        • (Near) Real-time Updates: Automatically receive location info via mobile apps like OwnTracks, GPSLogger or our REST API

        Customization:

        • Multi-geocoding Services: Configurable options to convert coordinates to human-readable addresses using providers like Nominatim
        • User Profiles: Customize individual display names, password management, and API token security under your own control

        Self-hosting:

        • Reitti is designed to be deployed on your own infrastructure using Docker containers. We provide configuration templates to set up linked services like PostgreSQL, RabbitMQ and Redis that keep all your location data private.

        Reitti is still early in development but has already developed extensive capabilities. I'd love to hear your feedback and answer any questions to tailor Reitti to meet the community's needs.

        Hope this sparks some interest!

        Daniel

        S This user is from outside of this forum
        S This user is from outside of this forum
        [email protected]
        wrote last edited by
        #73

        I am slightly bothered by how the logo is quite off-center, is it intentional?

        D 1 Reply Last reply
        2
        • D [email protected]

          Hey everyone!

          I'm excited to introduce Reitti, a location tracking and analysis application designed to help you gain insights about your movement patterns and significant places—all while keeping your data private on your own server.

          Core Capabilities:

          • Visit Tracking: Automatically recognizes and categorizes the places where you spend time, using customizable detection algorithms
          • Trip Analysis: Analyzes your movements between locations to understand how you travel whether by walking, cycling, or driving
          • Interactive Timeline: Visualizes all your past activities on an interactive timeline with map and list views that show visit duration, transport method, and distance traveled

          Photo Integration:

          • Connect your self-hosted Immich photo server to seamlessly display photos taken at specific locations right within Reitti's timeline. The interactive photo viewer lets you browse galleries for each place.

          Data Import Options:

          • Multiple Formats Supported: Reitti can import existing location data from GPX, GeoJSON, and Google Takeout (JSON) backups
          • (Near) Real-time Updates: Automatically receive location info via mobile apps like OwnTracks, GPSLogger or our REST API

          Customization:

          • Multi-geocoding Services: Configurable options to convert coordinates to human-readable addresses using providers like Nominatim
          • User Profiles: Customize individual display names, password management, and API token security under your own control

          Self-hosting:

          • Reitti is designed to be deployed on your own infrastructure using Docker containers. We provide configuration templates to set up linked services like PostgreSQL, RabbitMQ and Redis that keep all your location data private.

          Reitti is still early in development but has already developed extensive capabilities. I'd love to hear your feedback and answer any questions to tailor Reitti to meet the community's needs.

          Hope this sparks some interest!

          Daniel

          A This user is from outside of this forum
          A This user is from outside of this forum
          [email protected]
          wrote last edited by
          #74

          I managed to break our instance. I imported several years worth of google takeout location data, and now the "stay-detection-queue" is stalled.

          D 1 Reply Last reply
          6
          • W [email protected]

            I have the HA app on my phone, it reports my location back to my HA server.

            I would like if Reitti could retrieve my location from my HA server, instead of asking me to upload it again to Reitti. Uploading my location in short intervals drains the battery very fast, it's something I want to avoid if I can.

            Additiinally, I don't want to expose anything to the internet. So I pay for the Home Assistant cloud subscription that does it for me in a more secure manner than what I could implement with the little free time I have. Reitti could retrieve my location more securely if it did so without exiting my LAN.

            D This user is from outside of this forum
            D This user is from outside of this forum
            [email protected]
            wrote last edited by [email protected]
            #75

            I had a similar setup with Home Assistant in the past so I understand your usecase. For Reitti to detect visits somewhat reliable it needs at least one datapoint of location data a minute. We build location clusters with minimum 5 points in 5 minutes. If HA tracks that often it should work. HA probably tracks more than that.

            I could add an integration that Reitti fetches the data from Home Assistant. Do you mind in creating a feature request?

            W 1 Reply Last reply
            0
            • pipariturbiini@sopuli.xyzP [email protected]

              Maybe slightly off-topic, but how did you end up with the name "reitti"? You say you're German - do you have some sort of tie to the Finnish language?

              D This user is from outside of this forum
              D This user is from outside of this forum
              [email protected]
              wrote last edited by
              #76

              Oh, i had the idea in mind what i want to create and than it was a matter of a couple of Google queries but in the end one of the LLM suggested a list of different names in foreign languages and reitti somehow sticked 😊

              1 Reply Last reply
              0
              • A [email protected]

                I managed to break our instance. I imported several years worth of google takeout location data, and now the "stay-detection-queue" is stalled.

                D This user is from outside of this forum
                D This user is from outside of this forum
                [email protected]
                wrote last edited by
                #77

                Congratulations 😆

                To help with that I would need some information:

                • does it show anything in the logs?
                • what do you mean by several years or how big was the Records.json?

                Thank you for testing 🙂

                A 1 Reply Last reply
                4
                • S [email protected]

                  I am slightly bothered by how the logo is quite off-center, is it intentional?

                  D This user is from outside of this forum
                  D This user is from outside of this forum
                  [email protected]
                  wrote last edited by
                  #78

                  It was not intentional but after bothering not about it because i had other things on my mind i got used to it and now like it the way it is.

                  But for everyone who is bothered by that. If Reitti reaches 1k stars on Github I will add a switch to use a centered one 😊

                  1 Reply Last reply
                  5
                  • D [email protected]

                    Congratulations 😆

                    To help with that I would need some information:

                    • does it show anything in the logs?
                    • what do you mean by several years or how big was the Records.json?

                    Thank you for testing 🙂

                    A This user is from outside of this forum
                    A This user is from outside of this forum
                    [email protected]
                    wrote last edited by
                    #79

                    It's a 1gig json file that has about 10 years of data. I get multiple repeats of the rabbit timeout in the logs. The Job Status section tells me that it's got just under 9 hours of processing remaining for just over 16,000 in the stay-detection-queue. The numbers change slightly, so something is happening, but it's been going for over 12 hours now, and the time remaining is slowly going up, not down.

                    reitti-1  | 2025-07-04T03:06:17.848Z  WARN 1 --- [ntContainer#2-1] o.s.a.r.l.SimpleMessageListenerContainer : Consumer raised exception, processing can restart if the connection factory supports it
                    reitti-1  |
                    reitti-1  | com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - delivery acknowledgement on channel 9 timed out. Timeout value used: 1800000 ms. This timeout value can be configured, see consumers doc guide to learn more, class-id=0, method-id=0)
                    reitti-1  |     at org.springframework.amqp.rabbit.listener.BlockingQueueConsumer.checkShutdown(BlockingQueueConsumer.java:493) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                    reitti-1  |     at org.springframework.amqp.rabbit.listener.BlockingQueueConsumer.nextMessage(BlockingQueueConsumer.java:554) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                    reitti-1  |     at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.doReceiveAndExecute(SimpleMessageListenerContainer.java:1046) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                    reitti-1  |     at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.receiveAndExecute(SimpleMessageListenerContainer.java:1021) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                    reitti-1  |     at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.mainLoop(SimpleMessageListenerContainer.java:1423) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                    reitti-1  |     at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1324) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                    reitti-1  |     at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]
                    reitti-1  | Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - delivery acknowledgement on channel 9 timed out. Timeout value used: 1800000 ms. This timeout value can be configured, see consumers doc guide to learn more, class-id=0, method-id=0)
                    reitti-1  |     at com.rabbitmq.client.impl.ChannelN.asyncShutdown(ChannelN.java:528) ~[amqp-client-5.25.0.jar!/:5.25.0]
                    reitti-1  |     at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:349) ~[amqp-client-5.25.0.jar!/:5.25.0]
                    reitti-1  |     at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:193) ~[amqp-client-5.25.0.jar!/:5.25.0]
                    reitti-1  |     at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:125) ~[amqp-client-5.25.0.jar!/:5.25.0]
                    reitti-1  |     at com.rabbitmq.client.impl.AMQConnection.readFrame(AMQConnection.java:761) ~[amqp-client-5.25.0.jar!/:5.25.0]
                    reitti-1  |     at com.rabbitmq.client.impl.AMQConnection.access$400(AMQConnection.java:48) ~[amqp-client-5.25.0.jar!/:5.25.0]
                    reitti-1  |     at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:688) ~[amqp-client-5.25.0.jar!/:5.25.0]
                    reitti-1  |     ... 1 common frames omitted
                    
                    D 1 Reply Last reply
                    2
                    • D [email protected]

                      Hey everyone!

                      I'm excited to introduce Reitti, a location tracking and analysis application designed to help you gain insights about your movement patterns and significant places—all while keeping your data private on your own server.

                      Core Capabilities:

                      • Visit Tracking: Automatically recognizes and categorizes the places where you spend time, using customizable detection algorithms
                      • Trip Analysis: Analyzes your movements between locations to understand how you travel whether by walking, cycling, or driving
                      • Interactive Timeline: Visualizes all your past activities on an interactive timeline with map and list views that show visit duration, transport method, and distance traveled

                      Photo Integration:

                      • Connect your self-hosted Immich photo server to seamlessly display photos taken at specific locations right within Reitti's timeline. The interactive photo viewer lets you browse galleries for each place.

                      Data Import Options:

                      • Multiple Formats Supported: Reitti can import existing location data from GPX, GeoJSON, and Google Takeout (JSON) backups
                      • (Near) Real-time Updates: Automatically receive location info via mobile apps like OwnTracks, GPSLogger or our REST API

                      Customization:

                      • Multi-geocoding Services: Configurable options to convert coordinates to human-readable addresses using providers like Nominatim
                      • User Profiles: Customize individual display names, password management, and API token security under your own control

                      Self-hosting:

                      • Reitti is designed to be deployed on your own infrastructure using Docker containers. We provide configuration templates to set up linked services like PostgreSQL, RabbitMQ and Redis that keep all your location data private.

                      Reitti is still early in development but has already developed extensive capabilities. I'd love to hear your feedback and answer any questions to tailor Reitti to meet the community's needs.

                      Hope this sparks some interest!

                      Daniel

                      pfr@lemmy.sdf.orgP This user is from outside of this forum
                      pfr@lemmy.sdf.orgP This user is from outside of this forum
                      [email protected]
                      wrote last edited by
                      #80

                      Hell yes! I turned off location data for immich but now I can use this!

                      D 1 Reply Last reply
                      1
                      • A [email protected]

                        It's a 1gig json file that has about 10 years of data. I get multiple repeats of the rabbit timeout in the logs. The Job Status section tells me that it's got just under 9 hours of processing remaining for just over 16,000 in the stay-detection-queue. The numbers change slightly, so something is happening, but it's been going for over 12 hours now, and the time remaining is slowly going up, not down.

                        reitti-1  | 2025-07-04T03:06:17.848Z  WARN 1 --- [ntContainer#2-1] o.s.a.r.l.SimpleMessageListenerContainer : Consumer raised exception, processing can restart if the connection factory supports it
                        reitti-1  |
                        reitti-1  | com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - delivery acknowledgement on channel 9 timed out. Timeout value used: 1800000 ms. This timeout value can be configured, see consumers doc guide to learn more, class-id=0, method-id=0)
                        reitti-1  |     at org.springframework.amqp.rabbit.listener.BlockingQueueConsumer.checkShutdown(BlockingQueueConsumer.java:493) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                        reitti-1  |     at org.springframework.amqp.rabbit.listener.BlockingQueueConsumer.nextMessage(BlockingQueueConsumer.java:554) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                        reitti-1  |     at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.doReceiveAndExecute(SimpleMessageListenerContainer.java:1046) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                        reitti-1  |     at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.receiveAndExecute(SimpleMessageListenerContainer.java:1021) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                        reitti-1  |     at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.mainLoop(SimpleMessageListenerContainer.java:1423) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                        reitti-1  |     at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1324) ~[spring-rabbit-3.2.5.jar!/:3.2.5]
                        reitti-1  |     at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]
                        reitti-1  | Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - delivery acknowledgement on channel 9 timed out. Timeout value used: 1800000 ms. This timeout value can be configured, see consumers doc guide to learn more, class-id=0, method-id=0)
                        reitti-1  |     at com.rabbitmq.client.impl.ChannelN.asyncShutdown(ChannelN.java:528) ~[amqp-client-5.25.0.jar!/:5.25.0]
                        reitti-1  |     at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:349) ~[amqp-client-5.25.0.jar!/:5.25.0]
                        reitti-1  |     at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:193) ~[amqp-client-5.25.0.jar!/:5.25.0]
                        reitti-1  |     at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:125) ~[amqp-client-5.25.0.jar!/:5.25.0]
                        reitti-1  |     at com.rabbitmq.client.impl.AMQConnection.readFrame(AMQConnection.java:761) ~[amqp-client-5.25.0.jar!/:5.25.0]
                        reitti-1  |     at com.rabbitmq.client.impl.AMQConnection.access$400(AMQConnection.java:48) ~[amqp-client-5.25.0.jar!/:5.25.0]
                        reitti-1  |     at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:688) ~[amqp-client-5.25.0.jar!/:5.25.0]
                        reitti-1  |     ... 1 common frames omitted
                        
                        D This user is from outside of this forum
                        D This user is from outside of this forum
                        [email protected]
                        wrote last edited by
                        #81

                        Thanks for the information. I will try to recreate it locally. In my testing I used a 600MB file and this took maybe 2 hours to process on my server. It is one of these ryzen 7 5825U. Since Reitti tries to do these analysis on multiple cores we start it with 4 to 16 Threads when processing. But the stay detection breaks when doing it that way, so it is locking per user to handle that. If now one of them takes a long time the others will break eventually. They will get resheduled 3 times until rabbitmq gives up.

                        On what type of system do you run it?

                        I will add some switches so it is configurable how many threads are opened and add some log statements to print out the duration it took for a single step.

                        A 1 Reply Last reply
                        1
                        • D [email protected]

                          Thanks for the information. I will try to recreate it locally. In my testing I used a 600MB file and this took maybe 2 hours to process on my server. It is one of these ryzen 7 5825U. Since Reitti tries to do these analysis on multiple cores we start it with 4 to 16 Threads when processing. But the stay detection breaks when doing it that way, so it is locking per user to handle that. If now one of them takes a long time the others will break eventually. They will get resheduled 3 times until rabbitmq gives up.

                          On what type of system do you run it?

                          I will add some switches so it is configurable how many threads are opened and add some log statements to print out the duration it took for a single step.

                          A This user is from outside of this forum
                          A This user is from outside of this forum
                          [email protected]
                          wrote last edited by
                          #82

                          i7-8700 with 64GB of RAM

                          D 1 Reply Last reply
                          1
                          • A [email protected]

                            i7-8700 with 64GB of RAM

                            D This user is from outside of this forum
                            D This user is from outside of this forum
                            [email protected]
                            wrote last edited by [email protected]
                            #83

                            Hmm, I had hoped you say something like a Raspberry PI 😄

                            But this should be enough to have it processed in a reasonable time. What I do not understand in the moment is, that the filesize should not affect it in any way. When importing it 100 Geopoints are bundled, send to RabbitMQ. From there we retrieve them, do some filtering and save them in the database. Then actually nothing happens anymore until the next processing run is triggered.

                            But this than works with the PostGis DB and not with the file anymore. So the culprit should be there somewhere. I will try to insert some fake data into mine and see how long it takes if i double my location points.

                            A 1 Reply Last reply
                            1
                            • pfr@lemmy.sdf.orgP [email protected]

                              Hell yes! I turned off location data for immich but now I can use this!

                              D This user is from outside of this forum
                              D This user is from outside of this forum
                              [email protected]
                              wrote last edited by
                              #84

                              It is actually awesome if you have some old photos with the geodata attached and scim through Reitti and suddenly one of them shows up 🙂

                              1 Reply Last reply
                              0
                              • D [email protected]

                                Hmm, I had hoped you say something like a Raspberry PI 😄

                                But this should be enough to have it processed in a reasonable time. What I do not understand in the moment is, that the filesize should not affect it in any way. When importing it 100 Geopoints are bundled, send to RabbitMQ. From there we retrieve them, do some filtering and save them in the database. Then actually nothing happens anymore until the next processing run is triggered.

                                But this than works with the PostGis DB and not with the file anymore. So the culprit should be there somewhere. I will try to insert some fake data into mine and see how long it takes if i double my location points.

                                A This user is from outside of this forum
                                A This user is from outside of this forum
                                [email protected]
                                wrote last edited by
                                #85

                                I was also trying to set up GPSLogger whilst it was crunching through the backlog, and I manually transferred a file from that app before I had autologging configured. Not sure if that could have done it?

                                The times don't overlap, as the takeout file is only up until 2023

                                D 1 Reply Last reply
                                0
                                • A [email protected]

                                  I was also trying to set up GPSLogger whilst it was crunching through the backlog, and I manually transferred a file from that app before I had autologging configured. Not sure if that could have done it?

                                  The times don't overlap, as the takeout file is only up until 2023

                                  D This user is from outside of this forum
                                  D This user is from outside of this forum
                                  [email protected]
                                  wrote last edited by [email protected]
                                  #86

                                  Thanks for getting back to me. I can look into it. I don't think it's connected, but you never know.

                                  The data goes the same way, first to RabbitMQ and then the database. So it shouldn't matter, it's just another message or a bunch of them in the queue.

                                  A 1 Reply Last reply
                                  0
                                  • D [email protected]

                                    Thanks for getting back to me. I can look into it. I don't think it's connected, but you never know.

                                    The data goes the same way, first to RabbitMQ and then the database. So it shouldn't matter, it's just another message or a bunch of them in the queue.

                                    A This user is from outside of this forum
                                    A This user is from outside of this forum
                                    [email protected]
                                    wrote last edited by
                                    #87

                                    Ok, so it may not be frozen. The numbers in the queue seem to imply it is, however, timelines and places are slowly filling out in my history. A couple of dates I had looked at previously were showing me tracklogs for the day, but not timeline information, and now, they're showing timelines for the day

                                    D 1 Reply Last reply
                                    0
                                    • A [email protected]

                                      Ok, so it may not be frozen. The numbers in the queue seem to imply it is, however, timelines and places are slowly filling out in my history. A couple of dates I had looked at previously were showing me tracklogs for the day, but not timeline information, and now, they're showing timelines for the day

                                      D This user is from outside of this forum
                                      D This user is from outside of this forum
                                      [email protected]
                                      wrote last edited by
                                      #88

                                      That's good, but I still question why it is so slow. If you receive these timeout exceptions more often, at some point the data will cease to be analyzed.

                                      I just re-tested it with multiple concurrent imports into a clean DB, and the stay-detection-queue completed in 10 minutes. It's not normal for it to take that long for you. The component that should take the most time is actually the merge-visit-queue because this creates a lot of stress for the DB. This test was conducted on my laptop, equipped with an AMD Ryzenâ„¢ 7 PRO 8840U and 32GB of RAM.

                                      A 1 Reply Last reply
                                      0
                                      • D [email protected]

                                        Hey everyone!

                                        I'm excited to introduce Reitti, a location tracking and analysis application designed to help you gain insights about your movement patterns and significant places—all while keeping your data private on your own server.

                                        Core Capabilities:

                                        • Visit Tracking: Automatically recognizes and categorizes the places where you spend time, using customizable detection algorithms
                                        • Trip Analysis: Analyzes your movements between locations to understand how you travel whether by walking, cycling, or driving
                                        • Interactive Timeline: Visualizes all your past activities on an interactive timeline with map and list views that show visit duration, transport method, and distance traveled

                                        Photo Integration:

                                        • Connect your self-hosted Immich photo server to seamlessly display photos taken at specific locations right within Reitti's timeline. The interactive photo viewer lets you browse galleries for each place.

                                        Data Import Options:

                                        • Multiple Formats Supported: Reitti can import existing location data from GPX, GeoJSON, and Google Takeout (JSON) backups
                                        • (Near) Real-time Updates: Automatically receive location info via mobile apps like OwnTracks, GPSLogger or our REST API

                                        Customization:

                                        • Multi-geocoding Services: Configurable options to convert coordinates to human-readable addresses using providers like Nominatim
                                        • User Profiles: Customize individual display names, password management, and API token security under your own control

                                        Self-hosting:

                                        • Reitti is designed to be deployed on your own infrastructure using Docker containers. We provide configuration templates to set up linked services like PostgreSQL, RabbitMQ and Redis that keep all your location data private.

                                        Reitti is still early in development but has already developed extensive capabilities. I'd love to hear your feedback and answer any questions to tailor Reitti to meet the community's needs.

                                        Hope this sparks some interest!

                                        Daniel

                                        L This user is from outside of this forum
                                        L This user is from outside of this forum
                                        [email protected]
                                        wrote last edited by
                                        #89

                                        Got it up and running, looks neat!

                                        Is there a way to import old pictures from Immich? If I take new ones they do show up on Reitti, but none of the old ones are shown.

                                        D 1 Reply Last reply
                                        0
                                        • D [email protected]

                                          That's good, but I still question why it is so slow. If you receive these timeout exceptions more often, at some point the data will cease to be analyzed.

                                          I just re-tested it with multiple concurrent imports into a clean DB, and the stay-detection-queue completed in 10 minutes. It's not normal for it to take that long for you. The component that should take the most time is actually the merge-visit-queue because this creates a lot of stress for the DB. This test was conducted on my laptop, equipped with an AMD Ryzenâ„¢ 7 PRO 8840U and 32GB of RAM.

                                          A This user is from outside of this forum
                                          A This user is from outside of this forum
                                          [email protected]
                                          wrote last edited by
                                          #90

                                          Since I last commented, the queue has jumped from about 9000 outstanding items, to 15,000 outstanding items, and it appears that I have timelines for a large amount of my history now.

                                          However, the estimated time is still slowly creeping up (though only by a minute or two, despite adding 6000 more items to the queue).

                                          I haven't uploaded anything manually that might have triggered the change in queue size.

                                          Is there any external calls made during processing this queue that might be adding latency?

                                          tl;dr - something is definitely happening

                                          D 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups