A modular, fully offline-first Flutter app designed for capturing, managing, and exporting field audit data with support for media, dynamic forms, location tagging, and more. Built with MVVM + BLoC, SQLite, and feature-first architecture.
- β 100% offline β no backend required
- π Dynamic form builder (JSON-based)
- πΊοΈ Auto location capture
- πΈ Media support (photos, video, audio)
- π€ Export logs as PDF / CSV / ZIP
- π§ BLoC + MVVM architecture
- ποΈ SQLite for local data storage
- π― Feature-first folder structure
- π Optional offline PIN-based auth
| Sector | Use |
|---|---|
| π§βπΎ Agriculture | Crop monitoring, fertilizer inspection |
| ποΈ Infrastructure | Road & bridge checks, utility audits |
| π‘οΈ Security | Guard patrolling logs, incident capture |
| π Logistics | Delivery proofs, damage reports |
| π₯ Healthcare | Field medical or survey reports |
| π« Education | School audits, facility inspections |
| Log Creation | Form Input | PDF Export |
|---|---|---|
| Coming Soon | Coming Soon | Coming Soon |
- Define forms with fields: text, dropdown, checkbox, date, number
- Stored locally in assets or file system
- Rendered dynamically
- Attach photos, videos, or audio
- Optional image annotation
- All stored locally
- GPS coordinates (optional)
- Timestamp for every log
- Future support for geo-fencing
- PIN-based login (stored encrypted)
- Multi-profile support coming soon
- PDF: formatted reports
- CSV: spreadsheet-friendly data
- ZIP: full bundle with media
- Share via Bluetooth, USB, or local storage
Built using feature-first architecture with separation of concerns:
- Model β View β ViewModel (BLoC) pattern
- Modular, scalable and testable
| Layer | Tools |
|---|---|
| UI | Flutter 3.x |
| Architecture | MVVM + BLoC |
| Database | SQLite (via sqflite) |
| State Management | flutter_bloc |
| Offline Storage | path_provider, file, shared_preferences |
| Media | image_picker, camera, audioplayers |
| Export | pdf, csv, archive |
| Location | geolocator, geocoding |
git clone https://github.com/your-username/fieldtrace.git
cd fieldtrace