Dapp Overview

Own your content. Own your payments. Own your data.


The Subsmate Profile NFT is the main object in the Subsmate. It is ownership over this NFT that gives you control of your content. Individual addresses own Profile NFTs. What differentiates the Profile NFT from other on-chain identities is the ability to post publications to it. The Subsmate Profile NFTs contains the history of all of the posts, mirrors, comments, and other content you generate.
Additionally, Subsmate Profile NFTs contain a subscribe module. This module contains the logic that allows different accounts to be issued subscribe NFTs to record their relationship to the main profile on-chain.

Subs-Publicate Module

Publicate are the lifeblood of the Subsmate. They are all of the original content, comments, and mirrors produced by creators, curators, and users alike. Subs-Publicate come in three primary types: posts, comments, and mirrors. Posts are the base object, with mirror and comment providing additional functionality.
Subs-Publicate are posted directly to a user's Profile NFTs; this ensures that all content created by a user remains user-owned and in their wallet.
Subs-Publicate have a ContentURI which points to the specific content the publication contains, this can point to text, an image, a video, or other arbitrary content stored on either a decentralized protocol such as IPFS or Arweave, Moralis or a centralized storage provider like AWS S3.
Subs-Publicate also have two attached modules, a collect module, and a reference module.


Comments allow users to provide additional commentary on other publications. They are treated the same as base Subs-Publicate with extra checks and features. Like publicate, comments live in the user's Profile NFT and therefore are wholly owned by the user.
Since comments reference other publications, they are subject to the original publication's reference module conditions. If a publicate has a reference module that limits comments only to accounts who subscribe the original poster, and the commenter does not hold a subscribe NFT, the transaction to comment will fail.
Just like regular publications, comments also have Collect and reference modules. Collect modules define how a comment can be minted into an NFT that references the comment's ContentURI. The reference module contains logic that determines who can comment or mirror the new comment.

Subscribe Module

"Subscribe" on the Subsmate differs from subscribe in Web2 apps. When users subscribe a profile on the Subsmate, they are given a Subscribe NFT, which creators and communities can encode with additional value.
Profile NFTs can attach a particular Subscribe Module to each Profile NFT, which contains all of the logic used to determine if a user attempting to subscribe the profile should be issued a Subscribe NFT. For example, a profile could attach a subscribe module that requires a user to pay 1 ETH to receive a Subscribe NFT.
The ID of each newly issued Subscribe NFT for given profile increments by 1, such that the first subscribers NFT has an ID of 1; the tenth has an ID of 10, and so on.
Next Stage: Subscribe NFTs have built-in governance capabilities, such as vote delegation, to allow for the creation of Subsmate. Creators can create voting strategies using Subscribe NFTs and their various properties--for example: "The first 1000 subscriber have one vote each" or "The longer you have subscribed, the more voting power you have."