Motivational Quotes powered Oura
Have you ever dreamed of training with a wise old Shaolin monk that would give you the right motivational quotes to go pursue your work out? Well, we do not provide this service at Prifina but one of our Community Creator decided to build a widget that would help you in the same way your Shaolin master would.
How does it work?
Nicolas Gonzalez built a widget that uses Oura data to present you motivational quotes that is determined by your health metrics. It uses Oura's readiness score to present its users with different motivational quotes. The Readiness score of Oura takes into account your recent activity, sleep patterns, heart rate, heart rate variability, body temperature and other body signals. The motivational quotes get generated by an API from API Ninja that fetches the quotes and presents you quotes that would push you to work out or to rest depending on your readiness score. For example, if your readiness score is below 74 meaning you are tired or that you slept less that 420 minutes, the quote generator would provide you a quote like "Your eyes water when you yawn because you miss your bed and it makes you sad". The widget also presents you with the most relevant daily active summary so you can have a more detailed analysis of your activity.
How was the widget developed?
The Widget itself is based on the common react component development for a SPA application. Nicolas started this widget by having the idea of using one of Prifina's data sources to keep users' motivated to accomplish their daily health goals. Nicolas had several ideas but decided to go with the one that seemed the most useful to him; reminding the user "how is my physical training going so far?". Starting from there he decided to seek for 3 party APIs that provided motivational quotes as a reference to the previous question. He tried to follow some sort of SOLID principle. However, as a design architect, he did not completely committed to this principle as the project wasn't as big as the projects you would usually use this approach with.
The Experience of Nicolas
You won't learn Kung-fu
The widget might not give you the training a Shaolin master would but it gives you a good representation of how our community creators utilize user held data with the Prifina platform to receive meaningful insights about yourself.
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team to build inventive application and widgets that uses user held data.
In this post we are going deeper in the Dynamic Data project, looking at the Oura Ring dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there are three different types of data files: ActivitySummary, SleepSummary and ReadinessSummary
Learn more about dynamic data generators and benefits of artificial data in software development.
About the data source?
Oura Ring is a smart ring (fitness tracker) that fits on the users finger, that monitors several metrics:
3 separate mockup files were created for the 3 different data objects:
The oura-mockups package imports the aforementioned files and goes through them generating (artificial) new data using proprietary functions, such as those found in the utils package.
For example, with the ReadinessSummary object:
Use Case Ideas
Explore entirely new use cases
Ideas to combine with some other data sources
Combing with other Health devices to provide greater context towards some activities e.g. Fitbit, Garmin, Strava, Whoop.
Or with some entirely different segment data, like air quality, weather, location or similar to find interesting new applications for the data.
Open Source data library
We welcome contributions and forks to this data set, and look forward to seeing what developers build in our Liberty. Equality. Data Slack channel.
Considerations for next version/improvements
Join our Slack community; Liberty. Equality. Data. - to ideate and collaborate with other app developers, designers, and our team.