Tooling for Daos: Empower DAO members to collectively manage the social presence of the DAO
By expanding Lens protocol, we ease the challenges DAOS face in managing internal/external communication, monetization, contribution, curation and governance.
1 Profile, 2-tier follower system with Lit encryption to separate content visibility
Tier-1 followers see public feed. Tier-2 followers, (DAOmembers) see both public and private feed, and can contribute and vote on contributions in the private feed.
The smart contract auto-publishes the highest reacted content from internal feed to public feed.
Once the post goes public, an auction for its collection begins, all incoming revenue split between DAO and contributor.
This are the modules we wrote with solidity for the project.
The Lens Protocol doesn't have a way to natively get all of the publication that reference a given publication. We implemented this module (and made it easy to incorporate into other modules) for that exact reason.
Based on TwoWayReferenceModule, it adds a function to count comments with a determinated contentURI. This way we can set up a standard for our app where, for example, if the comment has contentURI="like" then that's counted as a like.
Allows people to post bids to an auction (they have to approve the module as spender for the bidded amount). Then when the auction is closed, the highest bidder is charged (if someones withdraws their allowance before closing they are no longer eligible) and is then able to collect their nft. Mirrors can't be collected (users can still bid, but the frontend shouldn't give them the option).
Allows folowers to include a "member" flag in the call to follow. This charges them a fee and adds them to the module's storage as a member of the profile. A whitelist could be implemented.
For the frontend we used React.js and Ethers.js