Buskers: Artists mint music NFTs on Kadena, store albums on Tusky/Walrus, and earn PYUSD from fans.
Decentralized Music Platform: Artists mint music/photos as NFTs, fans buy with PYUSD. Events Page: Post gigs, mint as NFTs on Kadena, fans book tickets (PYUSD). Posts Page: Upload band photos to Tusky/Walrus, mint as NFTs, show Insta-like feed. Profile Page: Displays artist NFTs, album art, playable MP3s from Tusky. Sponsors: Kadena (NFT minting), Walrus/Tusky (storage), PayPal (real PYUSD payments). Value: Artists monetize music, own assets on-chain, engage fans with stablecoin UX.
Tech Stack:
Frontend: Next.js (App Router, TypeScript), Tailwind CSS, wagmi/viem (MetaMask wallet), react-hot-toast (UX feedback). Backend/Contracts: Hardhat (Solidity, MusicNFT ERC-721), ethers.js (contract calls). Storage: Tusky SDK (@tusky-io/ts-sdk) for Walrus testnet uploads (vaults, public files). Payments: Real PYUSD (Sepolia, bridged to Kadena via LayerZero). Other: Date-fns (event dates), Multer (API file parsing).
How It Works:
Upload: Frontend form → POST /api/upload → Tusky backend creates vault, uploads to Walrus → Returns uploadId → Shows toast. Mint: Format tokenURI = tusky-walrus://${uploadId}, mint NFT on Kadena (wagmi useContractWrite). Pages: Events (post gigs, book tickets with PYUSD), Posts (photo feed via Tusky NFTs), Profile (NFT grid, MP3/image previews). Deploy: Hardhat scripts (deploy-nft.ts) to Kadena testnet (env-driven RPC/chain ID).
Sponsor Benefits:
Kadena: Fast, low-fee NFT minting/payments on EVM testnet (Chain ID 5920). Walrus/Tusky: Simplified storage, dynamic vaults, verifiable on Sui explorer. PayPal/PYUSD: Stablecoin payments (bridged from Sepolia), consumer-friendly UX.
Hacky Highlights:
Bridged PYUSD to Kadena via LayerZero, used wrapper contract for ERC-20 compatibility. Skipped Tusky blob ID polling, used uploadId directly in NFT URI for speed. Dynamic env fallbacks in wagmi to avoid crashes during hackathon demos.

