Our hack involved an integration for two protocols we are quite excited about: Superfluid, and Ethereum Push Notifications Service (EPNS). Superfluid allows for money streams to be sent and received; however, users must either manually keep an eye on their stream balances, leading to insolvent streams to be cancelled or use their email based notification service. We spotted the opportunity to incorporate the EPNS protocol directly with the superfluid app. We reached out to the Superfluid team who were very helpful and keen to get EPNS effectively integrated with their protocol. They outlined their ideal notification functionality and we hope to be able to add our finished button and logic to the Superfluid frontend in order to subscribe to the EPNS channel. To enable web2-like functionality within superfluid, users can enrol with EPNS - we have created a small button to plug directly into the Superfluid front-end to provide this functionality - and never have to worry about their balances again. We have created notifications for: Low balance alerts (insolvent streams) New incoming stream Cancelled outgoing stream Cancelled incoming stream We hope that this functionality will improve the UX of one of the protocols we are the most excited about.

Superfluid EPNS showcase

How it's made

We developed a lightweight node server to poll the blockchain listening for certain events. Superfluid emits events to the blockchain as streams are created, updated or ended and so our server processes these events and pings the EPNS contract in order to send notifications to users (also in the form of a blockchain event) who are subscribed to our EPNS channel which was created via the EPNS staging app.

Technologies used