romainPellerin
eosgo-client
Go

A simple Go wrapper of EOS (eosio) RPC API, and more!

Last updated Apr 5, 2026
27
Stars
6
Forks
3
Issues
0
Stars/day
Attention Score
15
Language breakdown
Go 100.0%
Files click to expand
README

README #

Overview ###

eosgo-client is a simple Go/Golang wrapper for EOS blockchain (https://eos.io).

It wraps the nodeos RPC API and will offer a high level set of API to simplify the development on top of EOS.

Releases ###

  • v0.0.3: implement more eosio contracts (soon)
  • v0.0.2: implements standalone test cases
  • v0.0.1: fully functional wrapper of nodeos RPC API, see https://eosio.github.io/eos/group__eosiorpc.html for detailed specs

Current features ###

Chain API (see rpc/chain.go)

  • get_info
  • get_block
  • get_account
  • get_code
  • gettablerows
  • abijsonto_bin
  • abibinto_json
  • push_transaction
  • push_transactions
  • getrequiredkeys
Wallet API (see rpc/wallet.go)
  • wallet_create
  • wallet_open
  • wallet_lock
  • walletlockall
  • walletimportkey
  • wallet_list
  • walletlistkeys
  • walletgetpublic_keys
  • walletsettimeout
  • walletsigntrx
EOSIO contracts (see rpc/contract.go)
  • newaccount

How to start ###

Configure your own conf file (for exemple test.conf) based on default.conf one with

"NODEPRODUCERNAME":"eosio",               // see eosio/config.ini file, default is eosio     "NODEPUBKEY":"KEY",                       // see eosio/config.ini file,     "ENVEOSSRC_PATH":"YOURPATH/eos",		    // path to your EOS source folder     "ENVEOSGOPATH":"YOURPATH/eosgo-client",   // path to this eosgo-client project     "API_PORT": 8888,                           // nodeos PORT     "API_URL": "localhost",                     // nodeos URL     "API_METHOD": "http",                       // https or https     "LOGGING_MODE": "STDOUT",                   // STDOUT or SYSLOG     "LOGGING_LEVEL": "debug",                   // debug, info or error     "WALLET_NAME":"NAME",                       // your wallet name     "WALLETPRIVKEY":"KEY"                     // your wallet private key     "TRANSACTIONEXPIRATIONDELAY":30           // default 30 seconds
Also, you have to create 2 environment vars in order to load your conf file (see default.conf), in your system:
export EOSGOPATH=/yourpath/eosgo-client/. export EOSGO_CONF=default
or for your IDE (here for a Goland project):
EOSGOPATH=.;EOSGOCONF=test
Then, for example of uses, have a look to rpc/chaintest.go, rpc/wallettest.go and rpc/contract_test.go.

© 2026 GitRepoTrend · romainPellerin/eosgo-client · Updated daily from GitHub