Christopher Kocurek

August 29, 2022

Turn Smart Contracts into APIs with hal Streams

With our newest product, hal Streams, it’s easier than ever for developers to turn raw blockchain data into events that they care about and can use.

hal Stream

At hal, we are on a mission to improve Web3 automation and ease blockchain accessibility. The hal Collective wrote the Gluing Manifesto in 2020 to demonstrate how the growth of decentralized global networks like Ethereum could be accelerated with “Gluers” that read and forward signed statements from decentralized to centralized technologies like your AWS, or vice versa. With our newest product, hal Streams, it’s easier than ever for developers to turn raw blockchain data into events that they care about and can use. Think about it like a reverse oracle.
When setting up a new product integration where a Web3 state change needs to update something in centralized infrastructure, the first challenge every team faces is actually making use of the blockchain data. Why? Because pulling raw data off a node gives you a messy batch of JSON. Ingesting that into your tech stack is like pouring crude oil into a car’s gas tank.
Bjorn Gunnarson, hal’s Head of Engineering, gave a ballpark estimate that a lone developer with competence in required languages, would take roughly two weeks to set up the backend as well as scripts to filter and format data to make it useful. Using the gasoline to crude oil analogy, this would reflect that one person has found a valuable resource and has had to spend significant resources to filter it into something that can power the machine they need to use every day.
Ingesting meaningful blockchain data into centralized systems is a critical step for almost all Web3 development. Instead of spending weeks on custom solutions that aren’t efficient to scale, developers can now use hal Streams to turn real-time blockchain into events that are relevant to their needs.
hal Streams ingests block data, filters and formats, and sends it to you via API
Here are some examples of how hal Streams can benefit different Web3 industries.
NFT marketplace: Create streams to track NFT minting, price variations (based on on-chain data), and transfers. Hal Streams provides an API so you can focus on building the NFT dashboard frontend to show the data and interact with the NFTs (place a bid, do a sell offer or purchase an NFT).
DeFi: If you are doing algorithmic trading or financial analysis on what’s happening on a DeFi dApp or community, you can just set up a hal Stream collecting relevant data. We collect the relevant data, filter it and store it so you can focus on what adds value: AI & financial analysis.Analytics: With hal Streams, you can watch anything you want on any blockchain we support. This includes contracts, wallets, or transaction types. If you need to pick up particular data for analytical reasons (such as watching whale wallets), you can get this data within minutes from the hal Streams API. Our Streams API gives blockchain data engineers a powerful out-of-the-box solution to create your own blockchain data feeds. In a nutshell: data collecting, filtering and storing is done by hal Streams for you, and you can stay focused on data transformation and analytics visualization.
Backend-less Web3 application: With hal Streams you can create frontend applications that read and interact with blockchains using hal Streams API as backend instead of building your own (saving a lot of time and focusing on your app’s distinctive features). For example, if you are building a web wallet showing users’ specific activities, you can create and read a stream with hal, instead of building a backend that saves data and queries nodes.
Select your data source type with hal Streams easy-to-use interface.
The use cases of hal Streams are limitless and it’s so, so easy to use. This tool lets people with only a basic understanding of the EVM turn raw blockchain data into meaningful events that can be ingested into their tech stack.
How easy is it to use?
With hal Streams, setup is as simple as 1-2-3. In your Blueprint, you’ll choose your Stream Source Type, Filter, and then Deploy. If you know what you want and have the required ingredients (contract address, functions and parameters you care about), this process could take as little as three minutes (yes, we timed it.)
Now it’s up to you to ingest and use the data according to your needs.
Sounds amazing, right? :D
If you’re curious to learn more about hal Streams, you can start by reading our docs here. We’ll be updating our website to talk more about how this product can help Web3 developers very soon. We also have some neat tutorials for you to check out.
Right now, you can try hal Streams for free. Just visit to get started.
We want to hear your feedback! What did you like? What else would you like to see? In our mission to democratize access to blockchains, hearing from the people building the future of Web3 is most important. We’d love to hear from you on our Twitter, Telegram, or Discord.
Stay tuned for more exciting news from hal!