The platform utilizes NFTs to represent tickets, ensuring their uniqueness, indivisibility, and traceability. Each ticket is stored on a blockchain, providing immutable records of ownership and transaction history. With NFTs, ticket authenticity can be easily verified, preventing counterfeiting and ensuring that only valid tickets are bought and sold.
Users can use this platform in two scenarios: as a ticket buyer and as a host
For the host, this provides a wide range of features like minting ticket collection and keeping it with them until they want to publish the collection, once they publish it, the ticket collection would be available for purchase to all the users and become an active event. Now, the host gets to see all his active events and can pause them or run paused events whenever wanted. Along with this, users also get the feature to put these NFT ticket collections as shortlisting-based events which only those with shortlisted wallet addresses can buy or claim, for the host, can upload an array of the shortlisted user's list. Each time a host sets up their account, they are asked for a username which should be unique and is checked every time if that's not already taken. This setting-up process creates an instance of a separate ticketing contract for each host. All the hosts can put up requests to feature their events in the common featured events section on the website. These requests can only be accepted by the owner of the platform. Featured events appear on the featured events page.
For the ticket buyers, whenever they want to buy any user host's ticket they can go to their host's page and can buy the ticket. After buying this ticket goes to the host-specific inventory which shows only the tickets purchased from a certain host as well as the common inventory which fetches tickets purchased from any host's events.
We have used Solidity for the smart contracts and Remix for deploying the contract on Optimism, Base and Zora blockchains. For building the front end, we have used Next.js along with Tailwind. For integrating the frontend with smart contracts, we have used Ether.js. All the three blockchains allows for speedful on-chain transactions.