Architecture Overview

Core Components

Nomial V1 has three main components:

  1. Smart Contracts: Contain logic that controls collateral and pooled capital

  2. Validators: Off-chain clients that control all on-chain operations in the protocol

  3. API: Off-chain service that facilitates interactions with the protocol

Smart Contracts

Core contracts:

  • CollateralPool

    • Accepts collateral deposits of any ERC20 token from solvers

    • Implements a time-locked withdrawal mechanism to allow time for liquidations

    • Allows Validators to liquidate solver balances if necessary

  • InventoryPool

    • Stores LP capital.

    • Borrowers (e.g., solvers) borrow from instances of InventoryPool

    • Each pool instance supports a single ERC20 token

Validators

Validators are responsible for triggering collateral liquidations and granting borrow permissions for inventory access. A quorum of Validators can:

  • Liquidate solver balances and pending withdrawals in the CollateralPool

  • Grant permission to borrow from InventoryPools (based on collateral and outstanding positions)

  • Update parameters such as withdrawal periods and interest rates

Learn more about validators: Security Model.

API

The API provides:

  • An endpoint for solvers to request validator approval for a borrow transaction

  • Transaction data for interactions with the smart contracts

  • Read-only state info about validators, borrowers, and pools.

Last updated