How mkparan/tilapiavision works
TilapiaVision is an offline Flutter app for presumptive screening of hemorrhagic lesions in Nile tilapia. The principal workflow is capturing or selecting an image, running on-device YOLO11n inference, presenting a screening result, and retaining detections for review or export. The README also documents farm setup, biosecurity guidance, settings, localization, and image-retention behavior. Dart source was not provided, so relationships below are limited to README-documented behavior; uncertain internal wiring is omitted or marked dashed.
Main entry points: app_shell.dart App shell · detection_history_screen.dart Detection history · detection_repository.dart Detection repository · result_screen.dart Screening result
Components 20
App and navigation
- App entry
lib/main.dart - App shell
lib/presentation/app_shell.dart - Settings
lib/presentation/screens/settings/settings_screen.dart - Localization
lib/core/app_localizations.dart - Disclaimer gate
lib/presentation/screens/onboarding/disclaimer_gate_screen.dart
Screening workflow
- Camera capture
lib/presentation/screens/capture/camera_capture_screen.dart - Gallery picker
lib/presentation/screens/capture/camera_capture_screen.dart - TFLite inference
lib/services/detection/tflite_detection_engine.dart - Tilapia verifier
lib/services/verification/tflite_tilapia_verifier.dart - Detection state
lib/presentation/providers/detection_provider.dart - Screening result
lib/presentation/screens/result/result_screen.dart
Records and storage
- Detection history
lib/presentation/screens/history/detection_history_screen.dart - Detection detail
lib/presentation/screens/history/detection_detail_screen.dart - Detection repository
lib/data/repositories/detection_repository.dart - CSV log
lib/data/local/csv_store.dart - Image storage
lib/services/storage_service.dart
Farm and guidance
- Farm profile setup
lib/presentation/screens/onboarding/farm_profile_setup_screen.dart - Farm profile data
lib/data/repositories/farm_profile_repository.dart - Biosecurity tips
lib/presentation/screens/biosecurity/biosecurity_tips_screen.dart
Other components
- Farmer
Connections 20
- Farmer → App entry: opens app
- App entry → App shell: starts
- Farmer → Camera capture: captures image
- Farmer → Gallery picker: selects image
README.md - Camera capture → TFLite inference: submits image
- TFLite inference → Screening result: returns inference
README.md - Farmer → Screening result: views screening
- Screening result → Detection repository: saves detection
- Detection repository → CSV log: logs records
README.md - Detection repository → Image storage: caches images
README.md - Farmer → Detection history: reviews records
- Detection history → Detection detail: opens record
README.md - Detection history → CSV log: exports CSV
README.md - Detection detail → Image storage: reads photo
- Farmer → Farm profile setup: sets up farm
- Farm profile setup → Farm profile data: stores profile
- Farmer → Biosecurity tips: reads guidance
- Farmer → Settings: configures app
- App shell → Disclaimer gate: gates access
- App shell → Localization: localizes UI