InsightMed is a Flutter mobile app that streamlines the patient and clinician workflow around appointments, clinical notes, and AI-assisted chest X-ray reviews. It integrates image submission with vitals and symptoms, then surfaces AI status, confidence, and summary insights to support clinical review.
Highlights
- Role-aware experience for patients and doctors, with tailored navigation and actions.
- Secure auth with persistent sessions and theme mode preference.
- Appointment booking, availability, and doctor-wide appointment oversight.
- Medical ray upload with vitals and symptoms, plus AI review output.
- Patient profile management and doctor-facing patient lists and notes.
Tech Stack
- Flutter + Dart
- State management:
flutter_bloc - Networking:
dio - Dependency injection:
get_it - Local persistence:
shared_preferences,flutter_secure_storage - Media:
cached_network_image,file_picker
How The App Works
- On launch, the app checks for a saved auth token to route users to onboarding or the main experience.
- Patients can submit chest X-rays with vitals and symptoms.
- The backend processes the submission and returns AI fields such as status, confidence, and summary.
- Doctors can review submitted rays, see AI context, and manage patients, appointments, and notes.
Core Features
- Authentication: registration, login, logout, and password reset.
- Appointments: browse availability, book, and manage upcoming visits.
- Rays: upload chest X-rays, view AI status and confidence, and review AI summaries.
- Notes: clinician notes creation, updates, and removal.
- Profiles: view and update personal profile data.
- Theming: light/dark/system theme modes.
Getting Started
Prerequisites
- Flutter SDK (Dart SDK included)
- Android Studio or VS Code with Flutter and Dart plugins
- Xcode if building for iOS
Setup
- Install dependencies:
flutter pub get- Verify environment:
flutter doctor- Run the app on a device or emulator:
flutter runBuild Releases
Android:
flutter build apk --releaseiOS (macOS + Xcode required):
flutter build ipa --releaseConfiguration
- API base URL is set in
lib/core/services/dio/auth_dio.dartand mirrored inlib/core/constants/end_ponits.dart. - Update those locations to point to your backend environment.
Project Structure
insight_med/
├── android/ # Android specific files and configurations
├── assets/ # Images and other app assets
├── lib/
│ ├── core/ # Shared utilities, constants, models, services
│ └── features/ # Feature modules (auth, appointments, rays, notes, etc.)
├── test/
├── pubspec.yaml
└── README.md
LinkedIn Post