Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Core Libraries Overview

tiders-core is a Rust workspace that provides the high-performance engine behind tiders. It handles data ingestion, ABI decoding, type casting, encoding, and schema definitions.

The Python SDK calls into these libraries via PyO3 bindings.

Crates

CratePurpose
tiders-ingestData provider orchestration and streaming
tiders-evm-decodeEVM event and function ABI decoding
tiders-svm-decodeSolana instruction and log decoding
tiders-castArrow column type casting (blockchain-aware)
tiders-evm-schemaArrow schema definitions for EVM data
tiders-svm-schemaArrow schema definitions for SVM data
tiders-queryQuery execution and filtering
tiders-coreRe-export crate aggregating all of the above
tiders-core-pythonPyO3 Python bindings

Dependency Graph

tiders-core (re-exports)
├── tiders-ingest
│   ├── tiders-evm-schema
│   ├── tiders-svm-schema
│   └── tiders-rpc-client (optional, for RPC provider)
├── tiders-evm-decode
├── tiders-svm-decode
├── tiders-cast
└── tiders-query

Rust API Reference

Auto-generated API documentation for all crates:

Python API

The tiders_core Python module exposes these functions directly:

FunctionDescription
cast(), cast_schema()Cast columns using a name-to-type mapping
cast_by_type(), cast_schema_by_type()Cast all columns of one type to another
hex_encode(), prefix_hex_encode()Hex-encode binary data
base58_encode(), base58_encode_bytes()Base58-encode binary data
evm_decode_events()Decode EVM log events
evm_decode_call_inputs(), evm_decode_call_outputs()Decode EVM function calls
evm_signature_to_topic0()Compute topic0 hash from event signature
svm_decode_instructions(), svm_decode_logs()Decode Solana data
ingest.start_stream()Start a streaming data ingestion pipeline