-
Minimalist and Clean UI thanks to Gloria Ntawuruhunga for the design material
-
Carousel to show highlights product
-
Search and Checkout Feature
-
Random user generator thanks to Mockaroo for providing dummy user data
Luxmarket is a concept e-commerce app built with Jetpack Compose and Material 3 with clean architecture impementation. This App does not use any local or online databases instead, it uses JSON and hard-coded data for the data source, which would look like this in the repository class. :
private val _carts = MutableSharedFlow<List<CartItem>>(replay = 1)
private val _sharedFavorites = MutableSharedFlow<List<Int>>(replay = 1)
private val _cartsCounter = MutableSharedFlow<Int>(replay = 1)
val sharedFavorites: SharedFlow<List<Int>> = _sharedFavorites
val sharedCarts: SharedFlow<List<CartItem>> = _carts
val cartsCounter: SharedFlow<Int> = _cartsCounter
@OptIn(ExperimentalSerializationApi::class)
private val users: List<User> = Json.decodeFromStream(context.assets.open("User.json"))
init {
externalScope.launch {
_sharedFavorites.emit(Application.favorites)
_carts.emit(Application.cart)
_cartsCounter.emit(Application.cart.size)
}
}
You can try the apps from release folder or here