🚀 EVM Crawler beta is here! 🚀

Own Your Blockchain Data - Live, Historical & Custom State Modeling

Run a self-hosted TypeScript apps with automatic chain reorg support - deliver live and historical blockchain events over HTTP, WS, or IPC, tailored to your custom state models.

Works on
nodejs-logo-svgbitcoin-logo-svgethereum-logo-svg
import { bootstrap } from '@easylayer/evm-crawler';
import Model from './model.ts';
bootstrap({
Models: [Model]
}).catch(console.error);
import { BasicEvent, EventBasePayload, Model, Block } from '@easylayer/evm-crawler';
export class CustomEvent<T extends EventBasePayload> extends BasicEvent<T> {}; // Define your custom event
export default class CustomModel extends Model { // Create your model
constructor() {
super('uniq-model-id'); // This ID will be used to fetch events and state
}
public async parseBlock({ block }: { block: Block }) {} // Maps custom events from block - user defines which data they need
private onCustomEvent({ payload }: CustomEvent) {} // Updates model state when custom event occurs
}
Self-Hosted & Private

Deploy entirely on your own infrastructure: the EventStore supports SQLite for quick setups or PostgreSQL for production workloads. Your data never leaves your servers.

Learn more
2 RPC Calls per Block

The crawler fetches full block data with just 2 RPC requests, keeping node load low and reducing operating costs.

Learn more
Reorg-Proof Consistency

Automatic fork handler rolls back and replays data for chain reorganisations of any depth-no manual intervention required.

Learn more
Live & Historical Streams

Sync the entire chain history once and keep a continuous real-time feed through the same endpoint for dashboards or alerts.

Learn more
Custom State Models

Define only the states you need in a custom model file. Smaller datasets, faster queries, and lower storage overhead.

Learn more
Instant Block Snapshots

Request the exact state of any model at a specific block height with a single call-ideal.

Learn more
Built-In API & Transports

REST for simplicity, WebSocket for event pushes, IPC for desktop apps. The server launches automatically-no hand-written controllers or middleware needed.

Learn more
Bitcoin & EVM Ready

Bundled crawlers support Bitcoin forks and all EVM-compatible chains; extend to new networks with minimal configuration.

Learn more

How does it work? 🧐

Define your state Model to transform on‑chain data into domain events, configure your Event Store (PostgreSQL or SQLite) and blockchain self Node or provider. EasyLayer will handle everything else automatically.

Use Transport to get your domain state object at any block height or subscribe to real-time events with guaranteed at‑least‑once delivery, and replay historical events from any blockchain height for recovery, auditing and full transparency.

React

Not sure where to begin?

Browse our examples to see EasyLayer in action and gather ideas for your next project.

Bitcoin Top Addresses by Balances ✅

A simple example of how to monitor a bitcoin top addresses balances

easylayer GitHub profile pictureeasylayer

Bitcoin Network Fees Analytic 🔗

A simple example of how to load a bitcoin network fees for analytic

easylayer GitHub profile pictureeasylayer

EVM Gas Price Monitoring 🤖

A simple example of how to monitor a evm gas price

easylayer GitHub profile pictureeasylayer

Stay up to date 📬

Subscribe to get timely updates on new releases, bug fixes, and all the latest EasyLayer news.

⚡ Roadmap ⚡

From Idea and Concept to Implementation and Expansion

🚧 In Progress
  • Testing and improving @bitcoin-crawler and @evm-crawler. 
    #1
⏳ Coming Soon
  • Release stable versions of @bitcoin-crawler and @evm-crawler, ready for developers to use. 
    #100

Frequently asked questions

For anything not covered here, join our Forum!