#dusk #blockchain #cryptocurrency #node

nightly dusk-node

An implementation of dusk-blockchain node in pure Rust

1 stable release

new 1.0.0 Jan 17, 2025

#9 in #dusk

MPL-2.0 and GPL-3.0-or-later

1MB
19K SLoC

Dusk node library

The Dusk Node functionality crate.

Archive feature

The current archive makes use of SQLite and SQLx in offline mode.

Installing sqlx-cli with cargo install sqlx-cli --features openssl-vendored

Offline mode

If the queries don't change, nothing needs to be done.

If queries do change, you need to set a database env var and update the offline .sqlx queries folder.

This can be done through:

  1. export DATABASE_URL=sqlite:///tmp/temp.sqlite3
  2. cargo sqlx prepare -- --all-targets --all-features

Non offline mode

In order for the sqlx::query macro to successfully expand during compile time checks, a database must exist beforehand if not run in offline mode.

This can be done through:

  1. Set DATABASE_URL or create .env file with DATABASE_URL=sqlite:///tmp/temp.sqlite3
  2. Create a db with sqlx database create
  3. Run the migrations with sqlx migrate run

NB: You need to be in the /node folder of this project for sqlx to detect the migrations folder

Dependencies

~44–64MB
~1M SLoC