Welcome to the Event Ticketing Web App, a platform designed to simplify the process of browsing, booking, and managing tickets for various events. Whether you're an event organizer or an attendee, our app offers a seamless and efficient experience.
- Event Browsing: Easily explore events by category, location, date, or popularity.(Coming soon)
- Search Functionality: Quickly find specific events using the search bar. ( Comming soon )
- Event Details: View detailed descriptions, schedules, and pricing information for each event.
- User Roles: Different access levels for attendees and administrators.
- Authentication: Robust authentication system using next-auth V4 to ensure secure access.
- Real-time Database: Live updates and real-time data management with Firebase.
- Payment Integration: Seamless payment processing through a local gateway (Chapa).
- Next.js: Framework for server-rendered React applications.
- TypeScript: Typed JavaScript for enhanced development experience.
- Tailwind CSS: Utility-first CSS framework for styling.
- Firebase: Backend services including authentication, real-time database(Firestore).
- NextAuth.js: Authentication for Next.js applications.
- Node.js (v14.x or later)
- Firebase account
- Chapa payment gateway account
-
Clone the repository:
git clone https://github.com/Abel-sol/sabi-web.git
-
Navigate to the project directory:
cd sabi-web -
Install the dependencies:
yarn install
-
Set up your environment variables. Create a
.env.localfile in the root of the project and add the following:NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_firebase_project_id NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_firebase_storage_bucket NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_firebase_messaging_sender_id NEXT_PUBLIC_FIREBASE_APP_ID=your_firebase_app_id NEXT_PUBLIC_CHAPA_API_KEY=your_chapa_api_key -
Start the development server:
yarn run dev
-
Open your browser and navigate to
http://localhost:3000.
-
Browse Events: Navigate through various categories and select events that interest you.
-
View Event Details: Click on an event to see detailed information including date, time, and pricing.
-
Book Tickets: Select the number of tickets and proceed to checkout.
-
Payment and Confirmation: Complete the payment using Chapa and receive a confirmation email with your ticket details.
We welcome contributions to enhance the functionality and features of our Event Ticketing Web App. To contribute, please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature/YourFeature). - Make your changes and commit them (
git commit -m 'Add YourFeature'). - Push to the branch (
git push origin feature/YourFeature). - Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
For any questions or feedback, please reach out to us at support@eventticketingapp.com.
Thank you for using our Event Ticketing Web App!
This is a Next.js project bootstrapped with create-next-app.
This project uses next/font to automatically optimize and load Inter, a custom Google Font.
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.