Popularity
6.2
Growing
Activity
4.9
Stable
269
16
105
Programming language: Go
License: MIT License
Tags:
Third-party APIs
Latest version: v1.0.0
ethrpc alternatives and similar packages
Based on the "Third-party APIs" category.
Alternatively, view ethrpc alternatives based on common mentions on social networks and blogs.
-
aws-sdk-go
AWS SDK for the Go programming language (In Maintenance Mode, End-of-Life on 07/31/2025). The AWS SDK for Go v2 is available here: https://github.com/aws/aws-sdk-go-v2 -
githubql
Package githubv4 is a client library for accessing GitHub GraphQL API v4 (https://docs.github.com/en/graphql). -
openaigo
OpenAI GPT3/3.5 and GPT4 ChatGPT API Client Library for Go, simple, less dependencies, and well-tested -
gostorm
GoStorm is a Go library that implements the communications protocol required to write Storm spouts and Bolts in Go that communicate with the Storm shells. -
ynab
Go client for the YNAB API. Unofficial. It covers 100% of the resources made available by the YNAB API.
CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
Promo
coderabbit.ai

Do you think we are missing an alternative of ethrpc or a related project?
README
Ethrpc
Golang client for ethereum JSON RPC API.
- [x] web3_clientVersion
- [x] web3_sha3
- [x] net_version
- [x] net_peerCount
- [x] net_listening
- [x] eth_protocolVersion
- [x] eth_syncing
- [x] eth_coinbase
- [x] eth_mining
- [x] eth_hashrate
- [x] eth_gasPrice
- [x] eth_accounts
- [x] eth_blockNumber
- [x] eth_getBalance
- [x] eth_getStorageAt
- [x] eth_getTransactionCount
- [x] eth_getBlockTransactionCountByHash
- [x] eth_getBlockTransactionCountByNumber
- [x] eth_getUncleCountByBlockHash
- [x] eth_getUncleCountByBlockNumber
- [x] eth_getCode
- [x] eth_sign
- [x] eth_sendTransaction
- [x] eth_sendRawTransaction
- [x] eth_call
- [x] eth_estimateGas
- [x] eth_getBlockByHash
- [x] eth_getBlockByNumber
- [x] eth_getTransactionByHash
- [x] eth_getTransactionByBlockHashAndIndex
- [x] eth_getTransactionByBlockNumberAndIndex
- [x] eth_getTransactionReceipt
- [ ] eth_pendingTransactions
- [ ] eth_getUncleByBlockHashAndIndex
- [ ] eth_getUncleByBlockNumberAndIndex
- [x] eth_getCompilers (DEPRECATED)
- [ ] eth_compileLLL (DEPRECATED)
- [ ] eth_compileSolidity (DEPRECATED)
- [ ] eth_compileSerpent (DEPRECATED)
- [x] eth_newFilter
- [x] eth_newBlockFilter
- [x] eth_newPendingTransactionFilter
- [x] eth_uninstallFilter
- [x] eth_getFilterChanges
- [x] eth_getFilterLogs
- [x] eth_getLogs
- [ ] eth_getWork
- [ ] eth_submitWork
- [ ] eth_submitHashrate
- [ ] eth_getProof
- [ ] db_putString
- [ ] db_getString
- [ ] db_putHex
- [ ] db_getHex
- [ ] shh_post
- [ ] shh_version
- [ ] shh_newIdentity
- [ ] shh_hasIdentity
- [ ] shh_newGroup
- [ ] shh_addToGroup
- [ ] shh_newFilter
- [ ] shh_uninstallFilter
- [ ] shh_getFilterChanges
- [ ] shh_getMessages
Usage:
package main
import (
"fmt"
"log"
"github.com/onrik/ethrpc"
)
func main() {
client := ethrpc.New("http://127.0.0.1:8545")
version, err := client.Web3ClientVersion()
if err != nil {
log.Fatal(err)
}
fmt.Println(version)
// Send 1 eth
txid, err := client.EthSendTransaction(ethrpc.T{
From: "0x6247cf0412c6462da2a51d05139e2a3c6c630f0a",
To: "0xcfa202c4268749fbb5136f2b68f7402984ed444b",
Value: ethrpc.Eth1(),
})
if err != nil {
log.Fatal(err)
}
fmt.Println(txid)
}