#bitcoin #electrum #bitcoin-cash #server #nexa

bin+lib rostrum

An efficient implementation of Electrum Server with token support

9 stable releases (6 major)

10.1.0 Sep 6, 2024
10.0.0 Dec 13, 2023
9.0.0 Jul 6, 2023
8.1.0 May 3, 2023
4.0.0 Apr 15, 2022

#2 in #bitcoin-cash

MIT license

1MB
25K SLoC

Rust 15K SLoC // 0.0% comments Python 10K SLoC // 0.1% comments JavaScript 149 SLoC // 0.0% comments Shell 18 SLoC BASH 5 SLoC // 0.3% comments

Rostrum - Electrum Server in Rust

An efficient implementation of Electrum Server for Bitcoin Cash and Nexa with token support.

Rostrum supports BCHUnlimited, Nexa and BCHN and has a large test set to ensure these full nodes always work with the software.

logo

See Documentation

See Protocol Methods

See Downloads

Project

Rostrum 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.

Rostrum fully implements the Electrum v1.4.3 protocol plus many more queries, including full token support. See this projects documentation for full RPC reference.

The server indexes the entire 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.

Usage

See here for installation, build and usage instructions.

Tests

Run unit tests with cargo test.

Rostrum has good integration test coverage with Nexa and Bitcoin Unlimited full node. See the testing documentation

To run functional tests against node software, run ./test/functional/test_runner.py.

Dependencies

~64MB
~1M SLoC