The layer-1 blockchain for real-world assets, built on Substrate.
Read the documentation »
Centrifuge is the infrastructure that facilitates the decentralized financing of real-world assets natively on-chain, creating a fully transparent market which allows borrowers and lenders to transact without unnecessary intermediaries. Asset pools are fully collateralized, liquidity providers have legal recourse, and the protocol is asset-class agnostic with pools for assets spanning mortgages, invoices, microlending and consumer finance. Ultimately, the protocol aims to lower the cost of borrowing for businesses around the world, while providing DeFi users with a stable source of collateralized yield that is uncorrelated to the volatile crypto markets. By bringing the entire structured credit market on-chain across securitization, tokenization, privacy, governance, and liquidity integrations, Centrifuge is building a more transparent, affordable, and limitless financial system.
On top of the Substrate FRAME framework, Centrifuge Chain is composed of custom pallets which can be found inside the pallets
folder. The following list gives a brief overview, and links to the corresponding documentation:
-
pool-system (docs): Creating and managing investment pools. It is bundling loans, slicing pools into tranches, and controlling investment epochs.
-
loans (docs): Locking a collateral NFT into a pool allowing to borrow from the pool. The loans pallet is also used for bookkeeping loan values and outstanding debt.
-
anchors (docs): Storing hashes of documents on-chain. The documents are stored in the Private Off-chain Data (POD) node network.
-
bridge (docs): Connecting ChainBridge to transfer tokens to and from Ethereum.
-
claims (docs): Processing claims of liquidity rewards acquired through Tinlake investments.
-
collator-allowlist (docs): Tracking active collators, and allows the root account to manage this list.
-
crowdloan-claim (docs): Claiming user rewards for their crowdloan funding support.
-
crowdloan-rewards (docs): Calculating the reward amounts for crowdloan contributors. This is used by the
crowdloan-claim
pallet which handles the actual claims. -
fees (docs): Taking fees from accounts and sending this to the treasury, to the author, or burning them.
-
interest-accrual (docs): Keeping account of the outstanding debt through interest accrual calculations.
-
keystore (docs): Linking public keys to accounts. Supporting the operations of the offchain document consensus layer through the Centrifuge POD (Private Offchain Data) Node.
-
nft (docs): Validating a mint request that needs to be transferred through the bridge layer to Ethereum.
-
nft-sales (docs): Providing a place for digital art creators and owners to offer their NFTs for sale and for potential buyers to browse and buy them.
-
permissions (docs): Linking roles to accounts. It is adding and removing relationships between roles and accounts on chain.
-
restricted-tokens (docs): Transferring tokens and setting balances. It is wrapping
orml-tokens
with the addition of checking for permissions. -
rewards (docs): Implement a scalable reward distribution mechanism that can be used for other pallets to create different rewards systems.
-
liquidity-rewards (docs): Epoch based reward system.
Instructions for building, testing, and developing Centrifuge Chain can be found in docs/DEVELOPING.md
.
This codebase is licensed under GNU Lesser General Public License v3.0.