Software Development Kits

Build indexers your way

Two TypeScript SDKs for blockchain data. One full-stack framework, one composable library — both powered by Portal.

Squid Full-stack framework
Pipes Composable library
Powered by Portal →

Squid SDK vs Pipes SDK

Two paths from the same data source. One optimized for correctness, the other for throughput.

Portal (streaming)
Rust engine, 200+ chains
.setPortal()portalStream()
Squid SDK
Indexer framework
processor.run(db, handler)
Batch-oriented ETL loop
Reorg handling
Unfinalized blocks, rollbacks
Data sinks
Postgres, BigQuery, S3, CSV
GraphQL API
Auto-gen from schema.graphql
SQD Cloud or self-host
Managed hosting, CLI deploy, or your own infra
Correctness-first
dApp backends, real-time APIs
TypeORM, migrations, schema
Portal retrofitted
EVM + Substrate processors
Status
GA · Production
Battle-tested by the biggest DeFi projects. Actively developed. Deployable to SQD Cloud or self-hosted.
Pipes SDK
Composable data pipeline
query().build().pipe()
Chainable outputs, composable
Named output records
swaps, metaplex, pumpfun…
ClickHouse
S3 / Parquet
Any DB
Materialized views
Pre-aggregated, lowest latency
Your analytics / app
Dashboards, AI agents, APIs
Throughput-first
Analytics at scale, data lakes
No ORM, no schema lock-in
Portal-native from day one
Land anywhere, own your infra
Status
GA · v1.0
Production-ready since v1.0. Battle-tested internally and by major DeFi projects. Self-host only.
Same data source · different paradigm · vertical app stack vs horizontal data infrastructure

Compare the SDKs

Both are production-grade TypeScript tools. The right choice depends on your architecture and deployment needs.

Aspect
Squid SDK
Pipes SDK
Philosophy
Full-stack framework
Composable streaming library
Database
PostgreSQL (built-in TypeORM)
Any — PG, ClickHouse, Mongo, SQLite…
API Layer
Auto-generated GraphQL
Manual / flexible
Deployment
SQD Cloud (sqd deploy)
Self-host — Railway, Docker, any infra
Codegen
Required (sqd typegen)
Optional — defineAbi() from JSON
Fork Handling
Automatic rollback
Automatic rollback
VM Support
EVM, Solana, Substrate, Fuel
EVM, Solana (Substrate planned)
Monitoring
Cloud dashboard
Prometheus + OpenTelemetry + Pipes UI
Maturity
Production-ready
Production-ready (v1.0)

Which SDK should you use?

Answer a few questions to get a recommendation.

Do you need an auto-generated GraphQL API?
Will you use ClickHouse, MongoDB, or a custom database?
Do you want managed cloud deployment?
Do you prefer a zero-codegen setup?
Squid SDK

Full-stack indexing framework

Production-grade indexing with auto-generated GraphQL, built-in PostgreSQL, and managed cloud deployment.

Powered by Portal

Stream data from 200+ chains via SQD Portal with automatic real-time + historical coverage.

EvmBatchProcessor

High-performance batch processing engine. Backfill historical data at tens of thousands of blocks per second.

Auto-generated GraphQL

Define your schema, get a production-ready GraphQL API served automatically. No extra setup.

TypeORM + Migrations

Built-in PostgreSQL persistence with TypeORM entities and automatic schema migrations.

Multi-VM Support

Index data from EVM, Solana, Substrate, and Fuel virtual machines with dedicated processors.

Deploy to SQD Cloud

One-command deployment with sqd deploy. Managed infrastructure, scaling, and monitoring.

CLI Tooling

Configure, scaffold, deploy, and manage indexers from the SQD CLI.

Open-source

Fully open-source framework. Modify and extend as needed.

Pipes SDK

Composable streaming library

Lightweight, flexible data pipelines with any database target and zero codegen overhead.

Powered by Portal

Same blazing-fast Portal data source. Consistent, validated data across 225+ networks.

Query Builder + Outputs

Chainable evmQuery().addLog().build().pipe() pattern with named output records. Composable, readable, testable.

Any Database Target

PostgreSQL, ClickHouse, MongoDB, SQLite, Parquet, or build your own custom target.

No Codegen

Use defineAbi() to get typed events directly from JSON ABIs. Zero build steps, instant type safety.

Contract Factory

Track dynamically created contracts (DEX pools, tokens) with contractFactory() and custom address extraction.

Prometheus + OpenTelemetry

Production-grade observability. Export spans to Jaeger or Tempo, metrics to Grafana, Datadog, or any stack.

Time-Based Ranges

Use ISO dates, Date objects, or block numbers for ranges. Automatic resolution via Portal API.

Scaffolding CLI

npx pipes init — scaffold a project with templates, custom contracts, and ready-to-run code.

Data Source

Two SDKs, one data layer

Both SDKs consume data from SQD Portal — the fastest way to access validated blockchain data across 225+ networks. No archive nodes, no rate limits.

Squid SDK Portal Pipes SDK
Learn about Portal →
Get started

Your blockchain data infrastructure, handled.

Private Portal. Dedicated. Validated. Managed. Tell us what you're building — we'll show you what it looks like on SQD.