Fitness Data Tracking App

Integrated fitness data tracking app for 14 different activity tracking APIs (wearables) with a gamified incentive system

Challenge

One of our clients wanted to develop
a completely new product in their
portfolio. They came to us with an
interesting dilemma and needed to
gather data from multiple wellness
devices into one app. We were faced
with the choice between building a
custom connector for each device’s
API or using a service that gathers
data in one place.
The challenge from the development
side was to build a multi-tenant
application with 14 tracking API
integrations that had a customized
look and feel for each tenant. Having
an individual integration point per
tenant per API meant that we would,
for example, for 10 clients/tenants
have 140 API accounts/endpoints to
maintain with all the activities and
data processed in real time.

Solution

We decided to create a single point
of integration for all tenants and for
all APIs. This allowed the client to
easily add new tenants assigning
them custom/branded UI and
functionalities.
The app was designed to collect user
activities (steps, sleep, exercise …)
and then use that data for an internal
gamified incentive system with the
ultimate goal to motivate people
to engage in physical activity. The
application offers different kinds of
challenges (group and individual).
Most of the challenges are designed
to have some context that will
motivate people to become more
active. All activities are processed
in real time and the results of any
challenge are available immediately.
The user is able to use most of the
tracking devices available on the
market.

benefits

By creating a single point of integration
for all tenants and for all APIs we
drastically reduced the API integration
maintenance effort and reduced the
effort needed to add new tenants.
We built a queue supported platform
with real time processing of activity
data in order to minimize race
conditions issues. By doing so the
app is completely scalable, with the
dedicated processing of activities
in order to improve performance
and manage the increase of traffic –
meaning, the client is able to add even
more devices as they introduce it to
the market.