bigchaindb/bigchaindb
Vanshdeep Singh cdec60a7c0 Rollback crash recovery mechanism (#2091) 2018-02-23 14:35:18 +01:00
..
backend Crash recovery mechanism (#2045) 2018-02-21 10:50:12 +01:00
commands Rollback crash recovery mechanism (#2091) 2018-02-23 14:35:18 +01:00
common Edits to the common/schema/README.md file 2018-02-16 15:48:12 +01:00
log Problem: processes don't have an intelligible name (#2078) 2018-02-21 17:54:50 +01:00
pipelines Problem: statsd config is no longer supported 2018-02-13 14:35:47 +01:00
tendermint Problem: processes don't have an intelligible name (#2078) 2018-02-21 17:54:50 +01:00
web Fixed flake8 errors 2018-02-22 12:41:20 +01:00
README.md Remove all refs/links to whitepaper in tendermint branch 2018-02-19 11:06:06 +01:00
__init__.py Problem: test suite doesn't pick up env vars 2018-02-14 16:43:09 +01:00
config_utils.py Pre commit styling (#1914) 2017-11-30 15:04:14 +01:00
consensus.py Pre commit styling (#1914) 2017-11-30 15:04:14 +01:00
core.py Problem: statsd config is no longer supported 2018-02-13 14:35:47 +01:00
events.py Pre commit styling (#1914) 2017-11-30 15:04:14 +01:00
exceptions.py voting module raises CriticalDuplicateVote if there's a duplicate vote 2017-03-20 17:30:02 +01:00
fastquery.py Pre commit styling (#1914) 2017-11-30 15:04:14 +01:00
models.py Write transactions on commit (#2017) 2018-02-02 14:40:24 +01:00
processes.py Provide log server port as config paramter 2017-10-23 09:17:58 +05:30
utils.py Problem: processes don't have an intelligible name (#2078) 2018-02-21 17:54:50 +01:00
version.py Updated version.py for 1.4.0.dev 2017-11-21 19:59:09 +01:00
voting.py Pre commit styling (#1914) 2017-11-30 15:04:14 +01:00

README.md

Overview

A high-level description of the files and subdirectories of BigchainDB.

Files

core.py

The Bigchain class is defined here. Most node-level operations and database interactions are found in this file. This is the place to start if you are interested in implementing a server API, since many of these class methods concern BigchainDB interacting with the outside world.

models.py

Block, Transaction, and Asset classes are defined here. The classes mirror the block and transaction structure from the documentation, but also include methods for validation and signing.

consensus.py

Base class for consensus methods (verification of votes, blocks, and transactions). The actual logic is mostly found in transaction and block models, defined in models.py.

processes.py

Entry point for the BigchainDB process, after initialization. All subprocesses are started here: processes to handle new blocks, votes, etc.

config_utils.py

Methods for managing the configuration, including loading configuration files, automatically generating the configuration, and keeping the configuration consistent across BigchainDB instances.

Folders

pipelines

Structure and implementation of various subprocesses started in processes.py.

commands

Contains code for the CLI for BigchainDB.

db

Code for building the database connection, creating indexes, and other database setup tasks.