Skip to content

Freedteck/Event-pass

Repository files navigation

EventPass

Instant token-gated event platform powered by Solana. Create events, mint attendance NFTs, and unlock exclusive dashboards in seconds.

Live Demo: https://event-pass-six.vercel.app/
Demo Video: https://youtu.be/AH_x-Rpg5UY?si=212zNNRq0krKDfeU
Repository: https://github.com/Freedteck/Event-pass


What It Does

EventPass lets anyone create events and deploy NFT-based attendance passes on Solana. Attendees claim passes via QR codes or links, and NFT ownership instantly unlocks token-gated event dashboards with live interactions.

Key Features:

  • Create unlimited events with unique NFT collections
  • Instant NFT minting via Compressed NFTs (ultra-low cost)
  • Token-gated dashboards with live polls, announcements, and attendee lists
  • Automatic claim management based on time and capacity
  • User profiles showing attended and created events
  • QR code generation for easy venue check-ins

Why Solana

Speed: 3-second transaction finality enables instant claim-to-dashboard flow with no waiting.

Cost: Compressed NFTs reduce minting costs by 1000x. Organizers can mint 100+ passes for under $1 total.

Scalability: Platform handles hundreds of simultaneous events and thousands of claims without cost explosion.

This literally cannot work on other chains. Ethereum gas fees would make attendance passes economically impossible.


How It Works

For Organizers:

  1. Connect wallet and create event (name, date, capacity, image)
  2. Deploy NFT collection on Solana (one-time ~0.01 SOL fee)
  3. Share generated claim link or QR code
  4. Monitor real-time claims and manage dashboard content

For Attendees:

  1. Scan QR code or click claim link
  2. Connect Solana wallet (Phantom, Solflare, Backpack)
  3. Mint NFT pass in ~3 seconds
  4. Instantly access token-gated event dashboard
  5. Participate in polls, view announcements, see other attendees

Token-Gating: Each event has its own NFT collection. Dashboard access checks if connected wallet owns an NFT from that specific collection. No NFT = no access.


Tech Stack

Frontend: React, JavaScript, CSS Modules
Blockchain: Solana Mainnet, Solana Kit
Wallet: Solana Wallet Adapter
NFTs: Metaplex Compressed NFTs
Database: Supabase
Deployment: Vercel


Local Setup

# Clone repository
git clone https://github.com/Freedteck/Event-pass.git
cd Event-pass

# Install dependencies
npm install

# Set environment variables
cp .env.example .env
# Add your Solana RPC URL, Supabase credentials, etc.

# Run development server
npm run dev

Required Environment Variables:

  • SOLANA_RPC_URL - Solana RPC endpoint
  • SUPABASE_URL - Supabase project URL
  • SUPABASE_ANON_KEY - Supabase anonymous key

Architecture

Multi-Event Structure:

  • Each event deploys a separate Compressed NFT collection
  • Collection address stored in Supabase, linked to event ID
  • Token-gating queries Solana for NFT ownership per collection
  • Events are completely isolated (Event A NFT ≠ Event B access)

Event Lifecycle:

  • Claims auto-close at event time (can be manually overridden)
  • Capacity enforced (no mints beyond max attendees)
  • Events can be edited or archived by organizers

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors