The Lens Protocol is a Web3 social graph protocol on the Polygon Proof-of-Stake blockchain. It is designed to allow creators to establish connections with communities to form a fully composable, user-owned social graph. The protocol was built with modularity in mind from the start, allowing new features and fixes to be added, ensuring that user-owned content and social connections are immutable.
It is designed as an open social graph that any application can plug into, owned by the user. Users own the data and can bring it to any application built on top of the Lens protocol.
As the true owners of their content, creators no longer need to worry about losing their content, fans based on changes in algorithms and policies of individual platforms.
The Lens protocol has three layers of tokenization through ERC721 NFT. All three are ERC721 compliant and fully composable.
LensHub: Upgradable contracts are the core entry point for most interactions in the Lens protocol. Almost all interactions start with ERC721 NFT contracts, which are minted at profile creation time.
FollowNFT: When following a configuration file for the first time, a contract will be deployed, the configuration file is unique, which is an ERC721 NFT contract representing the follower relationship.
CollectNFT: When a publication is collected for the first time, a contract is deployed that is unique to the publication, which is an ERC721 NFT contract representing the collected publication.
Profile NFT
Profile NFT is the main object in the Lens protocol. It is the ownership of this NFT that allows users to control their own content. An address can contain multiple ProfileNFTs. What sets Lens Profile NFTs apart from other on-chain identities is the ability to issue publications.
Publication
Publications are the lifeblood of the Lens protocol. They are all original content, reviews, and mirrors produced by creators, curators, and users alike. Publications are divided into three main types: Posts, Comments, and Mirrors. Posts are the base object, Mirror and Comments provide additional functionality.
Publications are published directly to the user's ProfileNFTs; this ensures that all content created by the user is owned by the user and kept in their wallet.
A Publication has a ContentURI that points to the specific content that the Publication contains, which can point to text, images, videos, or any other content stored on a distributed protocol such as IPFS or Arweave or a centralized storage provider such as AWS S3).
Publications also has two additional modules, a Collections module and a References module. The collection module contains the logic to allow other users to mint your publications into NFTs. This NFT will reference the URI of the original publication. The References module controls references to the publication itself. It contains logic for determining who can comment and reflect on publications.
comment
Comments allow users to provide additional comments on other publications. Like publications, comments live on the user's profile NFT and are thus fully owned by the user.
As reviews cite other publications, they are subject to the reference module conditions of the original publication.
Just like regular publications, reviews also have collection and reference modules. The collection module defines how to mint reviews into NFTs referencing the review's ContentURI.
mirror
Mirror is the management tool for the Lens protocol. They amount to a republished or reamplified content of the protocol. Mirrors are treated the same as publications, but with some additional checks and minor features.
As mirrors reference other publications, they are subject to the conditions of the original publication's referenced module.
Since images only forward existing content, they do not have a ContentURI field and therefore cannot be collected, nor do they have their own collection module. Images can have their own reference modules.
Collect
Favorites feature allows creators to monetize their content. Creators own their content through the Lens Protocol, allowing followers to purchase that content.
When a user posts a publication to their profile NFT, they have the option to set up a collection module. This module will allow other users to mint NFTs linked to the publication's ContentURI. This module can contain arbitrary logic to apply to the minting process and the resulting NFTs.
follow
"Following" in the Lens protocol is different from following in Web2 social applications. When users follow a profile on the Lens Protocol, they earn a Follow NFT that creators and the community can encode to add value.
Profile NFTs can have a specific follow module attached to each ProfileNFT, which contains all the logic for determining whether a follow NFT should be issued to a user attempting to follow a profile.
Additionally, Follow NFTs have built-in governance features, such as voting delegation, to allow the creation of social DAOs using the Lens protocol.