Our project MicroLaunch helps passionate DAO members who have initiatives to launch some project under DAO, spinup the project page, start crowdfunding and collecting like-minded members from DAO in couple of min.
With inbuilt governance and social network feature (that Lens protocol provides) it makes our app very flexible and easy experience to form sub-guild around project and govern.
Example of usecase:
Imagine person David who is a member of BanklessDAO has an experience of running podcasts in past, so he though would be cool to run BanklessPodcast.
In traditional way, to do so, he have to negotiate with different members, then open proposal on snapshot or any other tool and wait for voting and after that, another long discussion is about how govern this project and distribute the compensation.
Instead of old way David with our app can launch the project page in a minute and start gathering people who wants to join initiative and run podcast together. Only thing that needs to be done is to write project description, upload images, and set the goal of funding that needed to start the project( how much members should be in sub-guild and how much funds we need to collect to start the project)
Once member lets say Bob decides to join initiative, he can click “contribute” button to join the project guild and will be charged with some amount that Davide has setup in project. Bob also receives FollowNFT (from Lens protocol) which allows to participate in governance and helps to understand how funds should be distributed.
With this schema project contributors can make proposals and decide whom to invite next on interview or how distribute funds between DAO treasury and project members. All governance is happening in project scope not on global DAO scope which makes processes very fast, reducing bureaucracy and increasing DAO members engagement level.
Another benefit of using our app is that it also showcase reputation of members.
Just for example imagine David jumped from BanklessDAO to DAOMasters and he wants to do the same. Since we are saving everything in chain, DAOMasters members can check the David’s profile page on our app and see what he was doing in past in BanklessDAO and how the project was running. Based on that over time David is generating more trust, reputation and he don’t have to start from scratch
Current example of project was about podcast but type of project can be very like starting youtube channel, start blog, do some research, develop product, etc.
To combine crowdfunding and social network aspects we went in hacky way and decided to use Lens Protocol and NFT.storage (for uploading and saving files in IPFS) which is used in Lens publications
For each project we are creating new profile for wallet and publication using Lens protocol. Lens is providing to very flexible aspects for us that makes is possible.
one wallet can have many profiles. (so we are using that to create new profile for each project)
profile follow module can be configurate in a way to charge people for following. So Project creator can set specific amount for follow profile, also can specify recipient address and currency token address (for example WETH, MATIC or anything else)
so when user is clicking “Contribute” button on project page, we call follow method from contract so user is confirming transaction and is charged for following. the funds goes to recipient that project owner specified when creating profile. This is how we implemented crowdfunding feature. After follow transaction is done follower/contributor is getting FollowNFT from lens. Based on that we are planning to build governance aspect on project.
Current version implementation:
currently we implemented main thing which is showcase project page and contributors /followers and implementing follow logic to collect funds.
(There is small issue on Lens side which is to whitelist new WETH token address to showcase how it will work with faucet WETH. currently Lens is using old one - 0x3C68CE8504087f89c640D02d133646d98e64ddd9 and new is 0xa6fa4fb5f76172d178d61b04b0ecd319c5d1c0aa)
Also we have implemented all backend logic that needs to be done to create project which is
upload project.json file and project image on NFT.storage and get IPFS link
create profile with Lens protocol
create publication with Lens protocol
all three function listed above currently is working as script that can be run like node scripts/prepare.mjs. Inside this script main function you can comment/uncomment the part needed for preparing the project. Once interface of project creating will be ready, script file will be redundant (we didnt implemented that interface since its not showing core concept and easy to do on next iteration since all backend logic is ready)
fetching project publication - api endpoint
fetching followers of project profile - api endpoint
currently most of variables like ProfileId, PublicationId(for project) are hardcoded constants to showcase on page
Next iteration plan:
Project creation interface - frontend
Profile page - which allow people to take a look of persons past projects whom he/she is following etc . It will act as reputation layer
Project proposal - for implementing governance. FollowNFT holders will be able to create proposal as a post
Project owner posts updates by creating Lens publication about project
Project owner posts special publications which can be collected by FollowNFT holders to send more funds to project. it will be also reflected in voting capabilities (its under discussion)
Configure project to setup funds and revenue distribution: for example if guild is running podcast or youtube channel and its generating revenue. where and how this revenue should go. Some percent in DAO treasury and remaining to guild members. We are thinking about integration with supperfluid (or any other alternative) to implement this.