Your Fest, Your Vibe • Plans Made Easy, Memories Made Epic.
Festrix is an event discovery, competition management, and digital ticketing Flutter mobile application backed by Cloud Firestore & Firebase Authentication. Built with a sleek modern design system, glassmorphism, animated curved navigation, and dynamic digital QR entry passes.
- Personalized Header: Dynamic greeting with campus venue switcher (AIKTC Campus, IIT Bombay, etc.).
- Real-Time Live Search: Instant debounced search filtering by event title, tags, description, and venue location.
- Dynamic Category Filter: Filter across curated categories (Music, Dance, Algorithm / Hackathons, Sports, Literature / Debate, Art & Craft, Standup Comedy).
- Featured / Trending Carousel: VIP festival banners with countdown badges, category tags, and one-tap bookmarking.
- Event Feed Cards: High-res festival posters, dynamic pricing, date & time badges, available seats tracker, and verified organizer tags.
- Hero Image Parallax: Immersive sliver app bar with hero animations and wishlist heart toggle.
- Interactive Ticket Selector: Custom quantity counter (
+/-) with dynamic subtotal and tax calculation. - Promo Code Engine: Real-time discount codes (e.g.
FEST2026for 20% off,STUDENTfor 10% off). - Venue & Calendar Actions: One-tap "Add to Calendar" and "Get Venue Directions".
- Digital Pass Generation: Instant booking confirmation with a dedicated Digital QR Pass modal.
- Segmented Tabs: Switch seamlessly between Active Passes, Past Events, and Saved / Wishlist.
- Futuristic Boarding-Pass Cards: Perforated ticket divider, entry status badge (Confirmed / Checked In), attendee name, seat tier, and barcode.
- Fullscreen QR Code Modal: High-contrast scannable QR code for entry gate scanner admission.
- Pass Management: Ability to copy pass ID to clipboard or cancel booking with safety prompt.
- Profile Header: Avatar, full name, email, campus badge, and contact number.
- Stats Dashboard: Live counter of Saved Events, Campus Pass Tier, and Festrix Rank.
- Quick Settings: Edit profile details modal, Admin Portal quick access, About Festrix dialog, and secure Sign Out.
- Passcode Protection: Master passcode gate (
admin123) for organizers. - Live Analytics Dashboard:
- Total Active Events
- Total Passes Sold
- Total Revenue Generated (₹)
- Gate Check-In Counter (
x / y Admitted)
- Event Creator & Publisher: Full form with image picker, date & time pickers, category dropdown, capacity, tags, and "Feature on Carousel" toggle.
- Pass Verification & Gate Scanner: View all issued passes, live search attendee or ticket ID, and toggle "Admit / Checked In" status with one tap.
- Google Sign-In: Integrated with Firebase Auth and Google Sign-In.
- Email & Password Authentication: Dual register & sign-in forms with form validation.
- Instant Demo Mode: One-tap demo access (
Skip Login) for instant testing without Firebase configuration. - Automatic Fallback Caching: Works seamlessly offline with rich mock data when Firestore is unreachable.
lib/
├── admin/
│ ├── admin_dashboard.dart # Organizer analytics & event management hub
│ ├── admin_login.dart # Master passcode verification screen
│ ├── database.dart # Unified database re-export
│ ├── ticket_event.dart # Gate check-in & pass admission management
│ └── upload_events.dart # New event publisher with media & date pickers
├── models/
│ ├── booking_model.dart # Strongly-typed ticket pass & booking entity
│ ├── category_model.dart # Category metadata, gradients, and icons
│ ├── event_model.dart # Strongly-typed event entity with parsers
│ └── user_model.dart # User profile entity with saved events
├── pages/
│ ├── bottomnav.dart # Curved navigation bar with 4 core tabs
│ ├── categories_event.dart # Category-specific explorer with sorting
│ ├── detail_page.dart # Event overview, ticket selector & booking
│ ├── home.dart # Main explore feed, trending carousel & search
│ ├── profile.dart # User profile, statistics & settings
│ ├── registration.dart # My Passes (Active, Past, Saved)
│ └── signup.dart # Onboarding, Google & Email auth, Demo mode
├── services/
│ ├── auth.dart # AuthService with Google, Email & Demo login
│ ├── database.dart # Central DatabaseService with streams & cache
│ ├── mock_data_service.dart # Campus event pre-seeded fallback data
│ └── shared_pref.dart # Type-safe local preferences & bookmark storage
├── theme/
│ └── app_theme.dart # Electric Purple / Magenta Material 3 design
├── firebase_options.dart # Multi-platform DefaultFirebaseOptions
└── main.dart # App bootstrap & named route registry
- Flutter SDK (Dart
>=3.10.0 <4.0.0) - Android Studio / VS Code with Flutter extension
-
Clone the repository:
git clone https://github.com/Arfaa26/festrix.git cd festrix -
Install dependencies:
flutter pub get
-
Run automated quality checks & unit tests:
flutter test flutter analyze -
Launch the application:
flutter run
The codebase includes automated unit and model tests covering CategoryModel, EventModel, BookingModel, and MockDataService.
flutter test- Author: Arfa Altaf
- Built with: Flutter, Firebase, Dart, Curved Navigation Bar