Skip to main content
The Portal integration for Ponder is in beta. Report bugs and feedback in the portal-ponder issue tracker.
@subsquid/ponder is a distribution of Ponder that can fetch historical data from SQD Portal. It keeps Ponder’s handlers, schema, virtual modules, database, API layer, and CLI. Set portal on a chain to use its Portal dataset for historical backfill:
Portal serves the backfill as an ordered HTTP stream. Your RPC remains configured for realtime indexing, chain setup, readContract, and any interval beyond Portal’s current finalized head.

What changes

Stock Ponder@subsquid/ponder
Historical backfillJSON-RPCSQD Portal, with RPC fallback at a finality gap
RealtimeJSON-RPCJSON-RPC by default
Chain setup and readContractJSON-RPCJSON-RPC
Handlers, schema, and CLIunchangedunchanged
The historical path supports logs, factories, transactions, receipts, traces, block intervals, and accounts. Dataset capabilities vary by network and block range. Check the EVM network list before migrating a source that needs traces or receipts.

Why use it

In the repository’s full-history Ethereum benchmark, the Portal-backed fork completed in 1,819 seconds and stock Ponder completed in 6,543 seconds over a metered RPC endpoint on the same host. The Portal run was 3.6x faster. A separate 15-chain Euler V2 run indexed 28,405,932 events in 51 minutes 47 seconds against dedicated Portal capacity with zero external RPC calls. These are results from the published workloads, not a general speed estimate. See Benchmarks and validation for the conditions and correctness evidence.

Start here

Quickstart

Run the repository’s Ponder and Portal example, then inspect its result.

Migrate an app

Move an existing Ponder app to the Portal-backed package.

Examples

Run factory, multichain, receipt, trace, block, and account sources.

Configuration

Configure Portal access, memory, metrics, and experimental realtime.