GearHub is a high-performance, full-stack e-commerce solution built specifically for the bicycle industry. This project showcases advanced mobile development concepts, moving beyond static UIs into reactive state management and cloud-integrated backends.
- Framework: Flutter (Latest Stable)
- Backend: Firebase Auth (Secure Identity Management)
- State Management: GetX (Reactive Controllers & Dependency Injection)
- Navigation: GetX Named Routing (Clean & Decoupled)
- Architecture: Modular MVC (Model-View-Controller)
- 🔐 Professional Auth Suite: Secure login, account creation, and password recovery integrated directly with Firebase.
- ⚡ Reactive E-commerce Flow: Real-time cart updates and product interactions using GetX
Obxlisteners. - 🛣️ Centralized Routing: A dedicated routing system to manage complex app navigation without context-heavy code.
- 🎨 Modular UI Components: Reusable widgets like
ProductCardandInformationIconfor a scalable design system. - 🛡️ Robust Error Handling: Integrated
toast.dartutility for real-time user feedback on authentication and network status.
This project follows a strict modular structure to ensure maintainability:
lib/
├── firebase_auth/ # Firebase Authentication Logic
│ └── firebase_auth_services.dart
├── global/
│ └── common/ # Global Reusable Components
│ └── toast.dart
├── pages/ # Main UI & Logic Layers
│ ├── app_routes.dart # Navigation Constants
│ ├── get_routes.dart # GetX Page Mapping
│ ├── splash_screen.dart
│ ├── constructor/ # Data Models (product_constructor.dart)
│ ├── home_pages/ # E-commerce Modules (Cart, Home, Checkout)
│ │ └── (address.dart, cart.dart, home_screen.dart, etc.)
│ └── login_pages/ # Auth Screens (Login, Signup, Forgot Pass)
│ └── (login_page.dart, create_acc.dart, etc.)
└── main.dart
| Authentication | Home & Catalog | Checkout & Cart |
|---|---|---|
![]() |
![]() |
![]() |
-
Clone the Repository:
git clone https://github.com/SHADOWRULIN/GearHub-Ecom-GetX-Firebase.git
-
Add Firebase Credentials: Place your
google-services.json(Android) orGoogleService-Info.plist(iOS) in the appropriate directories. -
Install Dependencies:
flutter pub get
-
Launch Application:
flutter run
Muhammad Fahaz Khan
Full-Stack Flutter Developer
- GitHub: @SHADOWRULIN
- LinkedIn: Fahaz Khan
This project is licensed under the MIT License.



