A cross-platform Flutter application for doctor-patient interactions, appointments, and telehealth functionality. This repository contains the Flutter project in the doctorapp/ folder.
Table of Contents
- Overview: Short project summary
- Features: What the app provides
- Tech Stack: Tools and frameworks used
- Prerequisites: What you need locally
- Quick Start: How to run locally
- Build & Release: Build commands for release artifacts
- Project Structure: Where key code lives
- Env & Assets: Environment variables and media files
- Testing: How to run tests
- Contributing: How to contribute
- License & Contact: License and author contact
Overview
Doctor App is a Flutter-based mobile application focused on scheduling, managing, and performing telehealth consultations. The project is organized under the doctorapp/ directory and targets Android, iOS, web, macOS, Linux and Windows via Flutter's multi-platform support.
Features
- Appointment Management: Full lifecycle management for appointments, cancellations, rescheduling, and history.
- Session Management: Track and manage consultation sessions, durations, and status.
- Teleconsultations: Secure audio/video consultations with integrated SDK support.
- ePrescription: Issue and manage electronic prescriptions for patients.
- Patient Health Record Access: View and manage patient medical records and histories.
- Income View: Dashboard for doctors to view earnings, invoices, and payment history.
- Notifications & Reminders: Appointment reminders, session alerts, and actionable notifications.
- Profile Management: Edit and manage doctor and patient profile details, credentials, and preferences.
Tech Stack
- Framework: Flutter
- Language: Dart
- Platforms: Android, iOS, Web, macOS, Windows, Linux
- Notable packages: Various platform plugins and media/audio/notification packages referenced in
doctorapp/pubspec.yaml.
Prerequisites
- Flutter SDK: Install Flutter (stable channel). See https://flutter.dev/docs/get-started/install
- Platform tools: Android Studio/SDK for Android, Xcode for iOS (macOS only).
- Command line:
git, basic shell.
Quick Start (Development)
-
Clone the repo:
git clone https://github.com/eChanneling-Revamp/Doctor-App.git
-
Change directory into the Flutter project and get packages:
cd doctorapp flutter pub get
-
Run on an attached device or emulator:
flutter run
-
To run on a specific platform (example Android):
flutter run -d android
Build & Release
-
Android APK:
flutter build apk --release
-
Android App Bundle:
flutter build appbundle --release
-
iOS (macOS host):
flutter build ipa --release
-
Web:
flutter build web --release
Refer to platform-specific deployment guides for store uploads and signing.
Project Structure
doctorapp/lib/main.dart: App entrypoint and top-level routing.doctorapp/lib/screens/: UI screens and pages.doctorapp/lib/models/: Data models used across the app.doctorapp/lib/services/: API clients, auth, and platform services.doctorapp/lib/widgets/: Reusable widgets and UI components.doctorapp/assets/anddoctorapp/images/: Static assets and images used by the app.doctorapp/pubspec.yaml: Dependency manifest and asset declarations.doctorapp/android/,doctorapp/ios/,doctorapp/web/: Platform hosts and native configuration.
See these files and folders for implementation details and to add new features.
Environment & Secrets
- The project contains an
.envfile atdoctorapp/.envfor local environment variables. Do not commit production secrets; use a secure secrets manager for production.
Testing
-
Run unit and widget tests:
flutter test
-
For integration tests, use
flutter driveor theintegration_testpackage as configured in the project.
Formatting & Analysis
-
Format Dart code:
flutter format .
-
Run static analysis (project already has
analysis_options.yaml):flutter analyze
Contributing
Contributions are welcome. Suggested workflow:
- Fork the repository and create a feature branch.
- Follow existing code style and run
flutter format. - Add tests for new logic where applicable.
- Open a pull request describing changes and testing steps.
Useful Links & Files
- App entry: doctorapp/lib/main.dart
- Dependency manifest: doctorapp/pubspec.yaml
- Environment file: doctorapp/.env
- Screens: doctorapp/lib/screens
- Assets: doctorapp/assets
License
This project does not include a license file in the repository root. If you want an open-source license, add a LICENSE file (for example, MIT).
Contact
If you need help or want me to expand any section (detailed setup for Android/iOS build signing, CI, or adding examples), tell me which area and I'll add it.