Master branch is the final submission (submission 2)
Just star or fork this repository, and follow my github. You have supported me!
This repository contains the source code of my submissions project at Dicoding "Belajar Pengembangan Aplikasi Android Intermediate" course, start from the first submission until the final submission. This course is a part of self-paced learning at Bangkit 2022 Mobile Development learning path.
REST API: https://story-api.dicoding.dev/v1
- Andoidx
- Glide
- Retrofit
- OkHttp
- Lifecycle & LiveData
- Coroutines
- Room
- Android KTX
- Mockito
- Espresso
- Swipe Refresh
- Google Map Services
- Mock web Server
- Espresso Idling Resources
- Paging3
- Kotlin Kapt
- MVVM (Model-View-ViewModel) Architecture
- Room Persistence for local database
- ViewBinding & DataBinding
- Retrofit to request api network
- Glide for load image from url
- Error handling when API's request failed
- Loading indicator
- Displaying a bunch of data with recyclerview
- Authentication
- Form validation with RegEx
- Showing stories location with google maps api
- Upload story (image, description, and location) to the server
- Change language (localization)
- Filter story based on location and without location
- Paging3 implementation with remote mediator
- Offline support
- Rotate image in detail story
Testing scenarios avalaible in 'skenario-testing.txt' file