Flutter  ·  Open Source

First
Klick

A precision GPS running tracker with Bluetooth heart rate monitoring and seamless Strava integration — built for runners who care about data.

Live GPS Tracking
BLE Heart Rate
Strava Upload
Offline-first
Auto-pause
Calendar View
42:18
7.4 KM
5:42 /KM
152 BPM
■ Stop
Features

Everything you need
on every run

From the moment you hit start to the post-run breakdown, First Klick tracks every detail — even when your phone is in your pocket.

Live GPS Tracking

High-accuracy location sampling at 3-second intervals with Haversine distance calculation. Your route is drawn in real time on an OpenStreetMap tile layer.

High accuracy

BLE Heart Rate Monitor

Pairs with any Bluetooth LE chest strap or wrist sensor via GATT Heart Rate Service. Live BPM streams directly to your screen with automatic reconnection on signal loss.

GATT 0x180D

Intelligent Auto-pause

Speed-based hysteresis pauses your timer when you slow below 1.8 km/h — at traffic lights, water stops, or trail crossings — and resumes the moment you're moving again.

Smart detection

Calendar & Activity History

A monthly calendar marks every day you ran with a cyan dot. Tap a day to reveal a quick-preview card — title, time, distance, pace — and navigate straight to the full detail. Switch to the Activities tab for a chronological list with a weekly summary.

Offline-first

Detailed Analysis

Zoom into any run: route map with auto-fit bounds, kilometre split table with individual paces, elevation gain, and average & peak heart rate — all in one scrollable view.

KM splits

Strava Integration

One-tap OAuth 2.0 connection. Activities are exported as GPX 1.1 and uploaded directly to your Strava profile. Track upload status and disconnect at any time from settings.

GPX 1.1
How it works

Track. Store. Share.

Three layers working together so you never lose a run, even with no connectivity.

01

Track in the background

A persistent foreground service keeps GPS and Bluetooth alive even with the screen off. Live stats — pace, distance, BPM — are broadcast to the UI every second via platform channels.

02

Store locally, always

Every GPS point and heart rate sample is written to SQLite via the Drift ORM — roughly every 3 seconds. Activities are available instantly offline, no cloud sync required.

03

Share when ready

Upload to Strava as a GPX file with one tap, or export a shareable activity card image. Your data stays yours — delete from Strava independently of your local history.

Tech Stack

Built on proven libraries

No bloat. Each dependency earns its place.

🐦

Flutter

Cross-platform UI
🔵

Riverpod

State management
🗄️

Drift ORM

SQLite persistence
📡

flutter_blue_plus

BLE / GATT
📍

Geolocator

GPS streaming
🗺️

flutter_map

OpenStreetMap tiles
⚙️

Background Svc

Foreground service
🔐

Secure Storage

Token storage
🌐

web_auth_2

OAuth 2.0 flow
🚀

Dio

HTTP / Strava API
📤

share_plus

Activity sharing

Material 3

Dark UI system
Roadmap

What's coming next

First Klick is under active development. Here's where we've been and where we're heading.

v1.0 — Shipped

Foundation

  • GPS run tracking with background foreground service
  • BLE heart rate monitor (GATT 0x180D)
  • Intelligent auto-pause via speed hysteresis
  • Activity history with weekly summary
  • Calendar home screen with monthly activity dot-markers
  • Tap-to-preview activity card from calendar day
  • Kilometre splits & elevation gain
  • Strava OAuth 2.0 & GPX upload
  • Share activity as image card
  • Offline-first SQLite storage
v1.5 — In progress

Training Tools

  • Interval training mode with configurable work/rest rounds
  • Voice coaching — real-time audio cues for pace, splits & BPM zones
  • Offline map tile download for connectivity-free trails
  • Export in FIT and TCX formats for Garmin & Wahoo compatibility
  • Apple Watch companion app for wrist controls
  • Customisable metrics layout on recording screen
v2.0 — Future

Advanced Performance

  • AI-powered training plans adapting to your fitness level
  • VO₂ max estimation & training load score
  • Heart rate zone analysis with personalised zones
  • Multiple sport types — cycling, hiking, open-water swim
  • Social leaderboards, segments, and challenges
  • Wear OS companion app
  • Weather-aware run recommendations