- An Android application built with Kotlin, MVVM and Jetpack Compose that allows you to manage users — view, add, and delete also following modern Android development practices.
Displaying list of users:
- Fetch and display users from the last page of the API.
- Shows user name, email, and creation time (relative to now).
- Displays proper loading and error UI states.
Adding new user:
- Click + to open a dialog and input name and email.
- After a successful 201 response, the new user appears in the list.
Removing existing user:
- Long-press a user to open a confirmation dialog.
- On confirmation and 204 success response, the user is removed from the list.
Minimum SDK: 21 (Android 5.0 Lollipop)
- Language : Kotlin
- Design : Jetpack Compose
- Android Architecture : MVVM
- Dependency Injection : Hilt
- Concurrency : kotlin Coroutines
- State Management : StateFlow & SharedFlow
- Networking libraries : Retrofit & okHttp Interceptor
- Testing : JUnit, Mockito & Turbine
- Fully supports device rotation with proper state handling.
- Uses sealed classes for UI state management (Loading, Success, Error, Empty).
- Utilizes SharedFlow for one-time UI events (e.g. toasts/messages).
- Clean lifecycle handling using StateFlow to persist UI state across recompositions and config changes.
If this project helps you in anyway, show your love ❤️ by putting a ⭐ on this project ✌️
I’m Hardi Rachh, an experienced Android developer who loves exploring new frameworks and tools. Always open to connect and collaborate, feel free to reach out to me on: 😊
LinkedIn : https://www.linkedin.com/in/hardi-r/
Medium : https://hardirachh.medium.com/