Skip to content

A modern full-stack medical appointment and diagnostics app built with Flutter and Firebase. Features home/lab booking, real-time tracking, and glassmorphism UI.

License

Notifications You must be signed in to change notification settings

Muhammad-Bilal-03/vital_sync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

VitalSync πŸ₯

Flutter Firebase Dart License

The bridge between patient vitality and medical data.

VitalSync is a modern, full-stack medical application built with Flutter and Firebase. It facilitates seamless booking of medical tests (Home & Lab visits), real-time order tracking, and health profile management using a "Neo-Medical" aesthetic with glassmorphism and smooth animations.


πŸ“Έ App Screenshots

Login & Auth Home Dashboard Test Booking
Login Screen Home Screen Booking
Cart & Checkout Order Tracking Profile & Settings
Cart Tracking Profile

✨ Key Features

  • πŸ” Secure Authentication: Robust Login and Sign-up flow using Firebase Auth with persistent user sessions.
  • πŸ§ͺ Dynamic Test Booking:
    • Toggle between Home Visit and Lab Visit.
    • Slot selection logic ensuring availability.
    • Address capture for home collections.
  • πŸ›οΈ Smart Cart System: Add multiple tests or health packages, view discounts, and checkout securely.
  • πŸ“¦ Health Packages: Special "Bundles" (e.g., Full Body Checkup, Heart Health) populated via a custom Data Seeder.
  • 🚚 Real-time Order Tracking: Visual stepper UI showing order status (Placed β†’ Sample Collected β†’ Processing β†’ Report Ready).
  • πŸ”” Notification System: In-app notification center for booking updates.
  • 🎨 Neo-Medical UI: Custom "GlassCard" components, skeleton loading states (shimmer), and micro-interactions using flutter_animate.

πŸ› οΈ Tech Stack & Architecture

This project follows a clean Layered Architecture to ensure scalability and maintainability.

Core Technologies

  • Frontend: Flutter (Dart 3.0+)
  • Backend: Firebase (Firestore Database, Authentication)
  • State Management: Provider (MVVM pattern)
  • Dependency Injection: GetIt
  • Routing: Standard Flutter Navigation

Architecture Overview

  • lib/core: Constants, Theme data, DI setup, and Utilities (Result types).
  • lib/models: Data classes (Order, Test, User) with JSON serialization.
  • lib/repositories: The data layer that communicates directly with Firestore.
  • lib/providers: The view-model layer that holds state and business logic.
  • lib/ui: Screens and reusable widgets (GlassCard, VitalAppBar, SpeedDialFab).

πŸš€ Getting Started

Prerequisites

  • Flutter SDK (v3.0.0 or higher)
  • Dart SDK
  • Android Studio / VS Code

Installation

  1. Clone the repository:

    git clone [https://github.com/Muhammad-Bilal-03/campus_event_companion.git](https://github.com/Muhammad-Bilal-03/vital_sync.git)
    cd vital_sync
  2. Install dependencies:

    flutter pub get
  3. Firebase Setup:

    • Create a project in the Firebase Console.
    • Add an Android App with package name: com.example.fire_base_project.
    • Download google-services.json and place it in android/app/.
    • Enable Authentication (Email/Password) and Firestore Database in the console.
  4. Run the App:

    flutter run

Note: On the first run, the app includes a DataSeeder that will automatically populate your Firestore with sample Tests and Packages if the collection is empty.


πŸ“‚ Folder Structure


lib/
β”œβ”€β”€ core/               # App-wide constants, themes, and utils
β”œβ”€β”€ models/             # Data models (JSON/Firestore serializable)
β”œβ”€β”€ providers/          # State management (ChangeNotifiers)
β”œβ”€β”€ repositories/       # Data fetching logic (Firebase calls)
β”œβ”€β”€ ui/
β”‚   β”œβ”€β”€ screens/        # Full application screens
β”‚   β”‚   β”œβ”€β”€ auth/       # Login/Signup
β”‚   β”‚   β”œβ”€β”€ booking/    # Lab & Home booking logic
β”‚   β”‚   β”œβ”€β”€ cart/       # Cart management
β”‚   β”‚   β”œβ”€β”€ checkout/   # Order placement
β”‚   β”‚   β”œβ”€β”€ home/       # Dashboard & Navigation
β”‚   β”‚   β”œβ”€β”€ orders/     # Order history & Details
β”‚   β”‚   └── profile/    # User settings
β”‚   └── widgets/        # Reusable UI components (GlassCard, etc.)
└── main.dart           # App entry point


πŸ“¦ Dependencies

Major packages used in this project:

Package Purpose
provider State Management
firebase_core Firebase Initialization
cloud_firestore Database
firebase_auth User Authentication
flutter_animate UI Animations
google_nav_bar Modern Bottom Navigation
lucide_icons Clean Iconography
another_stepper Order Tracking UI
shimmer Loading Effects

🀝 Contributing

Contributions are welcome! Please fork the repository and submit a pull request for any features or bug fixes.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ‘€ Author

Muhammad BilalA

About

A modern full-stack medical appointment and diagnostics app built with Flutter and Firebase. Features home/lab booking, real-time tracking, and glassmorphism UI.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published