xGov Architecture Integrations
The xGov Architecture supports integrations with external on-chain Applications, especially those related to vote delegation of xGovs or the vote of the xGov Council.
Third parties and Applications can rely on the xGov Registry ARC-56 App Spec to build:
-
The App Client for direct ABI calls to the xGov Registry, or
-
The App Interface for internal C2C ABI calls to the xGov Registry from their Applications.
To integrate the xGov contracts, you can follow these steps:
-
Choose one of these integration paths:
-
Generate clients from the ARC-56 App Spec: add
xgov-beta-scas a git submodule in your project, or otherwise consume the relevant ARC-56 App Spec as a dependency. -
Download pre-generated clients: copy the already generated App Client (
contract_client.py) and AVM Client (contract_avm_client.py) from the smart contract artifact folders in this repository.
-
-
If you generate Python or TypeScript clients from the ARC-56 App Spec:
-
Use
algokit generate client ...to generate the App Client for direct ABI calls. -
Use
puyapy-clientgento generate the AVM Client for innerabi_call()usage from your application.
-
-
If you download the pre-generated Python clients, use the artifact folders for the relevant contract: