Dozy is a production-ready offline-first mobile application built with Flutter, designed to function seamlessly without an internet connection while maintaining reliable data synchronization with a remote server.
It demonstrates modern mobile system design with:
- 📱 Offline-first architecture
- 💾 Local persistence with SQLite
- 🔄 Intelligent background sync
- 🧠 Predictable state management with BLoC
- 🌐 Node.js REST backend
- 🧩 Clean layered architecture
This project showcases:
- Mobile-first data consistency
- Offline/online conflict resolution strategies
- Clean architecture separation
- Scalable state management patterns
| Category | Technology |
|---|---|
| Frontend | Flutter, Dart |
| State Management | BLoC |
| Local Storage | SQLite (sqflite) |
| Backend | Node.js, Express |
| Sync Layer | Custom offline → online sync |
| Architecture | Clean Architecture |
- All user actions saved locally first
- Full app functionality without internet
- SQLite used as primary data source
- Automatic sync when network is available
- Queued operations flushed safely
- Timestamp/version based conflict resolution
- Predictable event → state flow with BLoC
- Separation of UI and business logic
- Testable and scalable logic layers
- Node.js REST API for remote persistence
- Sync endpoints for reconciliation
- Stateless, scalable backend design



