Skip to content

BookMyEvent 🎟️ BookMyEvent is a modern event booking mobile application built with Flutter and Dart. It provides a seamless experience for users to discover, book, and manage event tickets while offering a powerful admin dashboard to manage events and bookings.

Notifications You must be signed in to change notification settings

gopal334/BOOKMYEVENT

Repository files navigation

BookMyEvent

A brief description of what this project does and who it's for

BookMyEvent 🎟️

App Screenshot

Unlock the Future of Event Booking

Discover, book and experience unforgettable moments effortlessly!

Made with Flutter Dart Firebase Stripe

πŸ“± About BookMyEvent BookMyEvent is a comprehensive event booking mobile application built with Flutter and Dart. The app provides a seamless experience for users to discover, book, and manage event tickets while offering powerful admin tools for event management.

App Screenshot

✨ Key Features

🎫 Event Discovery & Booking: Browse and book tickets for various events (Music, Festivals, etc.)

πŸ’³ Stripe Payment Integration: Secure payment processing with multiple payment methods

🌍 Location Services: GeoLocator integration for location-based event discovery

πŸ” Google Sign-In: Easy authentication with Firebase and Google Sign-In

πŸ‘€ User Profiles: Personalized booking history and profile management

🎭 Event Categories: Music, Clothing, Festival categories for easy browsing

πŸ“Š Admin Dashboard: Complete event management and ticket tracking

πŸ—οΈ Architecture & Tech Stack Frontend

Flutter: Cross-platform mobile development framework

Dart: Programming language for Flutter applications

Provider: State management solution for Flutter

Backend & Services

Firebase: Authentication, real-time database, and cloud services

Stripe Payment Gateway: Secure payment processing

GeoLocator: Location services for event discovery

Google Sign-In: OAuth authentication

Key Integrations

πŸ”₯ Firebase Authentication

πŸ’° Stripe Payment Gateway App Screenshot

πŸ“ GeoLocator API

πŸ”‘ Google Sign-In API

πŸ“Έ App Screenshots User Experience

Event Discovery: Beautiful home screen with event categories and location-based suggestions

Event Details: Comprehensive event information with booking interface

Ticket Booking: Seamless booking process with quantity selection

Payment Processing: Secure Stripe-powered payment with multiple options

Booking Management: Personal booking history and ticket management

Admin Features

Admin Dashboard: Centralized control panel for event management

Event Upload: Easy event creation and management interface

Ticket Analytics: Real-time ticket booking analytics and user management App Screenshot

πŸš€ Getting Started Prerequisites

Flutter SDK (Latest stable version)

Dart SDK

Android Studio / VS Code with Flutter extensions

Firebase project setup

Stripe account for payment processing

Installation

Clone the repository

bash git clone https://github.com/gopal334/BookMyEvent.git cd BookMyEvent Install dependencies

bash flutter pub get Firebase Configuration

Create a new Firebase project

Add your Android/iOS app to the project

Download and add google-services.json (Android) or GoogleService-Info.plist (iOS)

Enable Authentication and Firestore Database

Stripe Configuration

Set up your Stripe account

Add your publishable and secret keys to the configuration

Run the application

bash flutter run 🎯 App Features Breakdown For Users

Event Discovery: Location-based event recommendations

Easy Booking: Intuitive booking flow with real-time availability

Secure Payments: Multiple payment options through Stripe

Ticket Management: Digital ticket storage and booking history

Profile Management: Google Sign-In integration for easy access

For Admins

Event Management: Create, edit, and manage events

Ticket Analytics: Track bookings and user engagement

User Management: Monitor user activities and booking patterns

Revenue Tracking: Financial insights and payment analytics

πŸ›οΈ App Structure text lib/ β”œβ”€β”€ screens/ β”‚ β”œβ”€β”€ home_screen.dart β”‚ β”œβ”€β”€ event_detail_screen.dart β”‚ β”œβ”€β”€ booking_screen.dart β”‚ β”œβ”€β”€ admin_dashboard.dart β”‚ └── profile_screen.dart β”œβ”€β”€ models/ β”‚ β”œβ”€β”€ event_model.dart β”‚ β”œβ”€β”€ user_model.dart β”‚ └── booking_model.dart β”œβ”€β”€ services/ β”‚ β”œβ”€β”€ firebase_service.dart β”‚ β”œβ”€β”€ stripe_service.dart β”‚ β”œβ”€β”€ location_service.dart β”‚ └── auth_service.dart β”œβ”€β”€ providers/ β”‚ β”œβ”€β”€ event_provider.dart β”‚ β”œβ”€β”€ user_provider.dart β”‚ └── booking_provider.dart └── widgets/ β”œβ”€β”€ event_card.dart β”œβ”€β”€ booking_card.dart └── custom_components.dart 🎨 UI/UX Design The app features a modern, intuitive design with:

Purple-themed UI: Consistent branding with purple gradients

Responsive Design: Optimized for various screen sizes

Smooth Animations: Flutter's animation capabilities for seamless transitions

Intuitive Navigation: Easy-to-use bottom navigation and flow

Accessibility: Design considerations for inclusive user experience

πŸ”§ Configuration Environment Setup

Create a .env file in the project root:

text STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key STRIPE_SECRET_KEY=your_stripe_secret_key FIREBASE_API_KEY=your_firebase_api_key πŸ“± Supported Platforms βœ… Android (API level 21+)

βœ… iOS (iOS 11.0+)

🀝 Contributing Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

Fork the Project

Create your Feature Branch (git checkout -b feature/AmazingFeature)

Commit your Changes (git commit -m 'Add some AmazingFeature')

Push to the Branch (git push origin feature/AmazingFeature)

Open a Pull Request

πŸ“„ License This project is licensed under the MIT License - see the LICENSE file for details.

πŸ‘¨β€πŸ’» Developer Gopal Singh

GitHub: @gopal334

Instagram: @gopalsengarr

Email: sengargopal310@gmail.com

πŸ™ Acknowledgments Flutter team for the amazing framework

Firebase for backend services

Stripe for payment processing

The open-source community for various packages and inspiration

Made with ❀️ using Flutter & Dart

If you found this project helpful, please consider giving it a ⭐

πŸ”— Links

GitHub
Instagram
Email

About

BookMyEvent 🎟️ BookMyEvent is a modern event booking mobile application built with Flutter and Dart. It provides a seamless experience for users to discover, book, and manage event tickets while offering a powerful admin dashboard to manage events and bookings.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published