Skip to content
This repository was archived by the owner on Jul 26, 2024. It is now read-only.

irnb/web3-wall

Folders and files

NameName
Last commit message
Last commit date

Latest commit

0f304b8 · Dec 30, 2023

History

26 Commits
Nov 30, 2023
Dec 9, 2023
Dec 10, 2023
Dec 9, 2023
Dec 10, 2023
Dec 10, 2023
Dec 9, 2023
Dec 9, 2023
Dec 10, 2023
Dec 10, 2023
Dec 9, 2023
Dec 9, 2023
Dec 9, 2023
Dec 30, 2023
Dec 10, 2023
Dec 10, 2023
Dec 30, 2023
Dec 10, 2023
Dec 10, 2023
Dec 10, 2023
Dec 10, 2023
Dec 10, 2023
Dec 9, 2023
Dec 9, 2023
Dec 9, 2023
Dec 9, 2023
Dec 9, 2023

Repository files navigation

WallNFT

System Design

WallNFT is a public decentralized platform implemented as a smart contract, that allows users to post messages on a "Wall". Each message is minted as a non-fungible token (NFT) based on the ERC721 standard. This approach not only ensures the uniqueness and ownership of each message, but also empowers the users with a measurable reputation in the form of NFT balances.

The platform incorporates a feature of "Pinning" a message. Users with sufficient reputation (NFT balance) or those willing to pay a fee can pin a message, making it more prominent. The platform also integrates with an AI engine. Each time a user creates a post, the AI engine generates an image for the post, which is then used as the art for the associated NFT.

Deployment

this is a foundry project, so you can deploy it using the foundry cli:

forge create `contract_path:contract_name` --template --rpc-url `rpc_url` --private-key `private_key`

Usage

  • Using website (WIP)
  • Using CLI (client/cli/main.ts)

dev environment

(you need install foundry first)

# this will start a local chain (anvil)
make node

# in another terminal
# this will install contract dependencies, compile, test and deploy the contract with constructor arguments in the `./args` file
make dev

High level System Design

System Design

Contract Doc