Streamr is a fully decentralised and scalable protocol for many to many data pipelines, network analytics and instant messaging.
The Streamr Network provides a bulletproof pub-sub data transport
layer that allows you to connect your data to the rest of the world.
Watch for a quick overview of how it works.
Bring your data to Streamr in the way that works best for you —
as a JS library within your app, or via MQTT, HTTP or Websocket.
1// Use your favourite language and MQTT library!
2
3// Connect to MQTT plugin on your Streamr node
4mqtt.connect('mqtt://my-streamr-node')
5
6// Publish a message to a stream
7mqtt.publish('mydomain.eth/test', {
8 hello: 'world',
9})
10
11// Or subscribe to a stream of messages
12mqtt.subscribe('mydomain.eth/test', (msg) => {
13 // Handle incoming messages
14})
1// Use your favourite language and HTTP library!
2
3// You'll want to URI-encode the stream id
4const streamId = encodeURIComponent('mydomain.eth/test')
5
6// Publish messages to a stream by POSTing JSON
7// to the HTTP plugin on your Streamr node
8http.post(`http://my-streamr-node:7171/streams/${streamId}`, {
9 hello: 'world'
10})
1// Use your favourite language & Websocket library
2
3// You'll want to URI-encode the stream id
4const streamId = encodeURIComponent('mydomain.eth/test')
5
6// Connect to the Websocket plugin on your Streamr
7// node and send JSON messages to publish them
8const pub = ws.connect(`ws://my-streamr-node:7170/streams/${streamId}/publish`)
9pub.send({
10 hello: 'world',
11})
12
13// Or subscribe to a stream of messages
14const sub = ws.connect(`ws://my-streamr-node:7170/streams/${streamId}/subscribe`)
15sub.onmessage = (msg) => {
16 // Handle incoming messages
17}
1// Run a Streamr node right inside your JS app
2const StreamrClient = require('streamr-client')
3const streamr = new StreamrClient({
4 auth: {
5 privateKey: 'ethereum-private-key'
6 }
7})
8
9// Publish messages to a stream
10streamr.publish('mydomain.eth/test', {
11 hello: 'world',
12})
13
14// Or subscribe to a stream of messages
15streamr.subscribe('mydomain.eth/test', (msg) => {
16 // Handle incoming messages
17})
Streamr is a layer zero protocol for real-time data which powers the decentralised Streamr pub/sub network. Above it, blockchains are used for identity, security and payments, currently Ethereum and xDai. On top is the application layer, including the Data Union framework, Marketplace and Core, and all third party applications.
Real-time data streams are the atomic units of the
Streamr network.
Each stream uses an Ethereum
address or ENS name as its primary
domain.
Explore a few public examples below, via the
Network
Explorer or simply view their live data.
Truly decentralised innovation with real-time data applications is enabled
by Streamr's P2P network and companion blockchain settlement layer.
Whether you want to build a Data Union or get an unstoppable network for your decentralised messaging app data, Streamr offers solutions for many use cases. Jump into the docs and see what you can build today.
The Brubeck milestone allows anyone to run a network node. Full tokenomics don't activate until the next milestone, but Brubeck still allows node operators to earn $DATA. If you're running your own app on Streamr, or you just want to help secure the network, dive in and check it out.
The Data Fund exists to incentivize the Streamr builder ecosystem. With grants up to $50k, it can help to transform your real-time data idea into a built project. Check out the application page or drop by our Discord for any questions.
Pave are building radically simple electric bikes, and rethinking how to move people and their data. From ERC-721 tokens for ownership and bike sharing to light nodes moving metrics on the Streamr Network and unlocking data monetisation for owners, Pave and Streamr are creating the future of personal transport.
A browser extension called Swash has become the world's first digital Data Union. Introduced at Mozfest in London in October 2019, Swash allows users to capture their browsing data, and then sell it in real-time via a Data Union on the data Marketplace, with one‑to‑many micropayments.
A partnership between The World Wide Fund for Nature (WWF) Philippines, UnionBank and Streamr's consultancy partner TX is working on Tracey, an app for fishermen that will use blockchain for documenting and verifying catch and traceability data. The provided data can then be used by financial institutions such as UnionBank to conduct credit assessments to be able to provide micro loans to the fishermen.
As part of the The Trusted IoT Alliance (TIoTA)’s Smart E-Mobility Challenge, Streamr partnered with Bosch Software Innovations and Riddle & Code, on a pilot project that gathered a range of electric vehicle data and shared it openly in real-time. The project was awarded a Silver medal at the TioTA awards.
The DATA token is an ERC-20 token that is used for project governance, to incentivize the Network, delegating stake on broker nodes, and for payments on the Marketplace. It is trading on Uniswap and a range of centralized exchanges. Check out a project profile, Coinmarketcap listing or the token contract.
Streamr provides the real-time data infrastructure of the decentralised web (Web3). Streamr technology is a core service layer which implements an open-source and vendor-neutral publish/subscribe (pub-sub) protocol for transmission of real-time data. The data travels via a global peer-to-peer network, which is scalable, robust, permissionless, and secured by cryptography.
The technology works in tandem with companion blockchains - currently Ethereum, Gnosis, and Polygon - which are used for identity, security, and payments. On top of the network is the application layer, including the Data Union Framework, Marketplace, and all third party applications.
The DATA token is an ERC-20 token used for project governance, to incentivise the Network participants, to delegate stake on Broker nodes, and for payments on the Marketplace and Data Unions.
As our connected world creates and consumes more and more data, it has not been possible to connect the billions of devices worldwide with real-time data via a decentralised network. Meanwhile, today's existing centralised services are subject to a single point of failure and vendor lock in.
Streamr solves these problems by delivering a low latency and secure decentralised broadcast messaging protocol - via a peer to peer (P2P) network architecture. Thanks to this P2P architecture - the network is fault tolerant, resilient to malicious attacks and scales in line with the growth of the network - for scalable many to many real time data pipelines.
The Streamr project was started in 2017 by Henri Pihkala, Nikke Nylund, Risto Karjalainen and Michael Malka.
Streamr is a distributed open-source software project with around 30 key contributors around the world, including both companies and individuals.
Key decisions in the project are made via governance voting using DATA tokens.
We publish updates about Streamr, the ecosystem, node running, and other happenings from the project on the Streamr blog, Twitter, LinkedIn, YouTube, Telegram (announcements only), and Discord community.
You can also sign up for our newsletter to receive important updates directly in your inbox.