Artjuna is a social e-commerce platform where customers can create and buy personalized products by combining their own style inspiration with various art styles of artisans with the help of AI technology.
if you are interested in discussing this project issues with us, please contact us or send an email to artjuna.bangkit@gmail.com
This is a monorepo for Artjuna, a project created for Bangkit 2022 Capstone Project
🗡️ Artjuna demonstrates modern Android development with Koin, Coroutines, Flow, Jetpack (Room, ViewModel), and Material Design based on MVVM architecture.
Go to the Here to download the latest APK.
- Minimum SDK level 21
- Kotlin based, Coroutines + Flow for asynchronous.
- Koin for dependency injection.
- Jetpack
- Lifecycle - Observe Android lifecycles and handle UI states upon the lifecycle changes.
- ViewModel & LiveData - Manages UI-related data holder and lifecycle aware. Allows data to survive configuration changes such as screen rotations.
- ViewBinding - Generate binding class to make it easier for interacts with the views from the kotlin class.
- Room Persistence - Constructs Database by providing an abstraction layer over SQLite to allow fluent database access.
- Navigation - Make interactions that allow users to navigate across, into, and back out from the different pieces of content within the app
- Architecture
- MVVM Architecture
- Repository Pattern
- Retrofit2 & OkHttp3 - Construct the REST APIs.
- Glide - Loading images from network.
- Material-Components - Material design components for building ripple animation, and CardView.
- Firebase Auth - Handle user authentication with many different credential
- SDP Scalable Size Unit - Make a scalable views that supports multiple screens and devices
- CircleImageView - Create circle image
- Shimmer - Improve user experience by show skeleton items when the content is loading
- Lottie - Create animation of an empty state
Artjuna is based on the MVVM architecture and the Repository pattern.