Skip to content

me-cuadra/mecuadra-marketplace

Repository files navigation

MeCuadra - Physical Assets NFT Marketplace 🏪

A complete marketplace for tokenizing physical goods as NFTs on Etherlink

Transform any physical item into a tradeable NFT with automatic IPFS storage, category-based collections, and seamless marketplace integration.

Built with Thirdweb Network Currency

🎬 See It In Action

MeCuadra Demo Video

Click to watch the full demo of MeCuadra marketplace

✨ What Makes It Special

  • 🚀 One-Click NFT Creation - Upload image, add details, mint & list automatically
  • 📱 Universal Wallet Support - Thirdweb v5 integration with multiple wallet options
  • 🗂️ Smart Categories - ERC1155 collections organized by item type (Vehicles, Electronics, etc.)
  • 💰 XTZ Native Trading - Built for Etherlink with Tezos integration
  • 🔄 Real-time Updates - New NFTs appear instantly in the marketplace feed
  • 🎨 Modern UI/UX - Clean, responsive interface with shadcn/ui components

🚀 Quick Start

# Install dependencies
pnpm install

# Set up environment
echo "NEXT_PUBLIC_THIRDWEB_CLIENT_ID=your_client_id" > .env.local

# Run development server
pnpm run dev

Open http://localhost:3000 and start creating NFTs! 🎉

🎯 How It Works

For Creators

  1. Connect your wallet (MetaMask, WalletConnect, or social login)
  2. Upload photos of your physical item
  3. Describe your asset with category, condition, and manufacturer
  4. Set Price in XTZ and click "Create & List NFT"
  5. Done! Your NFT is minted and automatically listed for sale

For Buyers

  1. Browse the marketplace feed with all available NFTs
  2. Filter by category, price range, or search by name
  3. Buy with one click using XTZ
  4. Own the NFT representing the physical asset

🏗️ Architecture

Frontend: Next.js 14 + TypeScript + Tailwind CSS
Blockchain: Thirdweb v5 SDK + ERC1155 Collections + MarketplaceV3
Storage: IPFS via Thirdweb Storage
Network: Etherlink Testnet (XTZ)

📋 Smart Contracts

Contract Address Type
Main Marketplace 0xd1f1Ddc...4c6e71ac1F75 MarketplaceV3
Vehicles Collection 0xdC0F1Fa...ef4d2660c59 ERC1155

📝 Note: Additional category collections can be deployed as needed in constants/addresses.ts

🛠️ Development Features

✅ Completed Features

  • Wallet connection with Thirdweb v5
  • NFT creation with IPFS metadata upload
  • ERC1155 minting with proper tokenId extraction
  • Automatic marketplace approval & listing
  • Real-time marketplace feed with filtering
  • XTZ payment integration
  • Responsive UI with loading states & error handling

🔧 Technical Highlights

  • Proper TokenId Extraction: Correctly parses TransferSingle event logs to get real tokenId
  • IPFS Integration: Seamless image upload and metadata storage
  • Marketplace Approval: Automatic setApprovalForAll before listing
  • Event-Driven Updates: Uses waitForReceipt for reliable transaction confirmation

🐛 Troubleshooting

NFTs not appearing? → Check the "Refresh" button or wait for auto-update (2 minutes)
Wallet issues? → Ensure you're on Etherlink Testnet with sufficient XTZ for gas
Contract errors? → Verify all addresses in constants/addresses.ts are deployed correctly

🤝 Contributing

Contributions welcome! Please feel free to submit a Pull Request.

📄 License

MIT License - see LICENSE for details.


Built with ❤️ using Thirdweb v5 on Etherlink

About

MeCuadra: Exchange physical goods like NFTs easily and securely.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •