
I'm releasing Waveschainex 0.1, a first version of Elixir/Erlang client for WAVES blockchain REST API.
Repos and docs
Release commit history
Configuration
Default setting for WAVES nodes API is https://nodes.wavesnodes.com
.
To configure a custom url use the following config setings:
config :waveschainex,
waves_node_url: "YOUR_CUSTOM_URL"
Implemented API methods
All functions are documented, covered by tests and include typespecs.
Address module
balance(client, address, _opts \\ [])
: Account's balancedata(client, address, _opts \\ [])
: Read all data posted by an account using Data Transactionspublic_key(client, address, _opts \\ [])
: Generate a address from public key
Block module
at(client, height, _opts \\ [])
: Get block at specified heightheight(client, _opts \\ [])
: Get blockchain heightlast(client, _opts \\ [])
: Get last block datasignature(client, signature, _opts \\ [])
: Get block for specified Base58 signature
Asset module
balance(client, address, asset_id, _opts \\ [])
: Account balance by given assetbalances(client, address, _opts \\ [])
: Account's balances for all assetsdetails(client, asset_id, _opts \\ [])
: Provides detailed information about given asset
Transaction module
info(client, id, _opts \\ [])
: Get transaction infounconfirmed(client, _opts \\ [])
: Get list of unconfirmed transactions
Node module
status(client, _opts \\ [])
: Get status of the running nodeversion(client, _opts \\ [])
: Get Waves node version
About Elixir
Elixir is a functional programming language with superior concurrency primitives, distributed computation and fault tolerance capabilities based on Erlang/OTP. Personally, I am really happy with my bet on Elixir to build cryptocurrency related apps and strongly recommend to learn more about Elixir and Erlang ecosystem.
Learning resources:
- ElixirConf Jose Valim Keynote
- ElixirConf 2016 Chris McCord Keynote
- Elixir School
- Elixir Crash Course