Architecture Overview

The xGov Architecture consists of the following components:

COMPONENTIMPLEMENTATION
xGov PortalFront-End
xGov RegistryAlgorand Application (Factory)
xGov TreasuryAlgorand Application Account
xGov ManagerAlgorand Address
xGov Committee ManagerAlgorand Address
xGov DaemonAlgorand Address, Back-End + DB
xGov CouncilAlgorand Address
xGov PayorAlgorand Address
xGov SubscriberAlgorand Address
xGovAlgorand Address + Box
Managed SubscriberAlgorand Address
xGov Subscription RequestBox
xGov CommitteeJSON (ARC-86)
ProposerAlgorand Address + Box
KYC ProviderAlgorand Address
ProposalAlgorand Application (Child)
Proposal MetadataBox
Proposal EscrowAlgorand Application Account
Proposal VotersBoxes

xGov Architecture

The on-chain components are used for:

  1. Onboarding xGov;
  2. Whitelisting Proposers (KYC required);
  3. Creating and submitting Proposals;
  4. Binding xGov Committees to Proposals;
  5. Voting on Proposals;
  6. Managing the xGov Treasury and funding approved Proposals.

The off-chain components are used for:

  1. Selecting xGov Committees periodically and verifiably, according to ARC-86;
  2. Intermediate Proposers’ KYC;
  3. Intermediate onboarding of xGovs that cannot execute a self-onboarding.