Streamr will transition into the open, permissionless and decentralized Brubeck Network on February 24, 2022. The Brubeck Network is now in the pre-launch phase. Developers can now build on the Brubeck Network, or migrate their existing application forward in anticipation of the official launch.

Here are the key details:

  • The launch date for both the Brubeck Mainnet and staking rewards activation is February 24, 2022.
  • Streams that exist on the Corea Network don’t yet exist on the Brubeck Network — you will need to migrate your streams using the Core App.
  • For node runners, a new blog post on February 17th will offer instructions on how to run a node and earn staking rewards.
  • Beta releases of the Streamr JS Client version 6.0.0-beta.2 and the Broker node 31.0.0-beta.2 are available today to download for curious builders.
  • There’s also a beta deployment of the Core UI for Brubeck.
  • streamr.network/core & streamr.network/marketplace will transition to the Brubeck Network on February 24, 2022. After the launch, Corea Network streams, along with the Corea Marketplace, will remain available at corea.streamr.network until May 31st.
  • The Streamr Java client will not be upgraded to Brubeck. Publishing and subscribing to data from practically all programming languages becomes unlocked through the new Broker interface pattern.
  • There are breaking changes in the JS Client between Corea and Brubeck (v5 to v6). These dates may need to be revised at short notice if unexpected technical issues arise.

What’s new in the Brubeck era?

There are three major changes that happen.

  1. Access control to streams is now implemented as smart contracts on the Polygon blockchain. This not only benefits security and decentralization, but also makes access control composable with other smart contracts. There’ll be a follow-up blog dedicated to the new on-chain stream registry.
  2. Light nodes — Applications that use Streamr become nodes in the Network. They participate in propagating messages to their peers inside their own stream topology, just like Broker nodes. Such topologies of light nodes are very scalable and robust.
  3. Broker node interface — The Brubeck Network can be accessed from any programming language using the new HTTP, Websockets, and MQTT plugin interfaces.

How do I transition my app or script to Brubeck?

You must first migrate your streams — the easiest way to do this is to use the migrate tool inside the Core app. You can also simply recreate them manually. Once your streams exists in Brubeck, you will need to update your script or application to use the Streamr JS Client version 6 or above, or use the Broker interface pattern.

Please note that the developer experience contains breaking changes. The main difference to consider is that stream CRUD (create, read, update, delete) operations require a transaction on the Polygon Blockchain and therefore MATIC tokens for transaction fees. This may be sponsored by Streamr in the future, but for now a small amount of MATIC is needed for gas to interact with the stream registry smart contract on Polygon.

As the data transport in the network is now fully decentralized, the message payloads can only stay confidential via encryption. Version 6 and above of the JS Client, as well as Broker nodes from version 31 onwards, encrypt messages in non-public streams by default. When subscribers connect to the stream, a key exchange with the publisher(s) automatically occurs to enable permitted subscribers to decrypt and read the data. There will be a separate blog post detailing the encryption and key exchange mechanisms.

What are Light nodes?

You can think of Light nodes as application nodes. They are simply Streamr nodes that run locally as part of your application instance. You use it exactly like any other library: by importing it to your application and interface with it using function calls.

The Streamr Light node is packaged as a JavaScript library — it is the Streamr Client. It runs in Node.js as well as the browser. If you’re developing in a programming language other than JS, run a Broker node instead and connect your application to it. Checkout our docs on using a Light node. Light nodes don’t participate in mining and staking.

What happens to the old network?

Eventually, the centralised Corea network will be decommissioned. The date of this decommissioning will be no earlier than May 31st, 2022. This means that any website or application that uses Streamr JS Client version 5 and below, or any version of the Java client, may stop working after this date. If you’re a builder that needs more time or just wants to chat — leave us a message on Discord or reach out to us at support@streamr.network.

I use stream storage on my application — What happens to my data?

If you use the historical data storage feature, you may download your data until the Corea Network decommissioning date, May 31, 2022. You can simply do a resend from your stream to download the data. If you’d like to migrate your stream history to the Brubeck Network, please reach out to the team on Discord.

I’m a new builder, what should I start with?

You should build on the Brubeck Mainnet — and you can start right away! Just make sure to use at least version 6 of the JS Client, version 31 of the Broker node, and the Brubeck version of the Core UI.

I own a Data Product or Data Union and have published it to the Marketplace, what happens next?

You should migrate your streams to the Brubeck Network as described above. Your Products and Data Unions are migrated automatically to the Brubeck Marketplace, but unless you migrate your streams and their content to Brubeck, the buyers of your Product won’t be able to access the data.

I’d like to get prepared for running a node and receiving staking rewards, what should I do?

There will be a blog post closer to the launch date explaining how to do it. For those that ran a node in the testnet, it is largely the same process, with the one additional requirement: nodes now need to stake DATA tokens on Polygon to earn rewards. To stake, you just transfer DATA tokens to your node’s address, which is displayed when the node starts. To unstake or withdraw your earnings, you can import your node’s private key to a wallet and simply transfer them out of the node’s address. A separate blog post on February 17th will cover node running and staking in depth.

Lastly, a big thank you to our community and ecosystem partners who have shared this journey with us. Together, we will walk on the Brubeck road, with our final destination in sight — Tatum.