/tracks-backend

A Kotlin based backend exposing my hiking track data

Primary LanguageKotlin

Hiking Tracks Backend

State: WIP

A Kotlin/JVM based backend to expose my hiking tracks to the frontend application (see https://gpxtracks.vercel.app/ and https://github.com/stefanroeck/gpxtracks) This app will roughly do the following

  • ✅ Search for tagged hiking tracks in my Dropbox account (tag #longdistancewalk)
  • ✅ Convert the raw FIT files to GPX
  • ✅ Process the track data for single usage (elevation view) and bulk data (map overview)
  • ✅ Make this performant, e.g. by leveraging some caching
  • Also older process TCX files from Dropbox
  • Fetch Weather data and store in Mongo instead of fetching in UI

Development

Build

mvn install

Deployment

Application

The following configuration parameters need to be provided to run the application

Parameter Name
dropbox.clientId
dropbox.secret
dropbox.refreshToken
spring.data.mongodb.uri

Mongo DB

The following environment variables are needed by the MongoDB Container

Parameter Name
MONGO_INITDB_ROOT_USERNAME
MONGO_INITDB_ROOT_PASSWORD
MONGO_INITDB_DATABASE
MONGO_USER
MONGO_PASSWORD
MONGO_DB