StudyFlow is an Android study planner app designed to help students manage study tasks and completion status in a simple and organized way.
This project was built as a portfolio project to strengthen modern Android development skills using Kotlin, Jetpack Compose, MVVM, Room, and StateFlow.
Status: Work in progress / MVP stage
Core task management, filtering, summary counts, and local persistence are implemented. UI refinement and additional features are planned.
StudyFlow focuses on building a maintainable Android app with reactive UI updates and local data handling.
The project is intended to demonstrate practical experience with Android architecture, state management, and offline-first functionality.
- Add new study tasks
- View all saved tasks
- Mark tasks as completed
- Filter tasks by:
- All
- Pending
- Completed
- View quick summary counts
- Persistent local storage with Room
- Kotlin
- Jetpack Compose
- MVVM Architecture
- Room Database
- StateFlow / Flow
- Navigation Compose
- Material 3
StudyFlow follows the MVVM pattern for clean separation of concerns and maintainable code structure.
UI → ViewModel → Repository → DAO → Room Database
- UI: Compose screens and reusable components
- ViewModel: manages UI state and user actions
- Repository: abstracts data access
- DAO / Room: handles local database operations
com.phil.studyflow
│
├── data
│ ├── local
│ └── repository
├── model
├── ui
│ ├── component
│ ├── navigation
│ ├── screen
│ └── theme
├── util
├── viewmodel
└── MainActivity.kt