zponder
v0.9.0
Published
Production-grade EVM event indexer written in Zig — index any contract on any EVM chain, with REST + GraphQL APIs
Maintainers
Readme
zponder
Production-grade EVM event indexer written in Zig. Index any smart contract on any EVM-compatible chain. Ships with REST API, GraphQL API, and built-in Playground.
npm install -g zponderQuick Start
# Interactive setup wizard
zponder init
# Start indexing
zponder -c config.tomlFeatures
- High Performance — native binary, zero runtime dependencies, < 3MB
- Multi-chain — Ethereum, BSC, Polygon, and any EVM chain
- Multi-storage — SQLite, RocksDB, or PostgreSQL
- REST API — paginated event queries, Prometheus metrics, health checks
- GraphQL API — full schema with contracts, events, sync state, eth_call
- GraphQL Playground — built-in zero-dependency IDE
- Factory Contracts — auto-discover and index child contracts
- Rate Limiting — token-bucket for both REST and GraphQL
- Reorg Detection — automatic fork detection and rollback
Storage backends
The npm binaries are built sqlite-only (-Drocksdb=false -Dpostgres=false) so
they run on any machine without a matching librocksdb / libpq. Setting
database.type = "rocksdb" (or "postgresql") with these binaries fails fast at
startup with a clear error instead of a dynamic-loader crash.
Need RocksDB or PostgreSQL? Build from source with the backends enabled (see below); both are on by default there.
Platforms
Pre-built binaries for:
| OS | Arch | Status | |----|------|--------| | macOS | arm64 (Apple Silicon) | Included | | macOS | x64 (Intel) | Build from source | | Linux | x64 | Build from source | | Linux | arm64 | Build from source |
Build from Source
git clone https://github.com/chy3xyz/zponder.git
cd zponder
zig build -Doptimize=ReleaseFast # 三种后端全开(默认)
zig build -Doptimize=ReleaseFast -Drocksdb=false -Dpostgres=false # sqlite-only
./zig-out/bin/zponder -c config.tomlRequirements: Zig 0.17.0+, sqlite3; rocksdb / libpq are
only needed for the default build — pass -Drocksdb=false -Dpostgres=false to skip them.
