Configuration

Kinetiqo is configured entirely through environment variables. All configuration options—including database, Strava API, scheduling, display, and map providers—are set via environment variables or a .env file.

1. Strava API Credentials

Register an application in the Strava API Settings to obtain the necessary credentials.

Variable Description Required
STRAVA_CLIENT_ID Strava Application Client ID.
STRAVA_CLIENT_SECRET Strava Application Client Secret.
STRAVA_REFRESH_TOKEN Valid Refresh Token with activity:read_all scope.

2. Database Configuration

Set DATABASE_TYPE to postgresql, mysql, or firebird.

PostgreSQL (Default)

| Variable | Description | Default | |————————-|————————————|————| | POSTGRESQL_HOST | Database server hostname. | Required | | POSTGRESQL_PORT | Database server port. | 5432 | | POSTGRESQL_USER | Database username. | Required | | POSTGRESQL_PASSWORD | Database password. | Required | | POSTGRESQL_DATABASE | Database name. | Required | | POSTGRESQL_SSL_MODE | SSL connection mode. | disable |

MySQL / MariaDB

| Variable | Description | Default | |————————-|————————————|————| | MYSQL_HOST | Database server hostname. | Required | | MYSQL_PORT | Database server port. | 3306 | | MYSQL_USER | Database username. | Required | | MYSQL_PASSWORD | Database password. | Required | | MYSQL_DATABASE | Database name. | Required | | MYSQL_SSL_MODE | SSL connection mode. | disable |

Note: For MySQL, ensure the user has CREATE and ALL PRIVILEGES on the target database to allow for schema management.

Firebird

| Variable | Description | Default | |————————-|————————————|————| | FIREBIRD_HOST | Database server hostname. | Required | | FIREBIRD_PORT | Database server port. | 3050 | | FIREBIRD_USER | Database username. | Required | | FIREBIRD_PASSWORD | Database password. | Required | | FIREBIRD_DATABASE | Database file path or alias. | Required |

Note: Kinetiqo will automatically create the Firebird database and schema if they don’t exist. Version Compatibility: Firebird 3.0, 4.0, 5.0 supported. Uses only standard SQL features. Permissions Required:

  • User must have rights to create databases, tables, sequences, triggers, and indexes.
  • For embedded Firebird, ensure write access to the database file directory.

3. Scheduling (Cron)

The Docker image includes a built-in cron scheduler powered by dcron. Define schedules using standard cron syntax.

Variable Description Example
FULL_SYNC Schedule for full synchronization. 0 3 * * * (Daily 3AM)
FAST_SYNC Schedule for incremental sync. */15 * * * *

Both accept standard 5-field cron expressions. See Deployment for more details.

4. Web Interface Configuration

| Variable | Description | Default | |—————–|—————————|————-| | WEB_LOGIN | Username for web access. | admin | | WEB_PASSWORD | Password for web access. | admin123 |

5. Athlete & Display Configuration

| Variable | Description | Default | |——————–|————————————————–|—————–| | ATHLETE_WEIGHT | Athlete body weight in kg (fallback only) | 0 (not set) | | DATE_FORMAT | Date format string (Python strftime syntax) | %b %d, %Y |

6. Map Configuration

Kinetiqo supports multiple map tile providers. Some require API keys:

Variable Description Default
MAPY_API_KEY API key for Mapy.cz tile layers (empty)
THUNDERFOREST_API_KEY API key for Thunderforest tile layers (empty)

Layers requiring a missing API key appear greyed-out in the map selector.

How to Get Map API Keys

Mapy.cz (Seznam.cz)

Thunderforest

If an API key is missing, the corresponding map layers will be disabled (greyed-out) in the web UI with a hint.

For more, see Web Interface.

7. Advanced & Notes