Relic is an app for posting and collecting onchain photos.
Take photos with the app to publish them permanently onchain
Earn $RELIC by getting likes.
Liking a relic makes you eligible to mint it as an NFT when the creator releases it.
Good content will be rewarded with verified status.
Reach verified status to claim your wvm.eth identity.
Account creation is just one tap. A new wallet is generated in the browser app and seeded with some testnet Load Network tokens and $RELIC. You are free to export the wallet's private key and load it into a wallet app to use the account elsewhere.
After installing the relic.bot app on your mobile browser and creating a wallet, use the camera feature to take a photo and post it onchain.
Liking relics
Liking relics costs $RELIC tokens, as set by the original creator. If users like your relics, you earn $RELIC for good content
Minting relics
Creators can choose to mint a relic as an NFT and distribute it to everyone who has liked it, in one tap. Liking a relic is like betting on its future collectability.
Getting verified
Any user currently verified can vouch for unverified users, allowing them to claim verified status. One vouch per day per user.
Relic data is sent to Load Network via a bundle, which is an easy way to post data onchain as EVM calldata.
Relics are stored via a custom bundling service built with the Load Bundler Rust library.
User accounts, identity, ownership and tokens are handled by a suite of smart contracts.
A central registry contract managing user identity, social connections, and content organization:
Maps user addresses to their Sanctum vaults via sanctums
mapping
Maintains unique usernames (max 32 chars, alphanumeric + hyphens) with two-way mappings
Implements social verification through vouch system:
Verified users can vouch for others (once per day cooldown)
Users need at least one vouch to claim verification
Initial verified user set in constructor has special privileges
Profile system with customizable profile pictures and metadata
ENS subdomain management:
Verified users can claim subdomains matching their username
Prevents duplicate claims and maintains subdomain registry
Comprehensive getter functions for user data and relationships
Event emissions for all major state changes
An ERC721 contract handling content preservation and tokenization with economic incentives.
Relic struct stores content metadata:
Basic info: id, name, description, mediaType, contentUrl
Timestamps and block height for preservation tracking
Economics: likeCost, likeCount, creator address
Social: array of liker addresses with has-liked mapping
State machine: Unearthed -> Collectable -> Minted
Content preservation:
Owner can preserve content as "relics" with metadata
Each relic has configurable like cost in RelicTokens
Like system:
Users spend RelicTokens to like content
Tokens transfer directly to content creator
Tracking of likes per user and per relic
NFT minting:
Automatic state progression based on like count
Bulk mints NFTs to all likers when collectable
Token IDs based on relic index (relicIndex * 1000 + i)
Creator receives last token in mint sequence
Comprehensive getters for relics, tokens, and relationships
Access controls via owner and reliquary admin roles