Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/onrik/ethrpc
Golang client for ethereum json rpc api
https://github.com/onrik/ethrpc
ethereum go golang
Last synced: about 14 hours ago
JSON representation
Golang client for ethereum json rpc api
- Host: GitHub
- URL: https://github.com/onrik/ethrpc
- Owner: onrik
- License: mit
- Created: 2017-01-24T09:47:00.000Z (almost 8 years ago)
- Default Branch: main
- Last Pushed: 2024-01-05T10:05:59.000Z (12 months ago)
- Last Synced: 2024-07-31T20:53:14.827Z (5 months ago)
- Topics: ethereum, go, golang
- Language: Go
- Size: 79.1 KB
- Stars: 265
- Watchers: 16
- Forks: 105
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-go - ethrpc - Go bindings for Ethereum JSON RPC API. (Third-party APIs / Utility/Miscellaneous)
- awesome-go - ethrpc - Golang client for ethereum json rpc api - ★ 142 (Third-party APIs)
- awesome-go-extra - ethrpc - 01-24T09:47:00Z|2022-08-11T08:51:26Z| (Third-party APIs / Fail injection)
README
# Ethrpc
[![Tests](https://github.com/onrik/ethrpc/workflows/Tests/badge.svg)](https://github.com/onrik/ethrpc/actions)
[![Coverage Status](https://coveralls.io/repos/github/onrik/ethrpc/badge.svg?branch=master)](https://coveralls.io/github/onrik/ethrpc?branch=master)
[![Go Report Card](https://goreportcard.com/badge/github.com/onrik/ethrpc)](https://goreportcard.com/report/github.com/onrik/ethrpc)
[![PkgGoDev](https://pkg.go.dev/badge/github.com/onrik/ethrpc)](https://pkg.go.dev/github.com/onrik/ethrpc)Golang client for ethereum [JSON RPC API](https://github.com/ethereum/wiki/wiki/JSON-RPC).
Beer for author by Ethereum: 0xf4144308d6D67A1F00a61A596c0eB7B08411344a
#### Usage:
```go
package mainimport (
"log""github.com/onrik/ethrpc"
)func main() {
client := ethrpc.New("http://127.0.0.1:8545")version, err := client.Web3ClientVersion()
if err != nil {
log.Println(err)
return
}
log.Println(version)// Send 1 eth
txid, err := client.EthSendTransaction(ethrpc.T{
From: "0x6247cf0412c6462da2a51d05139e2a3c6c630f0a",
To: "0xcfa202c4268749fbb5136f2b68f7402984ed444b",
Value: ethrpc.Eth1(),
})
if err != nil {
log.Println(err)
return
}
log.Println(txid)
}
```#### Methods:
- [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