Crates.io | electrscash |
lib.rs | electrscash |
version | 3.1.0 |
source | src |
created_at | 2019-10-25 09:21:13.381667 |
updated_at | 2022-03-09 11:04:03.663505 |
description | An efficient implementation of Electrum Server |
homepage | https://github.com/BitcoinUnlimited/ElectrsCash |
repository | https://github.com/BitcoinUnlimited/ElectrsCash |
max_upload_size | |
id | 175567 |
size | 587,064 |
An efficient implementation of Electrum Server.
ElectrsCash is an efficient implementation of Electrum Server and can be used as a drop-in replacement for ElectrumX. In addition to the TCP RPC interface, it also provides WebSocket support.
ElectrsCash fully implements the v1.4.3 Electrum Cash protocol and in addition to useful extensions, including CashAccounts.
The server indexes the entire Bitcoin Cash blockchain, and the resulting index enables fast queries for blockchain applications and any given user wallet, allowing the user to keep real-time track of his balances and his transaction history.
When run on the user's own machine, there is no need for the wallet to communicate with external Electrum servers, thus preserving the privacy of the user's addresses and balances.
txindex
is not required for the Bitcoin node, however it does improve
performance.bitcoind
RPC support.See here for installation, build and usage instructions.
The database schema is described here.
Run unit tests with cargo test
.
Integration tests are included in the Bitcoin Unlimited test set. Look for tests prefixed with electrum_
.
To run the tests, you need to:
./contrib/run_functional_tests.sh
.Bitcoin Unlimited builds ElectrsCash and runs the above tests as part of their continuous integration.
Code linting and formatting is enforced in the projects continuous integration.
When contributing, please run cargo clippy
to catch common mistakes and
improve your code, as well as cargo fmt
to format the code.