An elegant, offline-first task management Android application demonstrating modern architecture patterns (MVVM + clean architecture), declarative UI, reactive data flow, and dependency injection.
Below is a gallery of the Task Manager app in action, showing the splash screen, task list, styling, and forms:
This project is built using industry-standard libraries and architectures:
- Core & Async: Kotlin, Coroutines, and Flow / StateFlow for reactive streams.
- UI: Jetpack Compose utilizing Material 3 components and edge-to-edge layouts.
- Database: Room Database for persistent local cache.
- Dependency Injection: Hilt (Dagger) for class decoupling and testability.
- Navigation: Type-safe navigation utilizing the Compose Navigation Component.
The codebase follows the official Android Architecture Guidelines (MVVM with Clean Architecture flow):
graph TD
subgraph UI [UI Layer]
A[MainActivity] --> B[TaskNavGraph]
B --> C[Screens: Splash / Home / Add-Edit / About]
C <--> D[ViewModels: HomeViewModel / AddEditViewModel]
end
subgraph Domain [Domain Layer]
D <--> E[Task Domain Model]
end
subgraph Data [Data Layer]
D --> F[TaskRepository]
F --> G[TaskDao]
G --> H[(Room SQLite Database)]
G --> I[TaskEntity]
I <-->|Mappers| E
end
style H fill:#4CAF50,stroke:#388E3C,stroke-width:2px,color:#fff
style E fill:#2196F3,stroke:#1976D2,stroke-width:2px,color:#fff
style D fill:#FF9800,stroke:#F57C00,stroke-width:2px,color:#fff
- Android Studio (Koala or newer)
- JDK 17
- Android SDK API level 34+
git clone https://github.com/TSR0705/Android-TaskManager-App.git
cd Android-TaskManager-App- Open the folder in Android Studio and let Gradle sync.
- Select an emulator or connect a device and click Run (
Shift + F10).
Generate a debug APK from the root directory:
# Windows
./gradlew assembleDebug
# macOS / Linux
./gradlew assembleDebugThe compiled output is located at: app/build/outputs/apk/debug/app-debug.apk
Licensed under the MIT License.




