Archived | Use blockchain to track fitness club rewards

Archived content

Archive date: 2019-05-01

This content is no longer being updated or maintained. The content is provided “as is.” Given the rapid evolution of technology, some content, steps, or illustrations may have changed.


Learn how to build an IoT- and blockchain-based application that encourages people to get moving by awarding them digital tokens called fitcoins that can be redeemed for prizes. This app leverages IoT to track user activity while blockchain issues fitcoins that are converted to rewards for every completed exercise.


One of the biggest challenges that fitness clubs face is maintaining members. It is always cheaper to keep existing members than it is to attract new ones. To retain members, some clubs offer loyalty programs, but those are often ineffective because they may not provide enough incentive — for example, future free months or a discount for friends and family. Sometimes, the programs only reward members when they refer friends to the club.

There are a few ways to make these programs more effective, such as:

  • Offering rewards for working out, which incentivizes members to use the facilities
  • Giving members the ability to use their rewards more frequently and for more valuable purchases
  • Providing more visibility into the rewards programs to enhance member trust

With fitcoins, you even add a new feature to loyalty programs: community building. In addition, a fitness club can add new members. For active members, you can simulate those members receiving rewards points, redeeming rewards points, and viewing their rewards points history. Clubs can also inactivate members to simulate members canceling their memberships (which we hope never happens). This creates a whole ecosystem around the club and a sense of community.



  1. Install Hyperledger Fabric and Hyperledger Composer.
  2. Build and deploy the Fitcoin blockchain network.
  3. Build and run the Fitcoin Angular web app.


Find the detailed instructions for this code pattern in the README.