You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
4 weeks ago | |
|---|---|---|
| android | 1 month ago | |
| assets | 4 weeks ago | |
| ios | 10 months ago | |
| lib | 4 weeks ago | |
| linux | 5 months ago | |
| macos | 10 months ago | |
| test | 10 months ago | |
| web | 10 months ago | |
| windows | 5 months ago | |
| .gitignore | 10 months ago | |
| .metadata | 10 months ago | |
| README.md | 3 months ago | |
| analysis_options.yaml | 10 months ago | |
| devtools_options.yaml | 10 months ago | |
| pubspec.lock | 1 month ago | |
| pubspec.yaml | 4 weeks ago | |
README.md
HMG_QLine
HMG_QLine is a Flutter-based application designed for efficient patient management and queue handling in healthcare environments. It features multiple screens for patient display, robust logging, and background service integration to ensure reliability and uptime.
Features
- Patient queue management across all screens
- Foreground service to monitor app state and auto-reopen if terminated or backgrounded
- SignalR integration for real-time updates
- Persistent logging with automatic log file rotation
- Dynamic app versioning
- Modular architecture with ViewModels and Services
Getting Started
Prerequisites
- Flutter SDK (>=3.0.0)
- Dart (>=2.17.0)
- Android Studio or Xcode for platform-specific builds
Installation
- Clone the repository:
git clone https://github.com/your-org/HMG_QLine.git cd HMG_QLine - Install dependencies:
flutter pub get - Run the app:
flutter run
Project Structure
lib/- Main source codeapi/- API integrationconfig/- Configuration filesconstants/- App-wide constantsmodels/- Data modelsrepositories/- Data repositoriesservices/- Business logic and background servicesutilities/- Utility functionsview_models/- State managementviews/- UI screens
assets/- Fonts, images, icons, and tonesandroid/,ios/,macos/,linux/,windows/- Platform-specific code
Logging
- Logs are saved in the device's external storage under
/logs/ - Log files are rotated every 48 hours
- Each log entry includes a timestamp, source, and type
Foreground Service
- Monitors app lifecycle
- Automatically reopens or restarts the app if terminated or sent to background
- Checks app status every minute
SignalR Integration
- Reconnects automatically after disconnection
- Ensures real-time updates for patient queues
Debugging
- Debuggable builds can be enabled in
android/app/build.gradlefor troubleshooting
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
License
This project is licensed under the MIT License.