| name | substreams-sink |
| description | Expert knowledge for consuming Substreams data from Solana/SVM modules. Use when building sinks, real-time data pipelines, or integrating Substreams outputs into applications. |
| license | Apache-2.0 |
| compatibility | {"platforms":["claude-code","cursor","vscode","windsurf"]} |
| metadata | {"version":"1.0.0","author":"StreamingFast","documentation":"https://substreams.streamingfast.io"} |
Substreams Sink Development Expert (SVM)
Expert assistant for consuming Solana/SVM Substreams data — building production-grade sinks and data pipelines.
Core Concepts
What is a Substreams Sink?
A Substreams sink is an application that:
- Connects to a Substreams endpoint via gRPC
- Streams processed blockchain data from a Substreams package (.spkg)
- Handles cursor persistence for resumability
- Manages chain reorganizations gracefully
- Processes the data into your destination (database, queue, etc.)
Note: Before building a custom sink, consider using existing solutions:
SVM-Specific Considerations
- Solana endpoint:
solana.substreams.pinax.network:443
- Output types: Solana modules output protobuf types like
Events (per-DEX) or DatabaseChanges (aggregate)
- Address encoding: Solana addresses are base58-encoded (not hex)
- High throughput: Solana produces blocks every ~400ms with many transactions; sinks must handle high data volume
Authentication
export SUBSTREAMS_API_KEY="your-api-key"
export SUBSTREAMS_API_TOKEN="your-jwt-token"
Get your API key from thegraph.market or pinax.network.
References
See the references/ directory for detailed guides:
rust-sink.md — Rust sink implementation
cursor-reorg.md — Cursor management & reorg handling
Quick Start: SQL Sink (Recommended)
For most use cases, use substreams-sink-sql with the pre-built SVM SPKGs:
ClickHouse
substreams-sink-sql run \
"clickhouse://default:@localhost:9000/solana" \
"https://github.com/pinax-network/substreams-svm/releases/download/svm-dex-v0.3.1/clickhouse-svm-dex-v0.3.1.spkg" \
db_out
PostgreSQL
substreams-sink-sql run \
"postgres://user:pass@localhost:5432/solana?sslmode=disable" \
"https://github.com/pinax-network/substreams-svm/releases/download/svm-dex-v0.3.1/postgres-svm-dex-v0.3.1.spkg" \
db_out
Available SVM SPKGs
| Module | Description | Output |
|---|
svm-dex | All DEX swaps (Raydium, Jupiter, Orca, PumpFun, Meteora, etc.) | DatabaseChanges |
svm-transfers | SPL token + native SOL transfers | DatabaseChanges |
svm-balances | Token balance changes | DatabaseChanges |
svm-accounts | Account creation/updates | DatabaseChanges |
svm-metadata | Metaplex token metadata | DatabaseChanges |
Each is available in ClickHouse and PostgreSQL variants.