In the early stages of our rollout, JPG will release canons we believe to be particularly valuable to the ecosystem or that uniquely demonstrate the Canons’ potential. The contents of the Canons will be generated and controlled by the community and archived on Arweave.

Following the Beta stage, any JPG NFT holder will be able to propose their own Canon for community vote, allowing for emergent categories and conceptual systems to develop.

Below is a technical overview of the Canon governance system.


Access to the governance system is provided by the Canonicon NFT, which tracks your curation history, reputation, and voting power. As a user makes proposals and votes, their voting power within the system increases, meaning they have more sway within the system.

System Architecture

Coming soon.

Governance Lifecycle

The governance lifecycle of Canons relies on a weekly system. Over the course of one cycle, all new proposals are stored in Pending, at the conclusion of that cycle, they are moved into Active, where they are then eligible for voting. Similarly, submissions in the Active category are eligible for voting throughout the cycle, at the conclusion of which they are either Canonized or Rejected.

Reputation System

JPG's reputation system is designed to create a positive sum environment that encourages active participation and "correct" consensus.

The primary factors impacting JXPG rewards for voting on Canons are: Majority/Minority, Difference between Majority/Minority, and Vote Ordering Batch.

Put as simply as possible, Majority earns more JXPG than Minority, and the difference in rewards is correlated with the difference in Majority/Minority votes (a 51/49 split leads to very similar rewards for Maj/Min, while a 99/1 leads to a large reward difference.) Finally, the earlier you vote relative to other voters, the more JXPG you will be awarded. Reward calculations can be performed with the following:

Proposal Accepted (Quorum Reached):

Proposer Reward:

ProposerReward=bProposerReward = b

Majority Vote Reward:

JXPG=cx(sb){1x10} {yl}JXPG=c^{x}\left(sb\right)\left\{1\le x\le10\right\}\ \left\{y\ge l\right\}

Minority Vote Reward:

JXPG=cx(p+0.5)(sb) {1x10}{yl}JXPG=c^{x}\cdot\left(p+0.5\right)\cdot\left(sb\right)\ \left\{1\le x\le10\right\}\left\{y\ge l\right\}

Spam Vote:

JXPG=0.25bJXPG = - 0.25 *b

Proposal Rejected (Quorum Reached):

Proposer Reward:

JXPG=(p+0.6)sb JXPG =\left(p+0.6\right)\cdot sb\

Majority Vote Reward:

JXPG = cxsb {1x10}{y20}JXPG\ =\ c^{x}\cdot sb\ \left\{1\le x\le10\right\}\left\{y\ge20\right\}

Minority Vote Reward

JXPG = cx(p+0.5)(sb){1x10} {y20}JXPG\ =\ c^{x}\cdot\left(p+0.5\right)\cdot\left(sb\right)\left\{1\le x\le10\right\}\ \left\{y\ge20\right\}

Spam Vote:

JXPG=0.25bJXPG = - 0.25 *b

Proposal Voted as Spam:



Approve Voters:

JXPG=0.5bJXPG = -0.5 * b

Reject Voters:

JXPG=0.25bJXPG = -0.25*b

Spam Voters:

JXPG=30JXPG = 30


b=100b = 100 - Base JXPG Value

x=Batchx = Batch - Integer between 1 and 10

s=0.8s = 0.8 - JXPG scaled difference between proposing and voting (1.0 = Least Difference)

c=0.93c = 0.93 - Impact of early versus late voting (1.0 = Least Impact)

p=Minority/Totalp = Minority/Total

NOTE: In the case where a calculation falls finds a JXPG reward to be less than 20, it is set to equal 20. In other words, 20 is the minimum JXPG reward unless noted otherwise as in the case of spam situations.

Last updated