Iris, messenger of the gods. Twitter x Patreon x Twitch x TikTok, built on Lens
Inspired by Greek Mythology, Iris, the messenger of the gods, our platform welcomes the new age of social media. We took all of our favorite social platforms and combined them into one cohesive decentralized application. On our app you can share content publicly, or choose to share to only your loyal followers. This allows a user's public posts to be found organically on Lens/Iris, while still being able to post exclusive posts for their followers. Users must pay a subscription price to follow creators, and creators have the ability to set the subscription price. Iris, the messenger of the gods. Iris, the part of the eye that comes between the outside world and your Lens. Iris, the purple (Polygon) flower #lfGROW. We combined Lens Protocol with Lit Protocol and Livepeer, and deployed it all on Polygon Mumbai.
How it's made
There are three parts to our project. We built an extensive front-end for the lens protocol, built from scratch in React. Our designers used the Finite design system from Polygon, and our devs implemented the components. We used apollo to interact with the Lens api, and used ethersjs to interact with the LensHub smart contracts. We created a custom Lit Protocol implementation that when paired with FeeFollowModule allows for a Patreon type user experience. We used Lit Protocol to encrypt publications to only users that follow the publication’s author. The encrypted string Blob is uploaded to IPFS, and the IPFS CID, symmetric key, and data needed for the access control conditions is included in the body of the Lens Post. When our frontend client detects encrypted posts, it attempts to decrypt the messages with the user’s wallet. Only wallets that possess the correct Follow NFT will be able to decrypt the message, which is then reflected in our frontend. This implementation originally started as a crazy idea, but we finally managed to get it all working together from beginning to end. We used Livepeer to enable video content creators to share their content on Lens, and we also incorporated livestream capabilities. Users can use the frontend to upload mp4 videos to our backend express server, which transcodes the videos. After transcoding, the video is uploaded to ipfs using Livepeer’s API. The IPFS url is used to create a Lens post. We also have a field in our Lens profiles that indicates a livestream link. When our frontend detects that the user is Live, we display that livestream on their profile. Their followers will also see their icon pop up on their home feed.