6 releases
0.13.4 | Jan 24, 2024 |
---|---|
0.0.4 | Oct 31, 2023 |
0.0.3 | Apr 17, 2023 |
0.0.0 | Mar 23, 2023 |
#53 in #kaspa
63 downloads per month
Used in 7 crates
(5 directly)
2MB
42K
SLoC
Kaspa Wallet Core - Multi-platform Rust framework for Kaspa Wallet.
This framework provides a series of APIs and primitives to simplify building applications that interface with the Kaspa p2p network.
Included are low-level primitives
such as UtxoProcessor
and UtxoContext
that provide
various levels of automation as well as higher-level
APIs such as Wallet
,
Account
(managed via
WalletApi
trait)
that offer a fully-featured wallet implementation
backed by a multi-platform data storage layer capable of
storing wallet data on a local file-system as well as
within the browser environment.
The wallet framework also includes transaction
Generator
that can be used to generate transactions from a set of
UTXO entries. The generator can be used to create
simple transactions as well as batch transactions
comprised of multiple chained transactions. Batch
transactions (also known as compound transactions)
are needed when the total number of inputs required
to satisfy the requested amount exceeds the maximum
allowed transaction mass.
The framework can operate within native Rust applications as well as within the NodeJS and browser environments via WASM32.
For JavaScript / TypeScript environments, there are two available NPM modules:
The kaspa-wasm
module is a pure WASM32 module that includes
the entire wallet framework, but does not support RPC due to an absence
of a native WebSocket in NodeJs environment, while
the kaspa
module includes isomorphic-ws
dependency simulating
the W3C WebSocket and thus supports RPC.
JavaScript examples for using this framework can be found at: https://github.com/kaspanet/rusty-kaspa/tree/master/wasm/nodejs
For pre-built browser-compatible WASM32 redistributables of this framework please see the releases section of the Rusty Kaspa repository at https://github.com/kaspanet/rusty-kaspa/releases.
Dependencies
~40–56MB
~1M SLoC