Installation & Configuration Instructions (For Local Host Only)
Step 1 git clone https://github.com/0xBcamp/Event-Ticketing_June2023.git
Step 2:npm install
Step 3:npm run compile
Step 4:npm run test
Step 5: npm run start:local
Step 6: npm run deploy
Step 7: cd event-ticketing
Step 8: npm install
Step 9: npm run start
Step 10: Navigate to http://localhost:3000/
Step 11: Navigate to http://localhost:3000/buy
Event Creators can:
- Create an Event.
- Mint Tickets.
- Create Tickets with specific pricing.
- Generate QR Codes for each seat.
Event Participants can:
- View the available Tickets for an Event (and which have sold and to whom)
- Buy and NFT Ticket which includes a QR Code for scanning
Future Growth
- Transfer/Sell NFT Ticket on 3rd party marketplace
- Find events
- Share an event
- Receive Email with Receipt including NFT, QR Code, Event Details.
- Have the possibility of a refund
- Buy more than one ticket up to a maximum
- Buy a ticket for someone else
- Acquire loyalty rewards
- Acquire VIP status
- Claim various roles (ticket validators, admin, etc.)
- Receive a discount for buying multiple tickets
- Receive a discount for buying early
- Have their ticket verified (scan QR code)
- Be given access to an event (after ticket verified)
List of Security Concerns To Address:
-
Could implement Attestations (Verify the Ticket truly belongs to the person who claims it)
https://github.com/orgs/ethereum-optimism/projects/31/views/3?pane=issue&itemId=26603748
https://docs.attest.sh/docs/learn/attestations
https://community.optimism.io/docs/identity/atst-v1/
https://www.optimism.io/attestation-terms
https://docs.attest.sh/docs/Use%20Cases/ticketing-systems -
Need to prevent scalping
-
Need to prevent bots
-
Need to prevent fraud
-
Need to prevent double spending
-
Neet to prevent front-running
Authors: Travis Richardson & Ben Rasmussen