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,
Learn more about dynamic data generators and the benefits of artificial data in software development.
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.
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
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:
Use case ideas
Ideas to combine with some other data sources
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
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.