SIP Cohort 2 Opportunity 2: Quadratic Funding Social Network

This posts builds upon the ideas in Quadratic Funding Social Network. Please read that post before continuing along with this one.

We would like to build a Quadratic Funding Social Network in Q1 2023. Such a system would upregulate posts based upon what is micro-tipped the most, not what is liked the most, which would create

  1. a more regenerative social network
  2. an earning opportunity for people trying to do good
  3. a compelling 10x-better usecase for web3 social

What should we build it on?

Web3 - Lenster

We could build QF Social Network on Lense Protocol. Picture but with Quadratic Funding - powered microtips as the main engagement mechanism for users (and sorting mechanism for the feed) instead of likes.

Web2.5 - Discord

We could build QF Social Network on Discord. We’d build a discord bot that you could use to give out micro-tips on your favorite discord server, a QF social network seamlessly integrated to where your community already is

Web2.5 - Twitter

We could build QF Social Network on Twitter. We’d build a twitter bot that you could use to give out micro-tips on in twitter, a QF social network seamlessly integrated where your community already exists.

What could the Lense MVP look like?

for the v0.1:

  1. integrates with gitcoin grants protocol/gitcoin passport and lense.

admin backend:

  1. kevins address (owocki.eth) can setup a new QF round (attributes: start date, end date, amount in GTC)
  2. kevins address can payout any QF round after the round ends.
  3. assume only 1 round active at a time for now

user frontend:

  1. fork of at
  2. replace like button with microtip button
  3. WRITE USER CASE: ppl can see their match estimates when they microtip
  4. READ USER CASE: on top of the microtip button, users can see current amount of tips / matching

if possible:

  1. use grants protocol for QF matching
  2. use passport for sybil resistence

future iterations:

  1. more ppl can create QF rounds
  2. more rounds than 1 at once
  3. sort ranking based on microtips
  4. passport integration

also, DeCartography is building the social graph generated by human assumption.

Sounds like a perfect match for DeSo ( They have micro-tipping built-in with diamonds ( and super low transaction costs.
One of the community members also created Discord bot for micro-tipping inside of a Discord server.
They are not EVM (no smart contracts), but they have Metamask login option. Their public keys are compatible with Ethereum which means they could use Gitcoin passport. Gitcoin passport could run a script that check profiles based on Ethereum addresses and use associations primitive to label users with Gitcoin passports.
But I’m not sure how gitcoin grants protocol works. I would need look into it.

I guess Lens could be used for it too. Microtip could be a paid collect (which is better that simple transfer because it’s automatically associated with the post) with different icon and UI and perhaps variable pricing.
It would probably need own indexer to index posts, because Lens indexer uses it’s own “algorithms” for a discovery feeds.

Ideas for an MVP to test the concept (v0.0.1)

Grant owner

  1. grantowner.eth (anyone) can setup a new QF round (attributes: start date, end date, amount in GTC)
  2. grantowner.eth can define requirements for matched lens publications (whitelisted profiles, passport, PoH, nft holder, max publications per profile, post content limitations)
  3. when the round is over, grantowner.eth can start the payout to matched publications. Each publication donation will be matched with GTC from the round based on the amount and the quantity of the donations received. (would be nice to include other factors)

Publication owner

  1. user.lens can create a new QF publication (attributes: referralFee, referralFeeLimitations, collectLimitations, receiver address)
  2. user.lens can apply for a round with a QF publication
  3. donation sent to user.lens publication will be transfered to user.lens wallet immediately. Matched GTC amount will be received by the user when the round is over.


  1. donor.lens can see all active QF publications with likes and comments like on
  2. donor.lens can donate to active QF publications
  3. donations (minus referral fees) are directly sent to the publication owner
Anyone on any Lens platform can potentially donate to an active QF publication by collecting its post!

On the smart contract side this logic can be encapsulated in a QFCollectModule that can be built on top of the SimpleFeeCollectModule.

It could be a very generic implementation that can be used by anybody and allows for future iteration that might be more specific to gitcoin or supermodular modules.

Using this module, if we post with gitcoin.lens profile like KoruDAO we could potentially allow anyone to create QF Publications even if they don’t have a lens profile

@owocki Happy to work on this if you like the idea


I’ve playing a bit with the above ideas and here is what I’ve got.

This is a first release of my Gitcoin Collect Module for Lens protocol.

This repo contains basically two components:

  • a custom Voting Strategy that process votes coming from both the grant explorer and lens protocol. If a vote comes from Lens protocol it will check if it wasn’t already casted and emit a Voted event with data (amount, voter) coming from the Lens collect NFT. Otherwise it will use the standard Gitcoin way of processing votes.

  • a Gitcoin Collect Module for Lens protocol which allow lens users to apply to a gitcoin round using their publication. This module will cast a vote by calling the round implementation whenever a user collets a post submitted with this module. Using this module publisher can also set a referral incentive.

Next steps

  1. Add deploy scripts for mumbai testnet and polygon mainnet
  2. Allow publisher to set min_amount for collectors or to activate referral incentives
  3. Build the frontend for

very cool. any way i can checkout what the UI looks like?

are you looking to pick up more builds?

No UI yet, only contracts. The frontend is actually in the next steps.

I will try integrating lens based grants within the grant-explorer/grant-manager before going for a custom UI.

Additionally I could work with lenster on their public repository to add support for the gitcoin collect module directly in their frontend before building our own fork.

I would love to contribute more on supermodular. What’s on your mind? Send me a DM or reach me out on TW if you want

Interesting stuff.

I have some fundamental concerns though.

I just forwarded that link to Unfinished re. Project Liberty, because I’m keen to really grapple with the design contradictions / tension here, and need a sparring partner or three!