A Go client library for interacting with Substrate-based blockchains via RPC calls.
Go Substrate RPC Client (GSRPC) is a Go library that provides a type-safe RPC client for interacting with Substrate-based blockchains like Polkadot. It enables developers to query chain data, submit transactions, and handle on-chain events programmatically. The library solves the need for a reliable, production-ready Go interface to Substrate's JSON-RPC API.
Go developers building applications, tools, or services that need to interact with Substrate or Polkadot blockchains, such as wallet backends, block explorers, or decentralized application backends.
Developers choose GSRPC for its comprehensive RPC coverage, type-safe Go bindings, and alignment with the polkadot-js/api patterns, offering a familiar and robust way to integrate Go applications with the Substrate ecosystem.
Substrate RPC client for go aka GSRPC
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements the full suite of Substrate RPC methods for querying chain state, submitting transactions, and accessing runtime metadata, as highlighted in the key features.
Provides generated Go types for Substrate primitives like events and extrinsics, ensuring type safety and reducing runtime errors, which is a core philosophy.
Supports dynamic parsing of on-chain events and extrinsics, allowing flexible handling of runtime upgrades without code changes, as shown in the registry docs.
Includes tests run against a live Substrate node via Docker, ensuring reliability and correctness, as described in the testing section.
The README explicitly states it's 'relatively new and might still contain bugs', advising caution in production, which poses risks for time-sensitive deployments.
Testing requires running a Substrate Docker container, adding development overhead and dependency management, as outlined in the contributing guidelines.
As a newer Go library, it lacks the extensive community, tutorials, and third-party integrations compared to established alternatives like polkadot-js/api.