Welcome to BlockPass, the decentralized contract revolutionizing event ticketing through blockchain technology and non-fungible tokens (NFTs). This README will guide you through the process of getting started with BlockPass, from installation to using the Smartcontract effectively.
- Introduction
- Installation
- Usage
- Key Features
- Chainlink Integration
- The Graph Protocol Integration
- Contributing
- Deployed Address
- Support
- License
BlockPass is a decentralized platform built on the Scroll blockchain, designed to address the challenges of traditional event ticketing systems. By leveraging blockchain technology and NFTs, BlockPass ensures fair ticket pricing, prevents scalping, and guarantees the authenticity of event tickets.
To get started with BlockPass, follow these steps:
-
Clone the BlockPass repository to your local machine:
git clone https://github.com/alade-dev/Blockpass -
Install dependencies:
cd blockpass npm install -
Compile the smart contracts:
npx hardhat compile -
Deploy the contracts to the Scroll blockchain:
npx hardhat run scripts/deploy.js --network scrollSepolia
To create a new pass on BlockPass, organizers can follow these steps:
- Connect your Scroll wallet to the BlockPass platform.
- Navigate to the "Create New Pass" section.
- Fill in the details of the pass, including maximum pass count, start time, sales end time, initial pass price, metadata, and category.
- Confirm the creation of the pass, and it will be deployed on the blockchain.
To purchase a pass on BlockPass as an attendee, follow these steps:
- Connect your Scroll wallet to the BlockPass platform.
- Browse the available passes and select the desired pass.
- Review the pass details, including pricing and availability.
- Click "Purchase Pass" and confirm the transaction using your wallet.
- Upon successful purchase, the pass will be minted as an NFT in your wallet.
- Dynamic Pricing: Prices of passes are dynamically adjusted based on real-time market conditions using Chainlink price feeds.
- Fair Access: Unique NFT-based passes prevent scalping and ensure fair access for genuine fans.
- Immutable Records: All ticket transactions are recorded on the blockchain, ensuring transparency and preventing fraud.
BlockPass integrates Chainlink price feeds to enable dynamic pricing of event passes. The updateFeedPrice function in the smart contract retrieves real-time asset prices from Chainlink oracles and adjusts the pass price accordingly. This ensures that pass prices remain fair and reflect current market conditions.
BlockPass utilizes the Graph Protocol for efficient indexing and querying of blockchain data. The BlockPass subgraph indexes data related to event passes, including pass details, transaction history, and user interactions. Users can query the subgraph to retrieve information such as available event passes, pass prices, user bookings, and more, facilitating seamless interaction with the BlockPass platform.
Link to the Deployed Subgraph:
Link to the Subgraph Source Code:
Data Indexed and Queried Using the Subgraph:
- The BlockPass subgraph indexes data related to event passes, including pass details (such as metadata, category, and pricing), transaction history (pass purchases), and user interactions (pass bookings).
- Users can query the subgraph to retrieve information such as available event passes, pass prices, user bookings, and more, facilitating seamless interaction with the BlockPass platform.
We welcome contributions from the community to help improve BlockPass. If you'd like to contribute, please follow these steps:
- Fork the repository.
- Make your changes in a new branch.
- Submit a pull request detailing your changes.
Find below the address of the deployed BlockPass smart contract on the Scroll network:
If you encounter any issues or have questions about BlockPass, please reach out to us through the following channels:
- Email: support@blockpass.com
- Discord: BlockPass Discord Server
BlockPass is licensed under the MIT License. See the LICENSE file for more details.
Thank you for choosing BlockPass for your event ticketing needs! 🎫🚀