Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cambiatus/eosrpc-elixir-wrapper

EOSRPC API Wrapper for Elixir
https://github.com/cambiatus/eosrpc-elixir-wrapper

elixir eos eos-sdk eosio eosrpc-apis

Last synced: 29 days ago
JSON representation

EOSRPC API Wrapper for Elixir

Awesome Lists containing this project

README

        

# EOSRPC

[![Build Status](https://travis-ci.org/BeSpiral/eosrpc-elixir-wrapper.svg?branch=master)](https://travis-ci.org/BeSpiral/eosrpc-elixir-wrapper)
[![Hex.pm](https://img.shields.io/hexpm/v/eosrpc.svg)](https://hex.pm/packages/eosrpc)

Simple EOSRPC Wrapper for Elixir.
Based on [EOS RPC Official Docs](https://developers.eos.io/eosio-nodeos/reference)

## Installation

```elixir
def deps do
[
{:eosrpc, "~> 0.6.0"}
]
end
```

You need to setup the Chain, Wallet and Account History URLs. This is the default configuration:

```elixir
config :eosrpc, EOSRPC.Wallet,
url: "http://127.0.0.1:8999/v1/wallet"

config :eosrpc, EOSRPC.Chain,
url: "http://127.0.0.1:8888/v1/chain"

config :eosrpc, EOSRPC.History,
url: "http://127.0.0.1:8888/v1/history"
```

## Examples

Autosigning and pushing a transaction.

```elixir
actions = [
%{
account: "eosio.token",
authorization: [%{actor: "eosio.token", permission: "active"}],
data: %{issuer: "eosio", max_supply: "10000.00 LEO"},
name: "create"
}
]

EOSRPC.Helper.auto_push(actions)
```

Creating a new account `leo` under the owner `eosio`

```elixir
EOSRPC.Helper.new_account("eosio", "leo", "EOS_OWNER_PUB_KEY", "EOS_ACTIVE_PUB_KEY")
```

All of the EOSRPC APIs are in `EOSRPC.Wallet`, `EOSRPC.Chain` and `EOSRPC.History`

For complete transactions signature and submission flow examples check `EOSRPC.Helper`

## License

This project is licensed under the GNU GPLv3 License - see the [LICENSE](LICENSE) file for details