shirecoding / christmas

Christmas Protocol on Solana
0 stars 4 forks source link

Christmas Protocol

Christmas Protocol on Solana

How it works

Overview

Intro

Technical Info

Components

Our Program: christmas

Functions

  1. mint_nft

caller: seller account: Hash(christmas, seller_pubkey)

transaction(
    pay advertising fee,
    upload image + metadata stored in arweave (metaplex),
    program create a temporary account which owns this NFT (needs to store some lamports),
)
  1. consume_nft

burn the nft

caller: buyer

transaction(
    buyer with the nft check with seller QR code that it matched,
    burn the nft
)

Setup Solana Localnet

Helpful Commands

solana config get  # get current solana config
solana-keygen pubkey ./id_local.json  # get public key of a private key

Run local solana validator

solana-test-validator  # [--quiet]

Generate keypair

solana-keygen new -o ./id_local.json

Set solana config to local

solana config set --url localhost --keypair /Users/benjaminhon/Developer/christmas/id_local.json

Airdrop till you drop

solana airdrop 1000

Testing & Exploring on Local Validator

  1. Go to Solana Explorer
  2. Select Custom RPC URL (http://localhost:8899)
  3. After Airdropping some solana, search for your pubkey in the explorer