We are happy to offer dfuse Streaming Search to developers across the EOSIO ecosystem, empowering them to build the next generation of dapps. This will help to bring the user experience on the blockchain to something closer to Web 2.0.

We have already greatly simplified the ability to retrieve data form the chain through dfuse’s REST and WebSocket APIs, but we wanted to go a step further.

To accomplish this, we now provide a chain-wide cursor for each individual response, allowing your UI to display historical results by paginating or streaming from that point on, in both directions. Forward searches listening to live transactions will also navigate forks and notify you through the undo field, ensuring you have accurate data updates. Don’t forget to check the undo field though!

Let’s walk through a demonstration of the dfuse Streaming Search in action.

Streaming SearchAs you can see above, a query is run and it returns results from *now* backwards through the chain, paginating until you reach the first block.

A common use case is to now listen for new transactions to update your list, like showing incoming transfers for an account in a wallet. This is now possible by using the chain-wide cursor from the top-most element previously returned, and now performing a forward streaming search. This guarantees total continuity in your results; no gaps, no surprises.

This new feature is made possible through the combination of our new GraphQL endpoints and the powerful dfuse Search Query Language. Together these give you the most precise search possible in the EOSIO ecosystem today, with custom-tailored payloads provided by native GraphQL query semantics.

Save bandwidth, shrink latency, save time. Build faster today with dfuse.

As always, we welcome feedback, comments or questions and are excited to support your transition to using dfuse. Please join us in our Telegram channel and let us know how we can make your development experience even better.