Bitcredit Documentation
E-Bill
Wildcat Mint
Glossary
E-Bill
Wildcat Mint
Glossary
  • E-Bill

    • E-Bill
    • Concepts

      • Roles
      • Bill states
      • General conditions
      • Validation
    • Identity Record

      • Identity record
      • Field description
      • Identity restore and transfer
      • Backing up user material
    • Cryptographic primitives
    • Adding a contact and exchanging data
    • Content of Bill

      • Content of a bill
      • Field description
      • Bill id and keys
      • The bill blockchain
      • Bill example
    • Operations

      • Operations
      • Issue
      • Request to accept
      • Accept
      • Request to pay
      • Pay
      • Sale
      • Endorse
      • Mint
      • Recourse
    • Transport

      • Transport
      • Sharing bills
      • Migration from the DHT
    • Local Build

      • Local build
      • Software installation
      • Configuration
      • Startup parameters
    • User documentation
    • FAQ
    • Glossary

Local build

Building and running Bitcredit-Core, the E-Bill implementation, locally.

The core is written in Rust and exposes the same API two ways: as a web API, and as a WebAssembly module for use in a browser. The WASM path is the one a wallet or a front end uses, and it is the one these pages cover.

  • Software installation: prerequisites, per operating system.
  • Configuration: the Config struct and every option in it.
  • Startup parameters: building, serving, and resetting local state.

The crates

The repository is a workspace. Knowing which crate does what makes the rest easier to follow:

CrateResponsibility
bcr-ebill-corethe protocol itself: blocks, validation, crypto
bcr-ebill-persistencestorage
bcr-ebill-transportNostr transport
bcr-ebill-apithe API layer that wires those together
bcr-ebill-wasmthe WebAssembly bindings and TypeScript types

Tests follow the same shape: thorough unit tests in the core, persistence and transport crates; integration tests at the API layer; and basic wiring tests on the outer WASM layer.

Versioning

Semantic versioning from the first beta release, 0.5.0, onward: major.minor.patch, for example 0.4.12. Hotfixes append a further number: 0.4.12-1.

Next
Software installation