The only dashboard you need (maybe)
When you have a bunch of data stored far away in a unknown place (aka "The Cloud"), it can be nice to have a way to display that data in a neat and simple way. In addition, since our project focuses on health and training, it is a necessary tool for the "athlete" so he or she can know what is really going on with his body on the fly!
With this as a starting point, we developed the "Visma PT Dashboard", a dashboard (or HUD depending on the device you're on) that displays all relevant health, tracking and performance data that we record in the cloud for a given person during a workout (or during any activity).
The dashboard is a .Net Web App coded from scratch that runs in Azure. It also has a Web API with endpoints for updating the various data displayed. The API is called by various Azure Functions that on their side pulls data from Azure Data Lake Storage and Nokias Health API. By doing all the data storing and processing in Azure Data Lake Storage and Azure Functions, the Visma PT Dashboard is completely disconnected from any major business logic, and that ensures that the uptime is near 100% and is virtually bug free(/s).
When the Azure Functions has pulled the data they need, they call the Visma PT Dashboard API, and SignalR is used to update the data on the dashboard. This means the user never has to refresh the dashboard manually, it is updated instantly when new data arrives from the Azure Functions.
The dashboard contains some basic data about the athlete, as name, weight and height (top row) (ignore the height icon, WIP). The two latter are pulled from the Nokia Health API, and we have a Nokia Body+ Weight scale that automatically synchronizes weight data++ to Nokia Health. The Nokia Health API is called every minute from an Azure Function to get the latest weight and height of the "athlete".
There is also live tracking of the athletes position and altitude (map and bottom row) (and eventually velocity, but this is a feature that comes in Visma PT Dashboard 2.0), and these values are dynamically plotted in to Googles Map API as they come in to the Dashboard via the Visma PT Dashboard API and SignalR.
The athletes body temperature and heart rate is also displayed and dynamically updated (bottom row).
In addition, we display the amount of sweat the "athlete" is currently emitting (read more about that here). (At the top right of the dashboard)
The HUD is of course beautifully engineered to fit any screen (included smart phones), and can therefore be used by athletes as they exercise.
THE STICKMAN aka Jason!
With this HUD/dashboard we hope to get the HUD-badge and the Shiny pixels-badge :)