Skip to content

tormoder/fit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

bd251af · Sep 29, 2024
Oct 1, 2023
Oct 16, 2023
Mar 15, 2016
Oct 1, 2023
Nov 8, 2023
Jan 19, 2023
Oct 2, 2020
Nov 9, 2023
Sep 29, 2015
Jun 23, 2022
Sep 29, 2024
May 3, 2019
Jan 11, 2022
Oct 11, 2015
Apr 2, 2017
Sep 5, 2022
Jan 11, 2022
Oct 7, 2023
Nov 10, 2021
Aug 28, 2016
Jun 26, 2024
Jun 26, 2024
Jan 23, 2023
Jan 23, 2023
Apr 20, 2016
Mar 20, 2016
Oct 13, 2015
Apr 2, 2017
Oct 1, 2023
Dec 11, 2017
May 9, 2019
Oct 1, 2023
Nov 8, 2023
Nov 8, 2023
Oct 1, 2023
Oct 16, 2023
Aug 28, 2016
Sep 29, 2015
Jun 23, 2022
Oct 1, 2023
Jan 19, 2023
Oct 1, 2023
May 10, 2019
Oct 16, 2023
Oct 1, 2023
Sep 5, 2022

Repository files navigation

fit

license GoDoc Build

Note, September 2024: This project is not actively maintained anymore. Please see https://github.com/muktihari/fit for a more modern alternative.

fit is a Go package that implements decoding and encoding of the Flexible and Interoperable Data Transfer (FIT) Protocol. Fit is a "compact binary format designed for storing and sharing data from sport, fitness and health devices". Fit files are created by newer GPS enabled Garmin sport watches and cycling computers, such as the Forerunner/Edge/Fenix series.

The two latest versions of Go is supported. The core decoding package has no external dependencies. The latest release of Go and a few external dependencies are required for running the full test suite and benchmarks.

Latest release: 0.15.0

Version Support

The current supported FIT SDK version is 21.115.

Developer data fields are currently only partially supported. At the moment the decoder parses Developer Data Field Descriptions, Developer Data ID Messages and Field Description Messages. The decoder currently discards developer data fields found in records.

The encoder will currently (silently) ignore anything related to Developer data fields, This also means that encoding will not fail if protocol version 2 is specified for a file header.

Developer data fields support is tracked by #21 and #64.

Features

  • Supports all FIT file types.
  • Accessors for scaled fields.
  • Accessors for dynamic fields.
  • Field components expansion.
  • Go code generation for custom FIT product profiles.

Installation

Using Go modules:

$ go get github.com/tormoder/fit@v0.15.0

Using $GOPATH:

$ go get github.com/tormoder/fit

About fit

Contributors