Dev Update February 2019

February has been a quite frenetic month packed with many exciting developments. From the Network side, the team has been working relentlessly on various simulations and testing different topologies. In addition to that, they have been building analytical tools to improve their monitoring of the Network. We have recently upgraded our Network protocol to version 30, which will support Ethereum account based authentication, taking us another step towards fully decentralizing our tech stack. You can see the implementation of the new protocol in our Javascript client library.

We’ve also been working to widen the reach of the Streamr stack. Jarno Marttila from Labs has been working on an integration with IBM’s Node-Red. If you haven’t seen it already, please check it out here.

For those of you with sharp eyes, you will have seen our first Gitcoin bounty calling for submissions for our Python library. Well the work is almost done, and we will be releasing this in MVP form very soon, to help the data science community to utilise our stack.

In the middle of the month, we were at ETHDenver releasing the cool payment distribution side-chain called Monoplasma we developed into the wild for anyone to use. We’ve been really pleased with the reception so far. CoinDesk covered the release, and the Ethereum Foundation also gave it a push.

Dev Update February 2019

Since then, we’ve had interest from many prominent teams and it’s been forked five times already. From our side, there’s still quite a bit of work to do before Monoplasma is fully integrated to our Community Product offering, but having a system where we can easily make micropayments to millions of people ensures Community Products, and the new data economy we envisage, has a great chance of viability.

On the Engine & Editor side, we are really excited to be releasing the new user interface, first mentioned back in December. It is not simply an aesthetic revamp, there will be some substantial UX improvements on offer that will, for example, simplify the overall management of streams and canvases. In addition, the new website will have a revamped developer documentation!

Below are the updates from our developers for February:

Network

  • Implementation of protocol version 1&30 (control layer & message layer)
  • Integrating protocol version 1&30 in java client
  • Update experiments to run metric-nodes only on PCs
  • Add limits for connections per stream
  • Send streams in status with in and out connections
  • Update tracker to store all connections from nodes
  • Write overlay topology algorithm that generates a semi-random Network
  • Integrate overlay topology algorithm into visual simulation tool so generated topology can be visualized and analyzed
  • Diagnose and fix duplicate socket issue between peers (two peers opening sockets to each other simultaneously)
  • Upgrade Broker to work with new protocol version 1&30 by merging and adapting changes from new data API version
  • Gather and process metrics “min/max/avg ages” and “number of hops” in network emulation test
  • Add first version of plotting, update tracker to dump topolog
  • Add calculation of network dimension to simulation tool

Ethereum

  • Implemented the UI for the Monoplasma Demo app
  • Fixed a Firefox-specific web3js’ Content-Security-Policy issue and got my PR merged into web3 repo
  • Prepared Monoplasma demo for ETHDenver on-stage presentation
  • Bancor integration on the Marketplace
  • Ethereum evangelism in form of a workshop at Arcada University of Applied Sciences, Helsinki
  • Working to integrate Ethereum login in java client
  • Signature computation and verification in java client (ongoing)

EEM (Engine, Editor, Marketplace)

  • Started implementing the new Top page for the main site
  • Rebuilt landing page’s frame (main menu, footer; all responsive and nice). It’s going to use CSS grid, no bootstrap anymore
  • Built the new i18n setup for the new landing page
  • Deployment of engine-and-editor, cloud-broker and data-api (new protocol)
  • Add user avatar image backend
  • Add /api/v1/profile/{update,changePassword} REST endpoints
  • Add Stream Status endpoint
  • Grant access method to allow unlimited access granting
  • Marketplace migration, including comprehensive tests. This allows new Marketplace contract to be deployed and link to old marketplace
  • Copy snippet modal and Editor share modal
  • Fix broken live stream preview in production
  • Building some additional custom module and ForEach module
  • Finish historical data upload UI for stream
  • Implement ExportCSV module
  • Started working on Map module
  • Add directional markers and trace paths to the map module
  • Building developer docs in react components and first round of content generation
  • Fixed products listing endpoint that gave duplicated results
  • Fixed replay speed setting in historical mode

DevOps

  • Setup Parity with persistence and tested Parity POA
  • Deploy API-explorer for public access
  • Dynamically add Metrics and alarms to Lx environment
  • Improve Subnet Security Security
  • Cassandra retention policy
  • Laundromat not cleaning up docker containers
  • Document AWS configuration flow

Stay up to date

Get the latest Streamr news and articles delivered to your inbox