Zcashex
A elixir client library to interact with the JSON-RPC endpoint provided by a Zcash full node.
Note: this project is under active development.
Installation
If available in Hex, the package can be installed
by adding zcashex to your list of dependencies in mix.exs:
def deps do
[
{:zcashex, "~> 0.1.0"}
]
endUsage:
manually:
{ok, pid} = Zcashex.start_link("localhost", 38232, "zcashrpc", "changeme")
GenServer.call(pid, {:call_endpoint, "getinfo"})
// or
Zcashex.getinfoExample result:
{:ok,
%{
"balance" => 0.0,
"blocks" => 1373123,
"build" => "v4.2.0",
"connections" => 6,
"difficulty" => 50.67076107617935,
"errors" => "",
"errorstimestamp" => 1618768136,
"keypoololdest" => 1609001920,
"keypoolsize" => 101,
"paytxfee" => 0.0,
"protocolversion" => 170013,
"proxy" => "",
"relayfee" => 1.0e-6,
"subversion" => "/MagicBean:4.2.0/",
"testnet" => true,
"timeoffset" => 0,
"version" => 4020050,
"walletversion" => 60000
}}Benchmarks:
Benchee.run(
%{
"info" => fn -> Zcashex.getinfo end
},
time: 10,
memory_time: 2,
formatters: [{Benchee.Formatters.Console, extended_statistics: true}]
)Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/zcashex.