A modern Android application built using Kotlin, Jetpack Compose, Room Database, MVVM Architecture, Kotlin Flow, and StateFlow.
The application allows users to manage student records with complete CRUD (Create, Read, Update, Delete) functionality while providing automatic UI updates through a reactive architecture.
- ➕ Add New Students
- 📋 View All Students
- ✏️ Edit Student Details
- 🗑️ Delete Students
- 🔄 Real-Time UI Updates
- 💾 Local Data Persistence with Room Database
- 📦 Structured Data Storage
- ⚡ Fast Data Access
- 🏗️ MVVM Architecture
- 📦 Repository Pattern
- 🔄 Reactive Programming with Flow & StateFlow
- 🎯 Separation of Concerns
- ⚡ Automatic UI Synchronization
| Technology | Purpose |
|---|---|
| Kotlin | Programming Language |
| Jetpack Compose | Modern UI Toolkit |
| Material 3 | UI Components |
| Room Database | Local Storage |
| MVVM | Architecture Pattern |
| Repository Pattern | Data Layer Management |
| Coroutines | Asynchronous Operations |
| Flow | Reactive Data Stream |
| StateFlow | UI State Management |
UI (Compose)
│
▼
ViewModel
│
▼
StateFlow
│
▼
Repository
│
▼
DAO
│
▼
Room Database
@Entity(tableName = "students")
data class StudentEntity(
@PrimaryKey(autoGenerate = true)
val id: Int = 0,
val name: String,
val course: String,
val semester: Int
)Add new student records.
Display all students stored in the database.
Edit and update existing student information.
Remove students from the database.
This project uses Kotlin Flow and StateFlow for reactive UI updates.
Room Database
↓
Flow
↓
Repository
↓
StateFlow
↓
Compose collectAsState()
↓
Automatic UI Updates
Whenever data changes in the database:
- Insert Student
- Update Student
- Delete Student
The UI updates automatically without manually refreshing data.
- Room Database Integration
- MVVM Architecture
- Repository Pattern
- ViewModel & ViewModel Factory
- State Management
- Coroutines
- Kotlin Flow
- StateFlow
- CRUD Operations
- Reactive Programming
- Modern Android Development
git clone https://github.com/IronMan0208/Student-Manager.gitOpen the project in Android Studio.
Build and run on an Emulator or Physical Device.
- 🔍 Search Students
- 📊 Student Statistics Dashboard
- 🌙 Dark Mode Support
- 🏷️ Course-Based Filtering
- 📅 Admission Date Tracking
- ☁️ Firebase Integration
- 🔐 User Authentication
- 📤 Export Student Data
Ajay Kumar
Android Developer focused on building modern Android applications using Kotlin, Jetpack Compose, Room Database, MVVM Architecture, Flow, and Clean Architecture principles.
GitHub: https://github.com/IronMan0208
If you found this project useful, please consider giving it a ⭐ on GitHub.

