Ticketchain is a decentralized ticketing platform that transforms how tickets are issued, purchased, and resold. By leveraging Web3 technologies, Ticketchain eliminates fraud, ensures true ticket ownership, and empowers event organizers with transparent and secure revenue streams.
-
In order to deploy contract you will need:
-
Ensure you have the following prerequisites:
- $ETH on ETH Sepolia Testnet.
- ETH Sepolia Testnet RPC endpoint.
-
Create a
.envfile with the following content in smartContract:ALCHEMY_RPC_KEY="Alchemy RPC" PK="Deployer private key"
-
Create a
.envfile with the following content in frontend:NEXT_PUBLIC_CHAIN_ID = "11155111" NEXT_PUBLIC_PROJECT_ID = "" NEXT_PUBLIC_RPC = "https://ethereum-sepolia-rpc.publicnode.com" NEXT_PUBLIC_SIGNATURE_WEBHOOK = "" DATABASE_URL="" UPLOADTHING_TOKEN=""
-
Deploy all contracts to Sepolia
Run the Hardhat deployment script:
npx hardhat run scripts/deploy.js --network sepolia
-
Move ABI files to the frontend After deployment, ABI files will be generated in the
deploymentsfolder. Copy them to your frontend project:frontend/ticket-app/smartContracts/abis
-
Generate Prisma Client
npx prisma generate
-
Run the website From the frontend directory, start the Next.js app:
npm run dev
- Data feed
- contracts/market/TicketLaunchpad.sol - Fetch the price from a data feed and ensure the received amount corresponds to the fetched price.
- Chainlink Function contracts/secondaryMarket/SecondaryMarketCore.sol - Retrieve ticket usage data via a Chainlink Function and, upon listing, check whether the ticket has been used to prevent fraudulent listings.
| Name | Address |
|---|---|
Config |
0x01AbD13ff659d75233F25016230B40AF842cf25B |
FeeManager |
0xDEAe5Fe045Ca7FA0a6206A1434c2C23033da6BAb |
OrganizerRegistry |
0x519990bAfb605d97a51D801E56C73348CA5b54bE |
TicketFactory |
0x3A3f2644B85a5c9B2C5624dA3d7b931Bf1532620 |
Treasury |
0x1DD1a23b068dB802582F8D733C4cb289c85644f1 |