Registered by Björn Tillenius

Universal data storage for workouts.

Workout Store aims to be a universal store for workouts made with
various heart monitors, like Polar or Garmin watches. The idea is that
you can import all your workout files, HRM, TCX, TCX, etc. into
Workout Store and have a permanent place for them, no matter which
application or web site you use to visualize and keep track of your
workouts.

Currently Workout Store is quite limited. You can import some basic
information from HRM files and see which workouts you have stored. But
the files themselves are imported as well, and they will be reprocessed
as more information can be extracted from the files. Later it will be
possible to import all information from the workout, from different file
formats. It will also be possible to merge workout information, export
them to files or upload them to web sites.

Workout Store is written in Go. In order to compile it, you need to
goinstall launchpad.net/gocmdctrl, launchpad.net/mgo and
launchpad.net/gobson/bson. After you have have compiled it, you need to
make sure MongoDB is running and listening on the default port. For
Ubuntu, installing the "mongodb" package is enough. The default
configuration will work.

There is a sample HRM file in examples. You can try it out by running:

    > ./workout-store import examples/simple.hrm
    Imported OK

Now you can list it to see that it's there:

    > ./workout-store list
    2011-09-27 21:24:29
      Duration: 00:00:23
      Data points: 5

The file is also there:

    > ./workout-store list-files
    35e5d9b6120355f2e0f7f31df9ecadb9
      Workout: 2011-09-27 21:24:29

Above the MD5 sum of the file is used as an identifier, and you can see
which workouts the file contains.

You might ask yourself, why MongoDB is used, what kind of criteria I
considered when deciding for that. Well, there's a simple reason. I
wanted to have something that made it easy to store structured data. I
considered using sqllite, but MongoDB looks interesting in that I don't
have to worry about defining a schema and map rows and columns to
objects. Basically it seemed like a good excuse to play with a NoSQL
database, and MongoDB seemed easy to use from Go and in Ubuntu.

Project information

Maintainer:
Björn Tillenius
Driver:
Not yet selected
Licence:
Simplified BSD Licence

RDF metadata

View full history Series and milestones

trunk series is the current focus of development.

All code Code

Version control system:
Bazaar
Programming languages:
go, golang

All bugs Latest bugs reported

Get Involved

  • Report a bug
  • warning
    Ask a question
  • warning
    Help translate

Downloads

Workout Store does not have any download files registered with Launchpad.