Welcome to Ticketerium, a decentralized application (DApp) built on the Ethereum blockchain using the Sepolia Testnet. This project provides a secure and transparent platform for event ticketing, leveraging MetaMask for wallet integration and smart contracts for ticket management.
Try it out: https://nizkl89.github.io/Ticketerium/ (buggy auto return of incentives)
- Secure Login: Connect via MetaMask wallet for authenticated access.
- Event Management: Create, browse, and manage events with customizable details (name, description, location, date, price, etc.).
- Ticket Operations: Buy, verify, transfer, and refund tickets directly on the blockchain.
- Organizer Controls: Cancel events, withdraw funds, and pause/unpause the contract.
- User Dashboard: Intuitive interface to view and manage tickets and events.
- Decentralized: Powered by Ethereum smart contracts for trustless transactions.
- Node.js (v14 or later)
- MetaMask browser extension configured for Sepolia Testnet
- Sepolia ETH (obtain from https://sepoliafaucet.com/)
- A modern web browser (Chrome, Firefox recommended)
-
Clone the Repository
git clone https://github.com/yourusername/ticketerium.git cd ticketerium -
Install Dependencies
- Ensure
http-serveris installed globally:npm install -g http-server
- Ensure
-
Configure MetaMask
- Switch to Sepolia Testnet in MetaMask.
- Fund your wallet with test ETH from the faucet.
-
Run the Application
- Start the local server:
http-server
- Open your browser and navigate to
http://localhost:8080/index.html.
- Start the local server:
-
Login
- Visit
index.htmland click "Connect Wallet" to link your MetaMask account. - Upon successful connection, you’ll be redirected to
dashboard.html.
- Visit
-
Dashboard
- Browse Events: View available events.
- Create Event: Fill out the form to create a new event.
- Organizer Controls: Manage events (cancel, withdraw, pause/unpause).
- Ticket Actions: Verify, transfer, or refund tickets using event and ticket IDs.
- My Tickets: Check your purchased tickets.
-
Testing
- Use developer tools (F12) to monitor console logs for wallet connection details.
- Ensure MetaMask prompts are visible for transactions.
- Frontend: HTML, CSS (Bootstrap 5.3.0), JavaScript
- Blockchain: Web3.js 1.7.3, Ethereum Sepolia Testnet
- Fonts: Google Fonts (Roboto)
- Icons: Bootstrap Icons 1.10.5
- Styling: Custom CSS with Strapi-inspired color scheme
Contributions are welcome! Please fork the repository and submit pull requests. For major changes, please open an issue first to discuss.
- Fork the repo.
- Create a new branch (
git checkout -b feature-branch). - Commit your changes (
git commit -m 'Add new feature'). - Push to the branch (
git push origin feature-branch). - Open a pull request.
This project is licensed under the MIT License. Feel free to use, modify, and distribute it.
- Email: [email protected]
- Add screenshots of the login page and dashboard here (e.g.,
). - Example: Upload images to the
screenshotsfolder and reference them.
- Inspired by Strapi’s design aesthetics.
- Thanks to the Ethereum and Sepolia Testnet communities for blockchain support.
- Gratitude to Bootstrap and Google Fonts for open-source resources.