Prifina for Developers
  • Docs
  • Getting Data
  • Support
  • Slack
  • Blog
  • Prifina.com

Artificial Huawei Healthkit Data for Software Development

2/28/2023

 
In this post, we are going deeper into the Dynamic Data project, looking at the Huawei dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there are 3 types of data objects: ActivityRecord, DataCollector, and HealthRecord.
Learn more about dynamic data generators and the benefits of artificial data in software development.
Picture

About the data source

Huawei is a company that develops and sells a range of other consumer electronics products such as laptops, tablets, wearables, and smart home devices. Huawei has grown into a global technology giant and is now one of the world's largest providers of telecommunications equipment and smartphones.

Huawei Healthkit is a software development kit (SDK) developed by Huawei that provides developers with access to health and fitness-related data from Huawei wearable devices and smartphones. This data includes information such as step count, heart rate, sleep data, and workout data. The Healthkit API provides developers with a simple and standardized way to access and utilize this data in their own applications, allowing them to create innovative and personalized health and fitness experiences for users. Huawei Healthkit is part of the company's larger ecosystem of software and hardware products designed to enhance the user experience across a range of devices.

Approach used

Huawei provides both an API and SDK to access and mutate user health data. By inspecting the example data and the reference, several JSON objects were constructed and then stored in an NPM package. Each of these JSON objects then had an associated 'Async' version created. The index file of the package imports these data objects and exports them in a collection called “Data”. These mockup files make up the huawei-data package.
ActivityRecord
DataCollector
HealthRecord
The huawei-mockups package imports the files above and goes through each attribute generating artificial (new) data using proprietary functions, such as those found in the utils package.

For example, with the ActivityRecord object:

    

    

Use case ideas

  • Health and fitness tracking apps: ActivityRecord and HealthRecord data objects can be used to track user activities, such as steps taken, distance traveled, and calories burned. This data can be used to create fitness plans and provide personalized recommendations for diet and exercise.
  • Healthcare apps: HealthRecord data objects can be used to track health metrics such as blood pressure, heart rate, and blood sugar levels. This data can be used by healthcare providers to monitor patient health and provide personalized treatment plans.
  • Wearable device apps: The DataCollector data object can be used to integrate data collected from wearable devices, such as smartwatches and fitness trackers, into a health or fitness app.
  • Research and analysis: The Healthkit API data objects can be used for research and analysis purposes, allowing researchers to collect and analyze large amounts of health and fitness data from a diverse population.

Explore entirely new use cases

  • ActivityRecord: The ActivityRecord object can be used to track different types of physical activities such as walking, running, cycling, and swimming. The API provides detailed information about the duration, distance, calories burned, heart rate, and other relevant metrics.
  • HealthRecord: The HealthRecord object can be used to monitor various health parameters such as blood pressure, blood glucose, body temperature, and weight. This data can be used purposes such as tracking progress towards health goals.
  • DataCollector: The DataCollector object can be used to collect and analyze data from various sources such as wearables, sensors, and other devices. This data can be used to gain insights into user behavior, identify patterns, and improve the user experience.

Ideas to combine with some other data sources

  • Calendar API:
    • Fitness Planner: An app that integrates the user's fitness data, such as steps taken and calories burned, with their calendar events to help them plan their workouts around their schedule. For example, the app could suggest a workout routine for the user based on their availability and fitness goals.
    • Health Tracker: An app that tracks the user's health data, such as blood pressure and heart rate, along with their calendar events to help them identify patterns and correlations between their health and their daily activities. This could help the user make lifestyle changes to improve their overall health.
    • Wellness Reminder: An app that sends the user reminders throughout the day to take breaks and engage in healthy activities, such as going for a walk or practicing mindfulness, based on their calendar events and fitness data.
    • Fitness Challenge: An app that allows users to compete with friends and colleagues in fitness challenges based on their Huawei HealthKit data and calendar events. For example, the app could suggest a step challenge during a busy workweek to encourage users to stay active despite their busy schedules.
    • Healthy Habits: An app that helps users build and track healthy habits, such as drinking more water or getting enough sleep, based on their Huawei HealthKit data and calendar events. The app could provide personalized recommendations and progress tracking to help users achieve their goals.
  • Entertainment API:
    • Personalized entertainment recommendations based on user's health data: By combining user's health data with their entertainment preferences gathered from the entertainment APIs, apps can provide personalized recommendations for movies, TV shows, or games that are not only entertaining but also align with the user's health goals.
    • Fitness challenges with rewards: Apps could create fitness challenges where users can compete against each other based on their health data and earn rewards like free subscriptions to entertainment services.
    • Integration with gaming platforms: Apps could integrate with gaming platforms like Twitch to encourage users to take a break from gaming after a certain period of time or when certain health goals are met.
    • Health and wellness education: Apps could use data from the Huawei Healthkit API and entertainment APIs to create educational content on health and wellness topics that are engaging and entertaining.
    • Mood tracking: Apps could use data from the entertainment APIs and Huawei Healthkit API to track user's mood and provide recommendations for activities that are both entertaining and help improve their mood.
  • Financial API:
    • Personal finance management app: This app could help users manage their expenses and track their spending habits. By combining health data with financial data, the app could help users identify patterns in their spending that could be impacting their health.
    • Health insurance app: By integrating Huawei Healthkit data with insurance data, an app could provide personalized health insurance plans to users. For example, if a user has a high level of physical activity and good sleep habits, the app could suggest an insurance plan that rewards healthy behavior with lower premiums.
    • Online shopping app: An app that integrates Huawei Healthkit data with online shopping data could provide personalized recommendations to users based on their health and fitness goals. For example, if a user is trying to lose weight, the app could recommend healthy snacks or workout equipment.
  • Other APIs:
    • Weather API: An app that combines Huawei Healthkit data with weather data can help users adjust their fitness activities based on weather conditions. For example, the app can suggest indoor activities on rainy days or provide reminders to stay hydrated during hot and humid weather.
    • Transportation API: An app that combines Huawei Healthkit data with transportation data can encourage users to walk or bike to work by tracking the number of steps or distance traveled. The app can also suggest walking or biking routes based on the user's fitness level.
    • Social media API: An app that combines Huawei Healthkit data with social media data can help users connect with like-minded people who share similar fitness goals. For example, the app can suggest fitness challenges or group workouts based on the user's interests.
    • Travel API: An app that combines Huawei Healthkit data with travel data can help users maintain their fitness routine while on vacation. The app can suggest local workout facilities, hiking trails, or other fitness activities based on the user's location.
    • Education API: An app that combines Huawei Healthkit data with education data can provide users with personalized health and fitness advice based on their age, gender, and fitness level. The app can also suggest workout routines or healthy eating plans based on the user's preferences and goals.

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

  • Changes to Activity Record faker that fakes all the structure depending on the acitivity type
    • Some Activities already acheive this (as seen in the example) but definitely can be improved
  • More complete data such that the data returned by the dynamic data faker looks completely authentic
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team.

Artificial Garmin Data for Software Development

1/2/2023

 
In this post, we are going deeper into the Dynamic Data project, looking at the Garmin dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there are eight types of data objects: dailiesData,  dailiesDataAsync, epochsData, epochsDataAsync, sleepsData, sleepsDataAsync, pulseoxData, and pulseoxDataAsync.
Learn more about dynamic data generators and the benefits of artificial data in software development.
Picture

About the data source

Garmin is a company that produces a wide range of GPS and navigation products for both consumer and professional markets. Some of their popular products include fitness watches and activity trackers, in-car GPS navigation systems, and handheld GPS devices for outdoor activities such as hiking and cycling. They also produce marine and aviation GPS systems and a variety of wearable technology products such as smartwatches.

In addition to their GPS products, Garmin also offers a variety of other products and services related to fitness, outdoor recreation, and technology. These products are designed to help users track their physical activity and exercise, as well as other health and wellness metrics such as sleep, heart rate, and stress levels. Some of the features offered by Garmin's fitness products include:
  • Tracking of steps taken, distance traveled, and calories burned
  • Heart rate monitoring, including continuous heart rate tracking and heart rate zone alerts
  • GPS tracking for outdoor activities such as running, cycling, and hiking
  • Sleep tracking and analysis
  • Stress monitoring and relaxation techniques
  • Connectivity with other fitness apps and devices, such as the ability to sync data with the Garmin Connect app and other popular fitness apps like Strava

Approach used

Garmin provides an API to connect to the user's data through its Garmin Connect Developer Platform. By inspecting the example data and the reference, several JSON objects were constructed and then stored in an NPM package. Each of these JSON objects then had an associated 'Async' version created. The index file of the package imports these data objects and exports them in a collection called “Data”. These mockup files make up the garmin-data package.
DailiesData
DailiesDataAsync
EpochsData
EpochsDataAsync
PulseoxData
PulseoxDataAsync
SleepsData
SleepsDataAsync
Models Generated With JSON Crack
The garmin-mockups package imports the files above and goes through each attribute generating artificial (new) data using proprietary functions, such as those found in the utils package.

For example, with the EpochsData object:
Static EpochsData Object

    
Artificial EpochsData Object

    

Use case ideas

  • Fitness tracking and coaching apps: These apps could use the dailiesData, epochsData, and sleepsData objects to track and analyze users' physical activity and sleep patterns, and provide personalized recommendations and feedback to help users reach their fitness goals.
  • Health and wellness apps: These apps could use the pulseoxData object to track and analyze users' pulse oximetry data, and provide alerts or recommendations if any potential health issues are detected.
  • Sports and performance apps: These apps could use the epochsData and sleepsData objects to track and analyze athletes' training and recovery patterns, and provide personalized recommendations for optimizing performance.
  • Chronic disease management apps: These apps could use the pulseoxData object to track and monitor the health of individuals with conditions such as sleep apnea or COPD, and provide alerts or recommendations if any potential issues are detected.
  • Nutrition and weight loss apps: These apps could use the dailiesData object to track users' physical activity and caloric intake, and provide personalized recommendations for achieving weight loss goals.
  • Mental health and stress management apps: These apps could use the sleepsData object to track users' sleep patterns and quality, and provide recommendations or techniques for reducing stress and improving mental health.
  • Geriatric health and care apps: These apps could use the dailiesData object to track the activity levels and overall health of older individuals, and provide alerts or recommendations if any potential issues are detected.
  • Environmental monitoring and conservation apps: These apps could use the epochsData object to track users' outdoor activities and environmental exposures, and provide recommendations for reducing environmental impact and promoting conservation.
  • Data Visualization Apps, etc.

Explore entirely new use cases

  • DailiesData: This data object could be used to track and analyze daily activity levels, such as the number of steps taken, the distance traveled, and the calories burned. This data could be used to set and track fitness goals, or to create personalized workout and nutrition plans.
  • EpochsData: This data object could be used to track and analyze activity at a more granular level, by dividing the day into smaller periods of time (called "epochs"). This data could be used to identify trends and patterns in activity levels, or to track progress over time.
  • SleepsData: This data object could be used to track and analyze sleep patterns and quality. This data could be used to identify potential sleep problems, or to optimize sleep schedules for better health and performance.
  • PulseoxData: This data object could be used to track and analyze pulse oximetry data, which measures the oxygen saturation of a person's blood. This data could be used to monitor respiratory health, or to identify potential problems with oxygen delivery to the body's tissues.

Ideas to combine with some other data sources

  • Using Calendar APIs
    • Productivity and time management apps: These apps could use data from both the calendar API and the epochsData object to track how users' time is being spent, and provide recommendations for optimizing productivity and reducing time waste.
    • Personal assistant apps: These apps could use data from both the calendar API and the dailiesData object to track users' schedules and daily activity levels, and provide personalized recommendations and reminders to help them stay on track and meet their goals.
    • Health and wellness coaching apps: These apps could use data from both the calendar API and the sleepsData object to track users' schedules and sleep patterns, and provide recommendations for optimizing both for better health and performance.
    • Environmental impact tracking apps: These apps could use data from both the calendar API and the epochsData object to track users' activities and their associated environmental impacts, and provide recommendations for reducing their carbon footprint and promoting conservation.
  • Using Entertainment APIs
    • Health and wellness apps that incorporate entertainment: These apps could use data from the Garmin API to track users' physical activity and sleep patterns, and use data from entertainment APIs to suggest movies, TV shows, or games that are suitable for watching or playing based on users' current activity levels and mood.
    • Personalized entertainment recommendation apps: These apps could use data from the Garmin API to track users' interests and preferences, and use data from entertainment APIs to provide personalized recommendations for movies, TV shows, or games that users might enjoy.
      Exercise motivation and tracking apps: These apps could use data from the Garmin API to track users' physical activity, and use data from entertainment APIs to provide rewards or incentives for reaching certain activity goals, such as access to exclusive movies or TV shows.
    • Health and wellness-themed entertainment apps: These apps could use data from the Garmin API to track users' health and wellness metrics, and use data from entertainment APIs to provide content that is specifically designed to support health and wellness goals, such as yoga or meditation videos.
  • Using Finincal APIs
    • Personal finance management apps: These apps could use data from the Garmin API to track users' expenses and income, and use data from financial APIs to provide insights and recommendations for optimizing their financial health.
    • Health and wellness expense tracking apps: These apps could use data from the Garmin API to track users' health and wellness-related expenses, such as gym memberships or medical bills, and use data from financial APIs to provide insights and recommendations for reducing costs.
    • Fitness and health goal tracking apps: These apps could use data from the Garmin API to track users' physical activity and health goals, and use data from financial APIs to provide incentives or rewards for reaching those goals, such as discounts on fitness products or services.
    • Health and wellness-themed shopping apps: These apps could use data from the Garmin API to track users' health and wellness needs and preferences, and use data from financial APIs to provide personalized product recommendations and discounts on health and wellness-related products.
  • Other APIs
    • Location-based service recommendation apps that incorporate health and wellness data: These apps could use data from the Garmin API to track users' health and wellness metrics and preferences, and use data from services APIs to provide personalized recommendations for businesses or services that support users' health and wellness goals.
    • Health and wellness-themed games that incorporate fitness tracking: These apps could use data from the Garmin API to track users' physical activity and health goals, and use data from games APIs to provide incentives or rewards for reaching those goals, such as access to exclusive game content or in-game items

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

  • DailiesData:
    • More ActivityTypes values
  • EpochsData:
    • Expanding on ActivityTypes values
    • Expanding on Intensitiy values
  • SleepsData:
    • Expanding on Validation values
  • General:
    • Greater Reliance on Utils Package
    • All data should be sensible, e.g. the data can't show 10000 steps taken in 20 minutes
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team.

Artificial iOS Healthkit Data for Software Development

12/19/2022

 
In this post, we are going deeper into the Dynamic Data project, looking at the iOS Healthkit dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there are nine types of data objects: HKActivitySummary, HKAudiogramSample, HKCharacteristic, HKClinicalRecord, HKElectrocardiogram, HKWorkoutConfiguration, HKWorkoutSession, HKWorkoutRoute, and HKWorkouts.
Learn more about dynamic data generators and the benefits of artificial data in software development.
Picture

About the data source

Apple's HealthKit is a framework that allows developers to create health and fitness apps for the iPhone and iPad. It provides a set of data objects that can be used to represent various types of health and fitness data, including information about a person's physical activity, sleep patterns, nutrition, and medical history.

HealthKit gathers data from a wide range of sources, including sensors in Apple devices, such as the accelerometer and gyroscope, as well as third-party apps and devices that are compatible with HealthKit. For example, a person might use a fitness tracker to track their workouts and sync the data with HealthKit or a sleep tracking app to monitor their sleep patterns and sync the data with HealthKit.

The Apple Health app is a pre-installed app on Apple devices. It integrates with the HealthKit framework, which allows it to gather data from a wide range of sources, including sensors in Apple devices, such as the accelerometer and gyroscope, as well as third-party apps and devices that are compatible with HealthKit.

Overall, HealthKit is designed to provide a centralized repository for a person's health and fitness data, allowing them to track their progress and make informed decisions about their health and wellness.

Approach used

Apple provides developer documentation of the Healthkit framework. By inspecting the vital data, several JSON objects were constructed that are then stored in an NPM package. The index file of the package imports these data objects and exports them in a collection called “Data”. These mockup files make up the ios-health-data package.
HKActivitySummary
HKAudiogramSample
HKCharacteristics
HKClinicalRecord
HKElectrocardiogram
HKWorkout
HKWorkoutConfiguration
HKWorkoutRoute
HKWorkoutSession
Models Generated With JSON Crack
The ios-health-mockups package imports the files above and goes through each attribute generating artificial (new) data using proprietary functions, such as those found in the utils package.

For example, with the HKActivitySummary object:
Static HKActivitySummary Object

    
Artifical HKActivitySummary Object

    

Use case ideas

  • Health tracking app: An app that uses the ActivitySummary, Characteristic, and Workout data objects to track a person's daily activity levels, sleep patterns, and workouts. This app could provide personalized recommendations for improving health and fitness, such as suggesting specific workouts or setting daily activity goals.
  • Medical diagnostic app: An app that uses the HKClinicalRecord and HKElectrocardiogram data objects to store and track a person's medical history and test results. Healthcare providers could use this app to monitor a person's health over time and make treatment decisions.
  • Hearing loss tracking app: An app that uses the HKAudiogramSample data object to track a person's hearing ability over time. This app could be used to recommend seeking a diagnosis for hearing loss and monitor changes in hearing ability.
  • Workout tracking app: An app that uses the HKWorkoutConfiguration, HKWorkoutSession, and WorkoutRoute data objects to track a person's workouts, including the type of activity, duration, intensity, and route taken. This app could be used to monitor a person's progress and set fitness goals.
  • Nutrition tracking app: An app that uses the ActivitySummary data object to track a person's daily activity levels and the HKClinicalRecord data object to track their dietary intake. This app could provide personalized recommendations for improving nutrition and achieving fitness goals.
  • Data Visualization Apps, etc.

Explore entirely new use cases

  • HKActivitySummary: This data object could be used to represent a summary of a person's physical activity over a given period, such as the number of steps taken or the amount of distance traveled. This information could be used to track a person's daily activity levels or to monitor their progress towards fitness goals.
  • HKAudiogramSample: This data object could be used to represent the results of an audiogram, which is a test that measures a person's hearing ability. This information could be used to recommend seeking a diagnosis for hearing loss or to track changes in hearing over time.
  • HKCharacteristic: This data object could be used to represent characteristics of a person, such as their biological sex, blood type, or date of birth. This information could be used to tailor health and fitness recommendations to an individual.
  • HKClinicalRecord: This data object could be used to represent clinical records, such as medical history or lab results. Healthcare providers could use this information to make treatment decisions or monitor a person's health.
  • HKElectrocardiogram: This data object could be used to represent an electrocardiogram (ECG), which is a test that measures the electrical activity of the heart. This information could be used to recommend seeking a diagnosis for heart conditions or to monitor heart health.
  • HKWorkoutConfiguration: This data object could be used to represent the configuration of a workout, such as the type of activity, the duration, and the intensity. This information could be used to track a person's workouts and monitor their progress.
  • HKWorkoutSession: This data object could be used to represent a workout session, including information about the start and end times, the type of activity, and the calories burned. This information could be used to track a person's workouts and to monitor their progress.
  • HKWorkoutRoute: This data object could be used to represent a route taken during a workout, including the distance traveled and the elevation changes. This information could be used to track a person's workouts and to monitor their progress.
  • HKWorkouts: ​This data object could be used to represent a collection of workouts, including information about the type of activity, duration, and intensity. This information could be used to track a person's workouts and monitor their progress.

Ideas to combine with some other data sources

  • Health Tracking Applications
    • Health and productivity tracker: An app that uses data from the Calendar API to track a person's daily schedule and HealthKit data to track their physical activity and sleep patterns. This app could provide insights into how a person's daily habits and routines impact their health and productivity.
    • Health and fitness tracking app with entertainment recommendations: An app that uses HealthKit data to track a person's physical activity and sleep patterns and recommends movies, TV shows, or video games based on their interests and activity levels.
    • Personal finance and health tracker: An app that uses financial data to track a person's spending habits and HealthKit data to track their physical activity and sleep patterns. This app could provide insights into how a person's spending habits and daily routines impact their health and financial well-being.
    • Weather and health tracker: An app that uses weather data to track local conditions and HealthKit data to track a person's physical activity and sleep patterns. This app could provide insights into how weather conditions impact a person's health and suggest activities or workouts based on the weather.
    • Nutrition and exercise planner: An app that uses data from the Calendar API to schedule meals and workouts and HealthKit data to track a person's nutrition and fitness progress.

  • Stress Monitoring Applications:
    • Stress management app: An app that uses data from the Calendar API to track a person's daily schedule and HealthKit data to track their stress levels. This app could provide personalized recommendations for reducing stress and improving overall well-being.
    • Stress management app with entertainment options: An app that uses HealthKit data to track a person's stress levels, and recommends movies, TV shows, or video games to watch or play to help reduce stress.
    • Stress management app with financial tracking: An app that uses HealthKit data to track a person's stress levels, and uses financial data to track expenses and identify potential sources of stress.

  • Travel
    • Health and wellness planner with travel recommendations: An app that uses data from the Calendar API to schedule appointments with healthcare providers and HealthKit data to track a person's health and wellness goals, and uses travel data to recommend destinations and activities based on a person's interests and physical abilities.
    • Fitness and travel planner: An app that uses data from the Calendar API to schedule workouts and HealthKit data to track progress, and uses travel data to recommend destinations and activities based on a person's fitness level and goals.

  • Other
    • Exercise scheduling app: An app that uses data from the Calendar API to schedule workouts based on a person's availability and HealthKit data to track their progress and set fitness goals.
    • Health and wellness planner: An app that uses data from the Calendar API to schedule appointments with healthcare providers and HealthKit data to track a person's health and wellness goals.

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

  • 'Samples' and 'Queries' Implementation is not fully implemented therefore data such as weight, height, etc cannot be fetched.
    • A greater understanding of Swift and iOS by the developer may be needed.
  • Greater Reliance on Utils Package
  • Ensuring that all data is sensible and new/faked data is actually returned
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team.

Artificial Polar Data for Software Development

12/12/2022

 
In this post, we are going deeper into the Dynamic Data project, looking at the Polar dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there are twenty one types of data objects: getActivitySummary, getAvailableSamples, getAvailableSleepTimes, getExercise, getExerciseSummary, getHeartRateZones, getNightlyRecharge, getPhysicalInfo, getSamples, getSleep, getStepSample, getUserInfo, getWebhook, getZoneSample, listActivities, listExercises, listNightlyRecharge, listNotifications, listPhysicalInfo, listSleep, and listTrainingExercises.
Learn more about dynamic data generators and the benefits of artificial data in software development.
Picture

About the data source

Polar (iOS|Android) is a fitness-tracking company offering various models of several fitness watches and sensors. The data traccked from these devices include:
  • Active Time
  • Calories Burnt
  • Steps and Distance
  • Heart Rate
  • Sleep

Polar offers a free app, Polar Flow, on the app stores that analyze the data retrieved from their products. The main features offered by the app are Training and Activity tracking. Training tracking allows the user to create a workout reigment with set goals and targets and analyze their performnce of their training session. Activity tracking shows an overview of the data (calories burnt, heart rate, steps, etc) captured over any 24-hour period.

Picture

Approach used

Polar has an API that grants access to the user's dataset. These requests generate JSON objects that are then stored in an NPM package. The index file of the package imports this data object and exports it in a collection called “Data”. These mockup files make up the polar-data package.
getActivitySummary
getAvailableSamples
getAvailableSleepTimes
getExercise
getExerciseSummary
getHeartRateZones
getNightlyRecharge
getPhysicalInfo
getSamples
getSleep
getStepSample
getUserInfo
getWebhook
getZoneSample
listActivities
listExercises
listNightlyRecharge
listNotifications
listPhysicalInfo
listSleep
listTrainingExercises
Models Generated With JSON Crack
The polar-mockups package imports the files above and goes through each attribute generating artificial (new) data using proprietary functions, such as those found in the utils package.

For example, with the getSamples object:
Static getSamples Object

    
Artifical getSamples Object

    

Use case ideas

  • Health/Fitness Apps
  • Data Visualization apps
  • etc

Ideas to combine with some other data sources

  • Combining with other Health devices to provide greater context towards some data e.g. Fitbit, Garmin, Strava, Oura.
  • Motivational quotes to your screen depending on if the user meets their goals
  • 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

  • Change the format into the standard format for the dynamic data fakers
  • Improve the values generated to be sensible, e.g. Heart Rates are more consistant and realistic
With Prifina developers can use the Dynamic Data Libraries natively in the App Studio to build direct to consumer apps where individuals can run them with their own user-held data.
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team.

Artificial Spotify Data for Software Development

12/5/2022

 
In this post, we are going deeper into the Dynamic Data project, looking at the Spotify dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there is one type of data object: Album, Artist, ArtistRelatedArtists, ArtistTopTracks, Episode, Playlist, Shows, Track, TrackAudioAnalysis, TrackAudioFeatures, and UserProfile.
Learn more about dynamic data generators and the benefits of artificial data in software development.
Picture

About the data source

Spotify (iOS|Android) is the market leader in digital Music Streaming, offering users the option to stream audiobooks, music, and podcasts from Spotify's wide catalogue featuring millions of songs across the genre spectrum. The user can add any song they enjoy to one of their playlists. Additionally, the user can like songs, ablums, artists, and playlists to quickly replay them. AI recommendations are also suggested through Radios (a list of songs similar to the song,artist,album or playlist selected) and Mixes (a daily generated list of songs similar to a group of songs liked in the past). The app is free and ad-supported however, Spotify offers a Premium subscription service that offers the user the option to download music locally for offline listening, ad-free, unlimited skipping, and more.
Picture

Approach used

Spotify has an API that grants access to its entire catalogue of audiobooks, music and podcasts, and the user’s preferences to that catalogue: saved audiobooks, episodes, music, playlist, genres, etc. These requests generate JSON objects that are then stored in an NPM package. The index file of the package imports this data object and exports it in a collection called “Data”. These mockup files make up the spotify-data package.
Album
Artist
ArtistRelatedArtists
ArtistTopTracks
Episodes
Playlist
Shows
Track
TrackAudioAnalysis
TrackAudioFeatures
UserProfile
Models Generated With JSON Crack
The spotify-mockups package imports the files above and goes through each attribute generating artificial (new) data using proprietary functions, such as those found in the utils package.

For example, with the UserProfile object:
Static UserProfile Object

    
Artificial UserProfile Object

    

Use case ideas

  • Entertainment Apps
  • Data Visualization apps
  • etc

Ideas to combine with some other data sources

  • Use with health tracking sensors such as Oura, Whoop. Withings to play/recommend uplifting music when feeling down or depressed, calming music when anxious, etc
  • Use with workout apps such as Fitbit, Oura, Peloton, Runkeeper, Strava to curtail a workout playlist based on the user’s performance whilst listening to certain songs
  • Use with Google Location to suggest songs based on the locality of the user: popular artists originated from the area, most-listened-to albums, songs artists, etc within the area, etc
  • Or with some entirely different segment data, like air quality, weather, location, or similar 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

  • Fully Explore the API, include all possible GET requests endpoint
  • Generate random image urls for artists and albums, similar to picsum for integration into sites
  • Generate random sensible values for TrackAudioAnalysis such as segment, bars, etc
  • Select a selection of available markets instead of returning the full list
  • Return sensible string names instead of a string of random characters
With Prifina developers can use the Dynamic Data Libraries natively in the App Studio to build direct to consumer apps where individuals can run them with their own user-held data.
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team.

Artificial Veri Data for Software Development

11/28/2022

 
In this post, we are going deeper into the Dynamic Data project, looking at the Veri dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there is one type of data object: Meal Activity.
Learn more about dynamic data generators and the benefits of artificial data in software development.
Picture

About the data source

Veri (iOS|Android) is a health tracking company that specializes in tracking how your body responds to different foods. This is achieved by their Continuous Glucose Monitors (CGM) that is applied to the back of the upper arm to measure blood sugar levels. Keeping your blood sugar level within the target range is good to prevent and delay serious health problems. The user can also upload their meal details, sleep and training data. It should be noted however that the CGM made by Veri should be used for medical purposes such as diabetes diagnosis, management or eating disorder diagnosis, etc.

Approach used

Veri provides a data-exporting service that allows the user to export a selection of their glucose values, meals, notes, training, sleep and flow scores. This results in a large CSV file of records, one of which were converted into a JSON object stored in a NPM package. The index file of the package imports this data object and exports it in a collection called “Data”. These mockup files make up the veri-data package
Picture
Models Generated With JSON Crack
The veri-mockups package imports the files above and goes through each attribute generating artificial (new) data using proprietary functions, such as those found in the utils package.

For example, with the mealActivity object:
Static MealActivity Object

    
Artificial MealActivity Object

    

Use case ideas

  • Health/Fitness Apps
  • Data Visualization apps
  • etc

Ideas to combine with some other data sources

  • Use with Genetic Data sources (23andMe and Ancestry) to identify DNA strains related to Blood Glucose and if the results could be effected
  • Pair with other Fitness sources (Fibit, Strava, etc) to identify glucose levels during activities
  • Pair with Dietary apps to recommend specific meals and diets to improve glucose levels
  • 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

  • Wide Selection of Meals and sensible combinations (e.g. Banana and Apple)
  • Appropriate Meal Scores for the selected meals (more nutritious meal will have higher scores)
  • Meal Tag Faker
  • Appropriate Duration for an exercise (more intensive workouts will probably have a lower duration)
  • Appropriate changes in Glucose levels (reduces the spiking effect that may generate in a visualization of the data)
With Prifina developers can use the Dynamic Data Libraries natively in the App Studio to build direct to consumer apps where individuals can run them with their own user-held data.
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team.

Artificial Google Location Data for Software Development

11/21/2022

 
In this post, we are going deeper into the Dynamic Data project, looking at the Google Location dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there are four types of data objects: Activity, Location, Places, Routes.
Learn more about dynamic data generators and the benefits of artificial data in software development.
Picture
Google Logo

About the data source

Google is one of the largest technology companies in the world, with several of their products being market leaders in their space such as YouTube (video sharing), Google.com (Search Engine), Google Maps (navigation), Google Chrome (web browsing), and much more. As a result, the data that Google can harvest from the user, and the user can request back from Google, is some of the richest available. For the purposes of this blog post, we would like to focus on the user's location history.

Google Location History is an opt-in feature of a Google Account that tracks and stores the locations and routes visited, and the movement behavior of the users mobile phone, so long as the user:
  • is signed into their Google Account
  • has Location History enabled in their Google Account
  • has Location Reporting enabled on the device connected to their Google Account
Google then uses this data to enhance their products and services to the user through personalized ads, recommendations, etc. By using Google Maps Timeline, the user can access and view all of their location history data. The user can export their location history through Google Takeout as a collection of JSON objects stored in a .zip folder.
Picture
Example Image of Google Location History

Approach used

As stated in the above section, several JSON objects were exported from Google Takeout and stored in a NPM package. The index file of the package imports these data objects and exports them as a collection called “Data”. These mockup files make up the google-data package
Activity
Location
Places
Routes
Models Generated With JSON Crack
The google-mockups package imports the files above and goes through each attribute generating artificial (new) data using proprietary functions, such as those found in the utils package.

For example, with the Route object:
Static Route Object

    
Artificial Route Object

    

Use case ideas

  • Location Apps
  • Data Visualization apps
  • etc

Ideas to combine with some other data sources

  • Using Fitbit, Whoop, Withings, etc. to show Fitness Stats during location routes
  • Using Uber, to show trip details with the locations visited, routes taken, etc.
  • Or with some entirely different segment data, like air quality, weather 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

  • Proper usage of the utils package
  • Suitable dates recorded for the faked data
  • Reasonable routes/distances
  • Sensible Location data
With Prifina developers can use the Dynamic Data Libraries natively in the App Studio to build direct to consumer apps where individuals can run them with their own user-held data.
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team.

Artificial Peloton Data for Software Development

11/14/2022

 
In this post, we are going deeper into the Dynamic Data project, looking at the Peloton dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there are fourteen types of data objects: AchievementTemplate, AuthDetails, FacebookUserProfile, Instructor, Relationship, Reservation, RideDetails, RideFilter, RideSorts, UserData, UserOverview, UserProfile, UserSettings and WorkoutDetails
Learn more about dynamic data generators and the benefits of artificial data in software development.
Picture

About the data source

Peloton is a fitness company that makes exercise equipment, has an exercise app (IOS|Android) and creates workout videos. The types of equipment sold by Peloton include: Bikes, Treadmills, Rowing Machines, and a AI-powered Guide. Within the app, there are several classes that have workout videos that can be viewed:
  • Strength
  • Yoga
  • Cardio
  • Meditation
  • Running
  • Outdoor
  • Cycling
  • Stretching
  • Tread Bootcamp
  • Bike Bootcamp
  • Walking
During these classes, the user can view their heart rate (if synced with a compatible device), the time left and the current exercise in the workout (e.g., 5 min stretching). After the class, and activity summary page is displayed with the calories burned, achievements earned and heart rate performance.
Picture
Example Peloton Product: Peloton Bike+

Approach used

Peloton has an unoffical API that allows for the retrieval of workout and personal info. Using the API reference, several JSON objects were created and stored from the data types recorded. The index file of the package imports these data objects and exports them as a collection called “Data”. These mockup files make up the peloton-data package
AchievementTemplate
AuthDetails
FacebookUserProfile
Instructor
Relationship
Reservation
RideDetails
RideFilter
RideSorts
UserData
UserOverview
UserProfile
UserSettings
WorkoutDetails
Models Generated With JSON Crack
The peloton-mockup package imports the file above and goes through each attribute generating artificial (new) data using proprietary functions, such as those found in the utils package.

For example, with the Reservation object:
Static Reservation Object

    
Artifical Reservation Object

    

Use case ideas

  • Health/Fitness Apps
  • Data Visualization apps
  • etc

Ideas to combine with some other data sources

  • Combing with other Health/Fitness apps 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

  • General Changes to the Data Fakers as currently they mostly return the static data
With Prifina developers can use the Dynamic Data Libraries natively in the App Studio to build direct to consumer apps where individuals can run them with their own user-held data.
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team.

Artificial Uber Data for Software Development

11/7/2022

 
In this post, we are going deeper into the Dynamic Data project, looking at the Uber dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there are ten types of data objects: ProductDetails, PriceEstimates, TimeEstimates, UserInfo, PaymentMethods, SavedPlaces, RideDetails, RideMapDetails, RideReceiptDetails and Products.
Learn more about dynamic data generators and the benefits of artificial data in software development.
Picture

About the data source

Uber (iOS|Android)is one of the largest ride-hailing apps available. Using the app, the user requests a ride along with the desired destination. The driver will travel towards the riders current location whilst they wait. Once the driver arrives, the rider confirms the drivers identity and travels with the driver towards the destination. After the trip, the rider can rate the trip with a 5-star system and tip the driver. There are several available rides depending on the number of guest riders and any mobility assistance needed. 

There are several other services offered by Uber:
  • Uber Eats: food delivery service
  • Uber Jump Bikes: rent-able electric bikes

Approach used

Uber has an offical API that allows for the retrieval of ride and personal info. Using the API reference, several JSON objects were created and stored from the data types recorded. The index file of the package imports these data objects and exports them as a collection called “Data”. These mockup files make up the uber-data package
PaymentMethods
PriceEstimates
ProductDetails
Products
RideDetails
RideMapDetails
RideReceiptDetails
SavedPlaces
TimeEstimates
UserInfo
Models Generated With JSON Crack
The uber-mockup package imports the file above and goes through each attribute generating artificial (new) data using proprietary functions, such as those found in the utils package.

For example, with the PriceEstimates object:
Static PriceEstimates Object

    
Artifical PriceEstimates Object

    

Use case ideas

  • Travel Apps
  • Data Visualization apps
  • etc

Ideas to combine with some other data sources

  • Combine with other ride-hailing apps like Lyft to achieve a full overview of traveling expenses
  • 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

  • Sensible Display Names
  • Sensible Price for distance traveled
  • Sensible Distance Traveled, i.e. a suitable range of miles traveled that is realistic
  • Greater reliance on 'utils' package
With Prifina developers can use the Dynamic Data Libraries natively in the App Studio to build direct to consumer apps where individuals can run them with their own user-held data.
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team.

Artificial Twitch Data for Software Development

10/31/2022

 
In this post, we are going deeper into the Dynamic Data project, looking at the Twitch dynamic data (library available here on GitHub and at NPM). Opening the library, you’ll see there are fifty-one types of data objects: AllStreamTags, AutoModSettings, BannedUsers, BitsLeaderboard, BlockedTerms, BroadcasterSubscriptions, Categories, ChannelChatBadges, ChannelEditors, ChannelEmotes, ChannelInformation, ChannelStreamSchedule, ChannelTeams, Channels, ChatSettings, Cheermotes, Clips, CreatorGoals, CustomReward, CustomRewardRedemption, EmoteSets, ExtensionAnalytics, ExtensionLiveChannels, ExtensionTransactions, Extensions, FollowedStreams, GameAnalytics, Games, GlobalChatBadges, GlobalEmotes, HypeTrainEvents, Moderators,  Polls, Predictions, ReleasedExtensions, SoundtrackCurrentTrack, SoundtrackPlaylist, SoundtrackPlaylists, StreamKey, StreamTags, Streams, StreamsMarkers, Teams, TopGames, UserActiveExtensions, UserBlockList, UserExtensions, UserSubscription, Users, UsersFollows,
Videos.


Learn more about dynamic data generators and the benefits of artificial data in software development.
Game Directory on Twitch
Game Directory on Twitch

About the data source

 Twitch is one of the largest live-streaming platforms with at least 2.5 million average viewers at any time and approximately 8 million unique streamers each month. The content offered on the platform ranges from Gaming, Music, Sports, Talk Shows, etc. Each channel has their own live chat room where viewers can communicate with each other and the broadcaster. In certain territories, these chat rooms can run events called Predictions which allows the user to gamble channel points, earned through watchtime, on a specific outcome for more points. These points can be used in exchange for several custom channel rewards set out by the broadcaster.

Viewers can give money to the broadcaster through either subscriptions or donations (directly or with ‘bits’). Subscribing to the broadcaster grants the user the ability to watch the stream without ads, and gives the user subscriber emotes uploaded by the broadcaster that can be used in other Twitch chats.

Approach used

Twitch has an offical API that allows for the retrieval of tons of relevant data. Using the API reference, several JSON objects were created and stored from the data types recorded. The index file of the package imports these data objects and exports them as a collection called “Data”. These mockup files make up the twitch-data package
AllStreamTags
AutoModSettings
BannedUsers
BitsLeaderboard
BlockedTerms
BroadcasterSubscriptions
Categories
ChannelChatBadges
ChannelEditors
ChannelEmotes
ChannelInformation
Channels
ChannelStreamSchedule
ChannelTeams
ChatSettings
Cheermotes
Clips
CreatorGoals
CustomReward
CustomRewardRedemption
EmoteSets
ExtensionAnalytics
ExtensionLiveChannels
Extensions
ExtensionTransactions
FollowedStreams
GameAnalytics
Games
GlobalChatBadges
GlobalEmotes
HypeTrainEvents
Moderators
Polls
Predictions
ReleasedExtensions
SoundtrackCurrentTrack
SoundtrackPlaylist
SoundtrackPlaylists
StreamKey
Streams
StreamsMarkers
StreamTags
Teams
TopGames
UserActiveExtensions
UserBlockList
UserExtensions
Users
UsersFollows
UserSubscription
Videos
Models Generated With JSON Crack
The twitch-mockup package imports the file above and goes through each attribute generating artificial (new) data using proprietary functions, such as those found in the utils package.

For example, with the GetUsers object:
Static GetUsers Object

    
Artifical GetUsers Object

    

Use case ideas

  • Social media aggregates
  • Data visualization widgets
  • etc.

Ideas to combine with some other data sources

  • Combine Twitch user data with data collected while using other social media apps (Twitter, Youtube, etc.) for a whole perspective about content creators uploads
  • Create various playlists combining data from various social media data sources (e.g., your favorite exercise playlist, your relaxation playlist, or a playlist of content that should be skipped).
  • Combine with calendar app to showcase how much time is spent watching Twitch
  • Combine Twitch data with other data sources, e.g., your fitness data and build applications that find correlations and send nudges to app users
  • For more inspiration, explore our community’s use-cases and app ideas database.

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

General Improvements:
  • Return sensible data for performance variables (e.g. return a display name for a user that looks sensible/realistic)
  • More reliance on the Utils package
  • API methods might have been deprecated since initial creation of the library, refer to the API reference and fix or delete accordingly.
With Prifina developers can use the Dynamic Data Libraries natively in the App Studio to build direct to consumer apps where individuals can run them with their own user-held data.
Join our Slack community; Liberty. Equality. Data. to brainstorm and collaborate with other app developers, designers, and our team.
<<Previous

    Categories

    All
    23andme
    Ancestry
    Apple
    Dynamic Data
    Fitbit
    Google
    Ios
    Movesense
    Open Source
    Oura
    Peloton
    Polar
    Runkeeper
    Sensor BNO055
    Spotify
    Strava
    Twitch
    Uber
    Use Case
    Veri
    Whoop
    Withings

    RSS Feed

© 2023 PRIFINA INC. ​
Terms of Service
Privacy Policy
About Prifina
  • Docs
  • Getting Data
  • Support
  • Slack
  • Blog
  • Prifina.com