{"id":13651420,"url":"https://github.com/centrifuge/go-substrate-rpc-client","last_synced_at":"2025-12-24T09:50:06.437Z","repository":{"id":36415743,"uuid":"190606637","full_name":"centrifuge/go-substrate-rpc-client","owner":"centrifuge","description":"Substrate RPC client for go aka GSRPC","archived":false,"fork":false,"pushed_at":"2024-09-19T13:10:16.000Z","size":2697,"stargazers_count":202,"open_issues_count":44,"forks_count":179,"subscribers_count":22,"default_branch":"master","last_synced_at":"2024-10-30T01:37:04.895Z","etag":null,"topics":["blockchain","golang","rpc","scale-codec","substrate","substrate-rpc-client"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/centrifuge.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-06-06T15:37:27.000Z","updated_at":"2024-10-24T15:05:31.000Z","dependencies_parsed_at":"2023-02-10T10:30:39.032Z","dependency_job_id":"fee8a561-a757-4420-902d-75299e5a1409","html_url":"https://github.com/centrifuge/go-substrate-rpc-client","commit_stats":null,"previous_names":[],"tags_count":41,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/centrifuge%2Fgo-substrate-rpc-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/centrifuge%2Fgo-substrate-rpc-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/centrifuge%2Fgo-substrate-rpc-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/centrifuge%2Fgo-substrate-rpc-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/centrifuge","download_url":"https://codeload.github.com/centrifuge/go-substrate-rpc-client/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223906233,"owners_count":17223045,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blockchain","golang","rpc","scale-codec","substrate","substrate-rpc-client"],"created_at":"2024-08-02T02:00:49.259Z","updated_at":"2025-12-24T09:50:06.431Z","avatar_url":"https://github.com/centrifuge.png","language":"Go","funding_links":[],"categories":["Client Libraries","Go"],"sub_categories":[],"readme":"# Go Substrate RPC Client (GSRPC)\n\n[![License: Apache v2.0](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![GoDoc Reference](https://godoc.org/github.com/centrifuge/go-substrate-rpc-client?status.svg)](https://godoc.org/github.com/centrifuge/go-substrate-rpc-client)\n[![Build Status](https://travis-ci.com/centrifuge/go-substrate-rpc-client.svg?branch=master)](https://travis-ci.com/centrifuge/go-substrate-rpc-client)\n[![codecov](https://codecov.io/gh/centrifuge/go-substrate-rpc-client/branch/master/graph/badge.svg)](https://codecov.io/gh/centrifuge/go-substrate-rpc-client)\n[![Go Report Card](https://goreportcard.com/badge/github.com/centrifuge/go-substrate-rpc-client)](https://goreportcard.com/report/github.com/centrifuge/go-substrate-rpc-client)\n\nSubstrate RPC client in Go. It provides APIs and types around Polkadot and any Substrate-based chain RPC calls.\nThis client is modeled after [polkadot-js/api](https://github.com/polkadot-js/api).\n\n## State\n\nThis package is feature complete, but it is relatively new and might still contain bugs. We advise to use it with caution in production. It comes without any warranties, please refer to LICENCE for details.\n\n## Documentation \u0026 Usage Examples\n\nPlease refer to https://godoc.org/github.com/centrifuge/go-substrate-rpc-client/v4\n\n### Usage test examples of Dynamic Parsing of events \u0026 extrinsics\n[Registry docs](registry/REGISTRY.md)\n## Contributing\n\n1. Install dependencies by running `make`\n2. Build the project with `go build`\n3. Lint `make lint` (you can use `make lint-fix` to automatically fix issues)\n4. Run `make run-substrate-docker` to run the Substrate docker container\n\n### Testing\n\nWe run our tests against a Substrate Docker image. You can choose to run\nthe tests within a tests-dedicated Docker container or without a container.\n\n1. `make test-dockerized`\n    Run tests within a docker container of its own against the Substrate docker container.\n\n2. `make test`\n    Run the tests locally against the Substrate docker container. Note that it expects the\n    Substrate docker container to be up and running to execute the whole test suite properly.\n\n\nVisit https://polkadot.js.org/apps for inspection\n\n**Note**: To use a custom Substrate endpoint, first set the environment variable before running the tests:\n`export RPC_URL=\"http://example.com:9934\"`\n\n### Adding support for new RPC methods\n\nAfter adding support for new methods, update the RPC mocks.\n\n1. Install [mockery](https://github.com/vektra/mockery)\n2. Run `go generate ./...`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcentrifuge%2Fgo-substrate-rpc-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcentrifuge%2Fgo-substrate-rpc-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcentrifuge%2Fgo-substrate-rpc-client/lists"}