# subquery/subql

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/subquery-subql).**

18,791 stars · 396 forks · TypeScript · GPL-3.0

## Links

- GitHub: https://github.com/subquery/subql
- Homepage: https://subquery.network
- awesome-repositories: https://awesome-repositories.com/repository/subquery-subql.md

## Description

Subql is a blockchain data indexing framework and TypeScript-based indexer used to extract raw blockchain events and transactions and transform them into structured, queryable data entities. It functions as a data API and a tool for building decentralized application backends, providing a query interface for type-safe access to indexed blockchain data.

The project includes an AI-powered query engine that utilizes large language models to translate natural language questions into structured GraphQL queries. This system can orchestrate multi-step queries by breaking down complex requests into sequential data fetches and generating human-readable summaries of the resulting datasets.

The framework covers a broad range of capabilities including blockchain event monitoring, relational entity indexing, and the generation of type-safe classes and interfaces from defined schemas. It supports the deployment of self-hosted indexing nodes via container orchestration for local development and production hosting.

## Tags

### Data & Databases

- [Blockchain Indexers](https://awesome-repositories.com/f/data-databases/blockchain-indexers.md) — Tracks and indexes blockchain events and state changes by transforming raw input into structured records. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/near.html))
- [Blockchain Indexing Frameworks](https://awesome-repositories.com/f/data-databases/blockchain-indexing-frameworks.md) — Offers a high-performance framework for ingesting, structuring, and querying blockchain events and transactions.
- [Data Action Triggers](https://awesome-repositories.com/f/data-databases/data-action-triggers.md) — Defines network events or block headers that trigger specific functions to process and transform incoming data. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/polkadot.html))
- [Blockchain Entity Mappers](https://awesome-repositories.com/f/data-databases/data-formats/blockchain-data-formatters/blockchain-entity-mappers.md) — Transforms raw blockchain blocks and events into optimized entities using custom handler functions. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/stellar.html))
- [Data Schemas](https://awesome-repositories.com/f/data-databases/data-governance-modeling/data-modeling-schemas/data-schemas.md) — Provides definitions and structures that dictate the format and organization of indexed blockchain data. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/starknet.html))
- [Blockchain Data Transformers](https://awesome-repositories.com/f/data-databases/data-transformation-functions/blockchain-data-transformers.md) — Converts raw blockchain data into optimized database entities through custom mapping functions. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/polkadot.html))
- [Blockchain Event](https://awesome-repositories.com/f/data-databases/data-transformation-functions/transformation-chains/blockchain-event.md) — Converts raw blockchain events and logs into optimized entities using sequential custom mapping logic. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/algorand.html))
- [Decentralized Application Backends](https://awesome-repositories.com/f/data-databases/decentralized-application-backends.md) — Provides the data layer for web3 products by managing indexing nodes and hosting processed chain data.
- [Entity Relationships](https://awesome-repositories.com/f/data-databases/entity-relationships.md) — Transforms raw blockchain events into structured entities and relational associations stored in a queryable database.
- [Event-Driven Function Mapping](https://awesome-repositories.com/f/data-databases/event-driven-function-mapping.md) — Executes custom handler logic automatically in response to specific blockchain block headers or transaction filters.
- [Relational Data Modeling](https://awesome-repositories.com/f/data-databases/relational-data-modeling.md) — Implements techniques for organizing blockchain data into structured entities with defined relationships. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/cosmos-osmosis.html))
- [Structured Data Schemas](https://awesome-repositories.com/f/data-databases/structured-data-schemas.md) — Allows the specification of structures and relationships for indexed information to organize the final output. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/ethereum-gravatar.html))
- [Natural Language to GraphQL Translators](https://awesome-repositories.com/f/data-databases/data-governance-modeling/data-modeling-schemas/data-schemas/schema-validated-data-structures/schema-enforced-output-parsers/llm-schema-outputs/natural-language-to-graphql-translators.md) — Uses large language models to translate natural language questions into structured GraphQL queries by analyzing the data schema.
- [Data Querying Interfaces](https://awesome-repositories.com/f/data-databases/data-querying-interfaces.md) — Offers an interactive query interface and playground to retrieve structured information from indexed entities. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/ethereum-gravatar.html))
- [Historical](https://awesome-repositories.com/f/data-databases/data-snapshotting/historical.md) — Tracks the progress of indexed blocks to facilitate the efficient reindexing of partial data subsets.
- [Index Reindexing](https://awesome-repositories.com/f/data-databases/elasticsearch-data-migration/index-reindexing.md) — Allows for the restoration of specific subsets of indexed data by moving data between indices. ([source](https://academy.subquery.network/doc/indexer/welcome.html))
- [Natural Language Querying](https://awesome-repositories.com/f/data-databases/graph-querying/natural-language-querying.md) — Translates natural language prompts into executable GraphQL queries for indexed blockchain data. ([source](https://academy.subquery.network/doc/ai/graphql_agent.html))
- [Real-Time Data Aggregators](https://awesome-repositories.com/f/data-databases/real-time-data-aggregators.md) — Provides capabilities for selecting, filtering, and aggregating processed blockchain data in real-time. ([source](https://cdn.jsdelivr.net/gh/subquery/subql@main/README.md))
- [Self-Hosted Data Nodes](https://awesome-repositories.com/f/data-databases/secondary-indexes/local-indexes/self-hosted-data-nodes.md) — Deploys independent indexing node instances for local data processing and querying. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/stellar.html))

### Artificial Intelligence & ML

- [AI Data Query Interfaces](https://awesome-repositories.com/f/artificial-intelligence-ml/ai-data-query-interfaces.md) — Translates natural language questions into structured GraphQL queries to retrieve indexed blockchain data.
- [Data-to-Natural-Language Summarization](https://awesome-repositories.com/f/artificial-intelligence-ml/data-to-natural-language-summarization.md) — Distills key insights and metrics from large indexed datasets into concise, human-readable natural language summaries. ([source](https://academy.subquery.network/doc/ai/graphql_agent.html))
- [Natural Language Querying Interfaces](https://awesome-repositories.com/f/artificial-intelligence-ml/natural-language-querying-interfaces.md) — Provides a natural language interface that translates English questions into structured GraphQL queries for data retrieval.
- [Multi-Step Query Orchestrators](https://awesome-repositories.com/f/artificial-intelligence-ml/step-based-schedulers/step-execution-engines/execution-step-controllers/sequential-step-orchestrators/multi-step-query-orchestrators.md) — Breaks complex natural language requests into sequential data fetches and merges results from multiple sources into one response.

### Development Tools & Productivity

- [Schema-Driven Code Generators](https://awesome-repositories.com/f/development-tools-productivity/project-scaffolding-config-code-generation/code-generation/schema-driven-code-generators.md) — Automatically generates type-safe TypeScript classes and interfaces from defined entity schemas.
- [Local Filesystem Indexers](https://awesome-repositories.com/f/development-tools-productivity/search-indexing-tools/local-file-indexers/local-filesystem-indexers.md) — Deploys the indexing node and database via containers to build local searchable catalogs of chain data. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/near.html))

### Software Engineering & Architecture

- [Type-Safe Code Generators](https://awesome-repositories.com/f/software-engineering-architecture/interface-definition-languages/type-safe-code-generators.md) — Generates type-safe TypeScript code for data entities from abstract schema definitions to ensure consistency. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/cosmos-osmosis.html))
- [Unified GraphQL Querying](https://awesome-repositories.com/f/software-engineering-architecture/query-optimization/graphql/unified-graphql-querying.md) — Exposes indexed blockchain data through a unified GraphQL endpoint for complex lookups and filtered requests.

### System Administration & Monitoring

- [Blockchain Event Monitors](https://awesome-repositories.com/f/system-administration-monitoring/blockchain-event-monitors.md) — Tracks on-chain activity using custom triggers and mapping functions to respond to network events in real time.

### Web Development

- [GraphQL APIs](https://awesome-repositories.com/f/web-development/graphql-apis.md) — Exposes indexed blockchain data through a flexible GraphQL API for complex lookups and filtering. ([source](https://academy.subquery.network/))
- [GraphQL Schema Definitions](https://awesome-repositories.com/f/web-development/graphql-schema-definitions.md) — Maps internal blockchain data models to a typed GraphQL schema for external querying. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/algorand.html))
- [Contract Type Generators](https://awesome-repositories.com/f/web-development/api-client-generators/type-safe-client-generators/contract-type-generators.md) — Generates TypeScript type definitions from blockchain contract interfaces to ensure type safety during data processing. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/ethereum-gravatar.html))

### DevOps & Infrastructure

- [Local Containerized Orchestration](https://awesome-repositories.com/f/devops-infrastructure/cloud-infrastructure/cloud-computing-serverless/development-deployment-environments/local-containerized-orchestration.md) — Uses container orchestration to launch indexing nodes and databases for local development and testing. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/polkadot.html))
- [Container Orchestration & Deployment](https://awesome-repositories.com/f/devops-infrastructure/container-orchestration-deployment.md) — Provides container orchestration for deploying the indexing engine and database in isolated environments.
- [Local Blockchain Node Hosting](https://awesome-repositories.com/f/devops-infrastructure/local-blockchain-node-hosting.md) — Hosts a local indexing node as a standalone process to simulate blockchain data environments. ([source](https://academy.subquery.network/doc/indexer/quickstart/quickstart_chains/cosmos-osmosis.html))
- [Self-Hosted Infrastructure](https://awesome-repositories.com/f/devops-infrastructure/self-hosted-infrastructure.md) — Supports running indexing projects on self-managed infrastructure or decentralized networks. ([source](https://cdn.jsdelivr.net/gh/subquery/subql@main/README.md))
