Governance UI: Realms

Navigation through Realms UI and it's main features

Governance UI

The web-based user interface is likely your main tool for interacting with the SPL Governance program, especially in the context of Solana's Realms. So, to wrap up this article, we'll provide a short recap of the concepts we've discussed as they relate to this interface.

Previous articles that have been discussed up to this point can be found at the bottom of this article at the Learn More headline.

Creating a Realms

When you navigate to the Realms page , you can see the list of existing realms. Clicking on the Create DAO button presents you with three options to choose from:

All three options present a walkthrough wizard where different default parameters are predefined, and a different set of parameters has to be provided. The Multi-Signature wallet option creates a Realm where only the council is expected to vote, and community is not enabled. The NFT Community DAO option creates a Realm where voting power comes from ownership of NFTs. It is a voter weight plugin that provides functionality for voting power calculation. The Community Token DAO is meant for community-driven DAOs where both the council and community are enabled.

You can find all below all three options on how to create each type of DAO thoroughly:
Multi-Signature Wallet

NFT Community DAO

Community Token DAO

When a Realm is created, the main Realm configuration page is presented. When you change some config, it is usually done via a configuration page that ends up creating a proposal. The proposal is a usual way to change the configuration of the Realm and Governance.

Pathway through the UI

  1. My governance power - After connecting the wallet, the user can deposit tokens to the Realm and manage their delegation of voting power, withdraw tokens, and check on their created proposals. The My Proposals button shows proposals that the token owner has voted for, including active and unrelinquished ones. The menu names the unrelinquished proposals as Unreleased Proposals. To withdraw tokens, the user has to relinquish all proposals (i.e., Release All button). Even for finished proposals, the user has to do the unrelinquish action to withdraw tokens.

  2. Params - This section shows the parameters of the Realm and allows for changes. The user can change the configuration of the Realm (stored in RealmConfigAccount) in the top right corner by clicking on Config -> Change Config. All Governance instances are listed below, and the voting settings can be changed by clicking on the Change Config button. There are other tabs on the right side of the list of Governance instances, including Accounts, where the user can list all related accounts to the Governance. The Accounts tab lists the native treasury wallet, ATA token wallets managed by the governance, program accounts or a mint if available.

  3. DAO Wallets - This section provides a different perspective on the Governance accounts. Importantly, the user can create a new Governance instance by clicking on the New DAO wallet button. The list below the button represents the addresses of the native treasury wallets (every Governance has one). To add an asset to a wallet, the user can click on the Add Asset button at the to right side. A new token account can be crated so. The tabs on the right side of the list of native treasury addresses show a list of processed transactions. The Rules tab provides a way to change Governance parameters (similar to Params subpage), and the Treasury and NFTs tabs provide information about the assets.

  4. Programs - This section allows the user to manage the upgrade authority of programs and do code upgrades. The New program button creates a new program type Governance (see Different types of governances) and takes management power for the program.

  5. New proposal - The last section we will touch on is the New proposal screen. Here, the user can create a new proposal that can be chosen from a list of common proposals (such as mint token, transfer, etc.) or pass a base64-encoded transaction as a proposal. The switch Vote by council defines if the proposal will be created as a council or community proposal (a council proposal is voted only by the council and vice versa). At Preview transaction button, the user can check the instruction by simulating it. The Add proposal button then creates a new proposal that is eventually listed on the main configuration page.

In this article, we touched on the Realms UI and its main features as to how we can interact with the SPL Governance program and its main concepts.

Learn More

Need help or have feedback?

We've put together some documentation here, but if you still have questions you'd like answered we’d love to hear from you.

You can reach Realms team via Discord and Twitter.