What is BLOCd

A daemon is a program that runs in the background. The BLOC Wallet requires a node running BLOCd to connect to. That process: BLOCd, is the daemon.

It can run on your computer or on a remote computer. Think of a daemon as a service. Its doing stuff in the background so you can do stuff in the foreground.

BLOCd is responsible for P2P connections and consensus for any communication with the network :

  • Interaction with the blockchain, e.g. blocks relaying, getting informations about the block
  • It can assemble transactions into blocks and check transactions validity
  • Peer list & Connections look up
  • Transaction pool information and relaying
  • Synchronize and grow blockchain
  • But it cannot look inside transactions to see transfers between addresses, because this requires access to user secrets wallets to do so.

BLOCd daemon provides a Command Line Interface with Command Line Arguments but also an HTTP RPC API and a JSON RPC API to receive informations from the blockchain allowing it to be controlled locally or remotely which makes it useful for integration with other software or in larger payment systems.

Various commands are made available by the API described on BLOCd for developers.

Screenshot

Here's a quick image of BLOCd MAIN NET in action:

BLOCd MAIN NET

Here's a quick image of BLOCd TEST NET in action:

BLOCd TEST NET

Source code

BLOCd API

The BLOC-DEVELOPER website documents the public API of BLOCd. You can test your application with your own BLOCd node and view code examples in different programming language.

BLOCd RPC Clients

Currently we support the following official client bindings:

  • Javascript: A JavaScript wrapper for the BLOCd daemon RPC interface.
  • NodeJS: This project is designed to make it very easy to interact with various RPC APIs available within the BLOC Project. This entire project uses Javascript Promises to make things fast, easy, and safe.
  • Go: A Golang wrapper for the BLOCd RPC API. This project makes it easy to send requests to particular RPC server and returns a clear response without any abrupt termination.
  • PHP: A PHP wrapper for BLOC's RPC interfaces.

See Daemon HTTP RPC API and Daemon JSON RPC API for usage.

Downloading

If you wish to compile BLOCd yourself you can download the source Code.

Binary distributions can be found: here.

Select the appropriate file for the target platform (Windows, Mac, Linux).

Binaries are provided in .zip format, while source code is provided in .zip and .tar.gz format.

Installing

Installing on Windows

Extract the .zip file (BLOC-...-windows.zip).

Installing on Mac

Extract the .zip file:

unzip BLOC-...-mac.zip

Installing on Linux

Extract the .zip file:

unzip BLOC-...-linux.zip

Starting BLOCd

Make sure you visit the BLOCd Command Line Arguments to find how to start BLOCd following different configurations.

Synchronizing the Blockchain

Running BLOCd will start the BLOCd network daemon, which will connect to the network and begin downloading and verifying the BLOC blockchain.

Because the blockchain is constantly growing, the file size always increases (the blockchain is currently over 2 GB), and BLOCd must verify every block, which is both CPU and disk intensive. An SSD with at least this much free disk space is recommended, unless you plan to use remote nodes.

Using Checkpoints

You can sync a fresh chain from block 0 much quicker by using checkpoints. Follow this guide to learn more.