After an intensive week of development, I’m proud to present Reitti v1.1.0 with a big list of improvements!
✨ What’s New in This Update:
✓ Family & Friends Tracking: Now see multiple users on the same map - perfect for keeping tabs on your whole family or group adventures!
✓ Faster Processing: Experience significantly faster data crunching after importing new location data
✓ Redesigned Settings: Completely overhauled UI makes customization simpler and more intuitive
✓ Imperial Unit Support: Added miles and feet for our friends in the US and elsewhere
✓ Enhanced Maps: New color mode to personalize your viewing experience
✓ Google Timeline Import 2.0: Now supports legacy formats plus both iOS and Android variants
✓ OwnTracks Integration: Direct connection to your existing OwnTracks Recorder
✓ Docker Optimization: New arm64 images for efficient deployment
🔍 New to Reitti?
Reitti is your ultimate privacy-focused location companion that:
📍 Builds smart maps of your travels
📊 Uncovers your movement patterns
🔐 Keeps all data securely on YOUR device
💙 Stays 100% free and open-source
🚦 Ready to Upgrade?
📲 Get the Latest Version
☕ Support Development on Ko-fi
Huge thanks to this amazing community for your suggestions and feedback!
Tried installing it, but I can’t get it to run. The log is full of this error:
reitti-1 | reitti-1 | . ____ _ __ _ _ reitti-1 | /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ reitti-1 | ( ( )\___ | '_ | '_| | '_ \/ _
| \ \ \reitti-1 | \/ )| |)| | | | | || (| | ) ) ) ) reitti-1 | ’ || .__|| ||| |_, | / / / / reitti-1 | =========||==============|/=///_/ reitti-1 | reitti-1 | :: Spring Boot :: (v3.5.3) reitti-1 | reitti-1 | 2025-07-22T02:46:39.147Z INFO 1 — [ main] c.d.reitti.ReittiApplication : Starting ReittiApplication v0.0.1-SNAPSHOT using Java 24.0.1 with PID 1 (/app/app.jar started by reitti in /app) reitti-1 | 2025-07-22T02:46:39.155Z INFO 1 — [ main] c.d.reitti.ReittiApplication : The following 1 profile is active: “docker” reitti-1 | 2025-07-22T02:46:44.546Z INFO 1 — [ main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode reitti-1 | 2025-07-22T02:46:44.551Z INFO 1 — [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode. reitti-1 | 2025-07-22T02:46:44.882Z INFO 1 — [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 23 ms. Found 0 Redis repository interfaces. reitti-1 | 2025-07-22T02:46:48.603Z INFO 1 — [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port 8080 (http) reitti-1 | 2025-07-22T02:46:48.697Z INFO 1 — [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat] reitti-1 | 2025-07-22T02:46:48.698Z INFO 1 — [ main] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.42] reitti-1 | 2025-07-22T02:46:48.837Z INFO 1 — [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext reitti-1 | 2025-07-22T02:46:48.838Z INFO 1 — [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 9495 ms reitti-1 | 2025-07-22T02:46:49.758Z INFO 1 — [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting… reitti-1 | 2025-07-22T02:46:51.575Z ERROR 1 — [ main] o.s.b.web.embedded.tomcat.TomcatStarter : Error starting Tomcat context. Exception: org.springframework.beans.factory.UnsatisfiedDependencyException. Message: Error creating bean with name ‘tokenAuthenticationFilter’ defined in URL [jar:nested:/app/app.jar/!BOOT-INF/classes/!/com/dedicatedcode/reitti/config/TokenAuthenticationFilter.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name ‘apiTokenService’ defined in URL [jar:nested:/app/app.jar/!BOOT-INF/classes/!/com/dedicatedcode/reitti/service/ApiTokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name ‘apiTokenJdbcService’ defined in URL [jar:nested:/app/app.jar/!BOOT-INF/classes/!/com/dedicatedcode/reitti/repository/ApiTokenJdbcService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name ‘flywayInitializer’ defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Unable to obtain connection from database: FATAL: password authentication failed for user “reitti” reitti-1 | -------------------------------------------------------------------------------------------------- reitti-1 | SQL State : 28P01 reitti-1 | Error Code : 0 reitti-1 | Message : FATAL: password authentication failed for user “reitti” reitti-1 | reitti-1 | 2025-07-22T02:46:51.599Z INFO 1 — [ main] o.apache.catalina.core.StandardService : Stopping service [Tomcat] reitti-1 | 2025-07-22T02:46:51.650Z WARN 1 — [ main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start web server reitti-1 | 2025-07-22T02:46:51.678Z INFO 1 — [ main] .s.b.a.l.ConditionEvaluationReportLogger : reitti-1 | reitti-1 | Error starting ApplicationContext. To display the condition evaluation report re-run your application with ‘debug’ enabled. reitti-1 | 2025-07-22T02:46:51.719Z ERROR 1 — [ main] o.s.boot.SpringApplication : Application run failed reitti-1 | reitti-1 | org.springframework.context.ApplicationContextException: Unable to start web server reitti-1 | at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:170) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:621) ~[spring-context-6.2.8.jar!/:6.2.8] reitti-1 | at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.boot.SpringApplication.run(SpringApplication.java:318) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.boot.SpringApplication.run(SpringApplication.java:1361) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.boot.SpringApplication.run(SpringApplication.java:1350) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at com.dedicatedcode.reitti.ReittiApplication.main(ReittiApplication.java:12) ~[!/:0.0.1-SNAPSHOT] reitti-1 | at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source) ~[na:na] reitti-1 | at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na] reitti-1 | at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:102) ~[app.jar:0.0.1-SNAPSHOT] reitti-1 | at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:64) ~[app.jar:0.0.1-SNAPSHOT] reitti-1 | at org.springframework.boot.loader.launch.JarLauncher.main(JarLauncher.java:40) ~[app.jar:0.0.1-SNAPSHOT] reitti-1 | Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat reitti-1 | at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:147) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.<init>(TomcatWebServer.java:107) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:517) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:219) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:193) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:167) ~[spring-boot-3.5.3.jar!/:3.5.3] reitti-1 | … 13 common frames omitted reitti-1 | Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘tokenAuthenticationFilter’ defined in URL [jar:nested:/app/app.jar/!BOOT-INF/classes/!/com/dedicatedcode/reitti/config/TokenAuthenticationFilter.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name ‘apiTokenService’ defined in URL [jar:nested:/app/app.jar/!BOOT-INF/classes/!/com/dedicatedcode/reitti/service/ApiTokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name ‘apiTokenJdbcService’ defined in URL [jar:nested:/app/app.jar/!BOOT-INF/classes/!/com/dedicatedcode/reitti/repository/ApiTokenJdbcService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name ‘flywayInitializer’ defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Unable to obtain connection from database: FATAL: password authentication failed for user “reitti” reitti-1 | -------------------------------------------------------------------------------------------------- reitti-1 | SQL State : 28P01 reitti-1 | Error Code : 0 reitti-1 | Message : FATAL: password authentication failed for user “reitti” reitti-1 | reitti-1 | at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804) ~[spring-beans-6.2.8.jar!/:6.2.8] reitti-1 | at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) ~[spring-beans-6.2.8.jar!/:6.2.8] reitti-1 | at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1395) ~[spring-beans-6.2.8.jar!/:6.2.8] reitti-1 | at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1232) ~[spring-beans-6.2.8.jar!/:6.2.8] reitti-1 | at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) ~[spring-beans-6.2.8.jar!/:6.2.8] r`