Protocol Architecture
Last updated
Last updated
The Tagomi Protocol is designed with a modular and upgradable architecture, consisting of several smart contract components that interact with each other to facilitate real-time finance on the blockchain.
The architecture diagram below provides a high-level overview of the Tagomi Protocol's components and their relationships. It is the protocol deployed when a new TagomiFrameworkDeployer
instance is created and the method deployFramework()
.
Architecture of the Tagomi Protocol
Immutable Instance: These are contract instances that are not intended to be upgraded or changed.
Upgradable Instance: These are contract instances that are intended to be upgraded or changed, eventually by the Tagomi Protocol's Governance.
Link: Represents the relationship or interaction between components.
This is the fundamental smart contract within the Tagomi Protocol, which is an upgradable advanced token contract which inherits from the BEP20 standard, and enhances it with additional features such as Money Streaming and Distributions.
Unmanaged SuperTokens
Super Token contracts can be created by anyone, and can either be managed by the Tagomi Protocol (The Host), or completely unmanaged with no influence from the Host. They can be used to represent any asset or right, and can be used in any context.
ConstantFlowAgreementV1 (UUPS Proxy)
A versioned agreement that governs the continuous flow of tokens between parties, ie Money Streaming.
InstantDistributionAgreementV1 (UUPS Proxy)
A smart contract that manages the mechanisms for the instant distribution of tokens, a feature that allows for scalable one-to-many token distributions.
Deprecated
This agreement is in the process of being deprecated in favor of the more flexible GeneralDistributionAgreementV1.
GeneralDistributionAgreementV1 (UUPS Proxy)
A smart contract that manages the mechanisms for everything related to one-to-many transfers and streams, ie Distributions.
Tagomi Host Contract (UUPS Proxy)
The central contract that hosts the Tagomi Protocol, managing the various tokens and agreements.
SuperTokenFactory (UUPS Proxy)
A factory contract for creating SuperTokens, likely with specific initial conditions or properties.
TagomiPool (UUPS Proxy)
This a contract representing the Pools created to manage Distributions.
TagomiGovernanceII (UUPS Proxy)
The main governance contract that will allow Tagomi community members to participate in the governance of the protocol.
ConstantFlowNFT (UUPS Proxy)
Smart contract for non-fungible tokens (NFTs) that have a constant flow rate associated with them. These are NFTs minted to represent Money Streaming flows.
PoolAdminNFT (UUPS Proxy)
NFT contract representing admin rights over a TagomiPool.
PoolMemberNFT (UUPS Proxy)
This is an NFT contract where tokens represent membership within a pool, granting units to members in that pool.
The technical details and contract interactions are further documented in the codebase. Refer to the following for an in-depth understanding:
Tagomi Framework Deployment Steps.
Tagomi Protocol Monorepo Wiki.