As of today, you can create and deploy a Data Union using the tooling available in Streamr Core. The Data Union framework, now released in public beta, is an implementation of data crowdselling. By integrating into the framework, app developers can empower their users to monetise the real-time data they create. Data from participating users is sent to a stream on the Streamr Network, and access to the pooled data is sold as a product on the Streamr Marketplace. Any revenue from the data product is automatically shared among the Data Union members and distributed as DATA tokens.
Streamr launched the Data Union framework into private beta in October last year, with the Swash app at Mozfest in London. Swash is the world’s first Data Union, a browser extension that allows individual users to monetise their browsing habits. With this public beta launch, we hope to spark the development of even more Data Unions.
What’s new in the public beta release?
If you’ve used Streamr Core before, you might already be familiar with creating products on the Marketplace. With the introduction of the Data Union framework, the ‘Create a Product’ flow now presents two options: create a regular Data Product, or create a Data Union.
Data Unions are quite similar to a regular data product ― they have a name, description, a set of streams that belong to the product, and so on. However, there is one important difference; the beneficiary address that receives the tokens from purchases is not the product owner’s wallet ― instead it is a smart contract that acts as an entry point to the revenue sharing.
The Marketplace user interface guides the user through the process of creating a Data Union and deploying the related smart contract. The Data Union can function even while the product is in a ‘draft’ state, meaning that app developers can test and grow their Data Unions in private, and only publish the products onto the Marketplace once a reasonable member count has been achieved. For the app developer/Product Owner, there are also new controls for: setting the Admin Fee percentage (a cut retained by the app developer/Product Owner), creating App Secrets to control who can automatically join your Data Union, and managing the members of your Data Union.
For all published Data Unions, basic stats about the Data Union are displayed to potential buyers on the product’s page.
Deploying a Data Union
The process of creating Data Unions and integrating apps with them is now described in the relevant section of the Docs library. Here’s the process in a nutshell:
- Make sure you have MetaMask installed, and choose the Ethereum account you want to use to admin the Data Union
- Authenticate to Streamr with that account (creates a new Streamr user), or connect that account to your existing profile
- Create one or more streams you’ll collect the data into
- Go to the Marketplace, click Create a Product flow, choose Data Union
- Fill in the information for the product and select the stream(s) you created
- Click the Continue button to save the product and deploy the Data Union smart contract!
Your empty Data Union has been created! Next you’ll want to integrate the join process and data production into your data source app. The easiest way to accomplish those is to leverage the Javascript SDK, which already includes support for all the Data Union functions. In your app, you’ll want to:
- Generate and store a private key for the user locally
- Make an API call to send a join request (include an App Secret to have it accepted automatically)
- Start publishing data into the stream(s) in the Data Union!
Again, detailed integration instructions are available in the Docs.
So what’s next?
The public beta is feature-complete in the sense that all the basic building blocks are now in place. Over the next couple of months we’ll be addressing any loose ends, such as bringing the DU functionality to the Java SDK and adding tooling for Data Union admins to manage their member base.
We’ll also be monitoring the system closely, in the hope that the public beta phase will help reveal any remaining issues. Please do expect to encounter some hiccups along the way – none of this has been done before! If all goes well during the public beta, we’re looking to officially launch Data Unions in Q3 this year. The launch will be accompanied by a marketing campaign and some changes to the website to highlight the new functionality.
If you have an idea for a Data Union, take a look at the Docs to get started. The Streamr Community Fund is also here to offer financial support to the development of your project – you can apply here. We’re also happy to answer all your technical questions in the community-run developer forum and on Telegram.