Squid SDK

repository·master·Indexed 23 days ago

https://github.com/subsquid/squid-sdk

A TypeScript-based ETL (Extract, Transform, Load) toolkit for blockchain data, supporting Ethereum-like chains, Substrate, and Solana. The SDK provides high-performance data processing with type-safe access to decoded data through various packages, including @subsquid/evm-processor for EVM-compatible chains, @subsquid/evm-stream for fetching block data from the SQD Network, and @subsquid/evm-typegen for generating TypeScript facades from ABIs. It also includes @subsquid/graphql-server and OpenReader for building GraphQL APIs for Web3 data.

Tokens
78.6K
Snippets
135
Records
488
Agent score
79%

What's inside squid-sdk

  1. Overview of @subsquid/util-internal-http-client

    master
    The @subsquid/util-internal-http-client package provides a convenience layer built on top of the standard fetch() API. It is designed to simplify HTTP requests by providing centralized management for common request settings, automatic retries, request timeouts, and integrated logging.
  2. Overview of @subsquid/solana-stream

    master

    The @subsquid/solana-stream package is a Solana block data source. It provides a unified interface to request and fetch Solana block data from two different sources:

    1. Subsquid Network: Optimized data access via the Subsquid infrastructure.
    2. Traditional RPC endpoints: Standard Solana RPC nodes.

    This allows developers to switch between high-performance Subsquid data streams and standard RPC methods using a consistent interface.

  3. Overview of @subsquid/graphql-server

    master
    @subsquid/graphql-server is a thin wrapper around openreader designed to integrate seamlessly with the Squid project structure. It extends the base functionality by adding support for custom request validation and type-graphql resolvers, allowing developers to build sophisticated GraphQL APIs for their Web3 data ETL processes.
  4. Overview of @subsquid/tron-processor

    master
    @subsquid/tron-processor is a specialized package within the Squid SDK designed to act as a data fetcher and mappings executor specifically for TRON blockchain networks. It handles the heavy lifting of retrieving raw data from the TRON chain and executing the user-defined mapping logic to transform that data into a structured format.
  5. Overview of @subsquid/evm-processor

    master
    The @subsquid/evm-processor is a specialized component of the Squid SDK designed for EVM-compatible chains. It serves two primary roles: acting as a data fetcher to retrieve raw blockchain data and as a mappings executor to run the logic defined in your Squid project. It is the core engine that drives the ETL (Extract, Transform, Load) process for EVM-based data indexing.
  6. Use @subsquid/util-internal-json for framework-compliant JSON serialization

    master
    The @subsquid/util-internal-json package provides a toJSON() function designed to ensure that objects are serialized according to the specific JSON serialization conventions used throughout the Squid framework. Use this function when you need to maintain compatibility with Squid's internal data handling and transport layers.