prai

Raiblocks Python RPC client


Keywords
python, raiblocks, rpc
License
MIT
Install
pip install prai==1.0.0

Documentation

prai 🙏

Raiblocks Python RPC client

Install

A somewhat stable version from pypi:

$ pip install prai

Or the most recent development version from Github:

$ git clone https://github.com/jxub/prai

$ cd prai/

$ git checkout dev

Usage

>>> from prai import Wallet, Account

# creating a wallet with the rai node url
>>> w = Wallet("http://localhost:7475")

>>> w.account_list()
{
    "accounts" : [
    ]
}

>>> w.accounts_create(count=2)
{
    "accounts": [
        "xrb_3e3j5tkog48pnny9dmfzj1r16pg8t1e76dz5tmac6iq689wyjfpi00000000",
        "xrb_1e5aqegc1jb7qe964u4adzmcezyo6o146zb8hm6dft8tkp79za3s00000000"
    ]
}

>>> w.account_balance("xrb_3e3j5tkog48pnny9dmfzj1r16pg8t1e76dz5tmac6iq689wyjfpi00000000")
{
    "balance": "10000",
    "pending": "10000"
}

>>> [from_addr, to_addr] = w.account_list()["accounts"][:2]

>>> w.send(from_addr, to_addr, 10000)
{
    "block": "000D1BAEC8EC208142C99059B393051BAC8380F9B5A2E6B2489A277D81789F3F"
}

# query the same account as before
>>> w.account_balance("xrb_3e3j5tkog48pnny9dmfzj1r16pg8t1e76dz5tmac6iq689wyjfpi00000000")
{
    "balance": "0",
    "pending": "0"
}

Some notes

Prai is a work in progress, so expect some rough edges and stay tuned for updates 🙈.

Roadmap

  • Add some higher-level features, for example a simple e-commerce payment API.
  • Add more validation and tests (ughhh).
  • Add hashing of Rai addrsses to shorter to be better for end-user (??!)

🍻