
Compiler: Perry Wang
Compiler: Perry Wang
NounsDAO is an NFT project that will pseudo-randomly generate images, combined with auctions, community governance and a novel rendering technology. Each NFT is called a Noun (noun), and a Noun will be minted every day for an unlimited duration .
All Nouns are auctioned off and the sales proceeds go to the project treasury. NounsDAO has been amended on the basis of the DeFi governance protocol, enabling Noun holders to create and vote on proposals for treasury funds and protocol upgrades.
image description
There are four mechanisms in the NounsDAO protocol worth highlighting, each of which contains some innovative ideas, specifically: auctions, feature generation, rendering, and governance.
Three Noun instances, rendered in SVG - each Noun has a unique background, body, head and accessories.
Noun's Auction
The life cycle of Noun begins with the creation of auctions: Nouns are minted by the auction house, which is a simplified version of Zora/Mirror and only accepts ETH bids.
Only one Noun is auctioned at a time, and each auction lasts at least one day. Immediately after the auction ends, new auctions are created - meaning that at any one time only one Noun is being auctioned.
Every auction has a reserve price, but is currently set at a negligible 1 wei. New bids must increase the current bid by at least 2% or they will not go into effect. Each Noun is usually auctioned at a price of 100 to 150 ETH (about $300,000 to $500,000).
If a bid is placed within the last 5 minutes, the auction time will be extended by 5 minutes. When the auction ends, the Noun is transferred from the auction contract to the highest bidder.
Generation of Noun
A Noun consists of 5 features: background, body, accessories, head, glasses.
When a Noun is created, the protocol generates a random integer representing one of these characteristics, which distinguishes the new Noun from other Nouns. The theoretical maximum per feature is 2^48 - 1, but in practice it is limited by the number of images of that feature that have been uploaded into the protocol.
Each Noun has a unique ID that can be used to view its characteristics. Features are stored in a core contract called NounsToken, which is also responsible for holding users' balances. The actual image rendering of these features is decoupled and hosted on smart contracts called descriptors. The project can, through a governance proposal, replace the contract (unless governance has chosen to lock it).
The characteristic value of each Noun is currently publicized in the NounsToken smart contract.
Rendering of Noun
This is where NounsDAO is technically fascinating.
Integers generated for each feature that can call out images stored in another smart contract called NounsDescriptor. Images are stored as byte strings in a lossless data compression format called RLE, which can eventually be rendered as SVG through contract rendering!
When the UI calls the tokenURI, the smart contract will return an SVG derived from these compressed RLE data. This method has never appeared in any blockchain art project before, and it is worthy of reference for latecomers.
tokenURI returns all the data needed to render a high-fidelity image without calling any objects off-chain.
Since Noun's rendering remains decoupled from the core Noun contract, this functionality can be improved and replaced if new compression or rendering techniques are developed.
How to govern?
NounsDAO performs community management by modifying the Governor Bravo contract of the Compound protocol. The main modification is to use ERC721 balances instead of ERC20 balances for voting.
The first governance proposal is "donate 5 ETH to 6 charities each", and it looks like this proposal will pass with unanimous consent.
There are two subtle technical differences between NounsDAO and the Governor Bravo contract:
During token transfers, delegates move through the Hook function, not through the transfer method itself.
If the account has not been delegated, a function designed to return tokens to the account's delegated representative will return the asset to the account itself. This is presumably an improvement.
Evaluate from a technical level
The code of NounDAO is very clean, written in the famous open source library and the advanced Solidity language. The approach is simple to express, but also contains some well-executed innovations.
Upgradability is achieved concretely by decoupling functions into separate contracts, and making pointers to those contracts manageable, rather than through a proxy delegation approach. The process is thus simplified, while still allowing peripheral parts of the architecture (such as Noun's rendering) to be updated.
The rendering method itself is quite innovative and worth a closer look. NounsDAO has figured out a way to render complex images entirely on-chain via SVG, a technological advancement over most other NFT projects, including CryptoPunks.
I personally have read every line of code in this project and found nothing wrong. But that doesn't mean there aren't, and may still be worth a formal audit. Overall, I am very impressed with the smart contracts created by this DAO and the innovation of the entire product.
Case Study: Noun 17's Auction and Possible Use Cases
NFT collectibles (such as Noun, CyberPunks, etc.) allow communities to have verifiable membership through token ownership.
Social forums like Mirror can validate membership with ownership, legitimizing the voices of accounts within these communities, generating social capital for anonymous avatars—without revealing the identity of those behind them. Anonymous individuals can thus reliably coordinate, process, and advance group values—an innovation in the field of global collective action.
Purchasing a collectible NFT means investing in the community. On August 24th, an account invested in the NFT project of NounsDAO140 ETHtransaction historytransaction historyto verify this signal.
When buyers buy Noun 17, they do one more thing worth noting: they create aNoun 17Twitter account - seems to be speaking on behalf of this Noun. As of this writing, the Twitter account only has 95 followers, unfortunately we were unable to verify ownership of the NFT on Twitter. But on Mirror, we can verify ownership.
Reflections on this auction
Mirror is an encrypted native content publishing platform, and the account is associated with the Ethereum address, so we can verify whether the author owns NFT, such as Noun.
Authors are legally made members of the community by verifying ownership. As more crypto-native social networks come online, holders of collectible NFTs will have more space and form to express themselves — spawning projects that create multiple side identities for avatars. Noun can generate an identity through self-expression in forums such as Mirror.
Noun leadership
to raiseto raise337.75 ETH (approximately $1 million) to establish their online gaming guild.
Although NounsDAO can already manage a huge treasury collaboratively, these tools give each Noun's currency holder autonomy and can use their own social capital to exercise leadership.
When we promote this practice from Noun to every NFT community, then the social network can verify the user's identity through the Ethereum account, and it will inevitably release huge energy.