8 unstable releases (3 breaking)
0.4.0 | Mar 17, 2024 |
---|---|
0.3.1 | Dec 29, 2023 |
0.2.1 | Dec 21, 2023 |
0.1.2 | Dec 17, 2023 |
#2 in #nano-currency
170KB
4K
SLoC
nanopyrs
Mid- and low-level access to functions and data types related to the Nano cryptocurrency.
This is, partially, a Rust rewrite of the Python nanopy library. nanopyrs
was initially part of another project, so some behaviors may seem odd.
There is not very much documentation at this time.
Use at your own risk. I cannot guarantee that this library is perfect.
Feature Flags
RPC
RPC functionality is enabled by the rpc
feature, which is disabled by default.
Currently, only the following commands are officially supported: account_balance
, account_history
, account_info
, account_representative
, accounts_balances
, accounts_frontiers
, accounts_receivable
, accounts_representatives
, block_info
, blocks_info
, process
, work_generate
. . . but any other command can be implemented manually with the help of the command()
method of nanopyrs::rpc::Rpc
, and various functions in nanopyrs::rpc::util
.
Camo Nano
Camo Nano functionality is enabled by the camo
feature, which is disabled by default.
Note that Camo Nano is a custom, experimental, and non-standard feature of this library, and is generally not supported by wallets or the wider Nano ecosystem.
See the CAMO-PROTOCOL.md
file for details on the Camo Nano protocol.
When using this library to implement a Camo Nano wallet, make sure to abide by the protocol standards, particularly the minimum-send requirements.
While not likely to significantly change, version one of the Camo Nano protocol should not be considered finalized until version 1.0.0
.
Serde
Serde support is enabled by the serde
feature, which is disabled by default.
Shouldn't this be called 'nanors' since the 'py' in 'nanopy' means Python?
Maybe, but the name "nanors" was taken :(
Licensing
This crate is open source and licensed under the MIT license. See the LICENSE
file for more details.
Credits
This library is heavily inspired by, and partially derived from, the nanopy library, written by npy0.
The Base32 code was copied from the feeless library, written by gak
Dependencies
~3–15MB
~211K SLoC