- Post List
- Post Detail
- Post Comment
- User Detail
- User Album and Photos
- Photo FullScreen
- Kotlin - First class and official programming language for Android development.
- Coroutines - Is light wight threads for asynchronous programming
- Flow Handle the stream of data asynchronously that executes sequentially.
- Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
- LiveData - Data objects that notify views when the underlying database changes.
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- ViewBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
- Navigation Component - helps you implement navigation, from simple button clicks to more complex patterns, such as app bars and the navigation drawer
- Dependency Injection dependency injection is a technique whereby one object (or static method) supplies the dependencies of another object. A dependency is an object that can be used (a service).
- Hilt-android - Hilt provides a standard way to incorporate Dagger dependency injection into an Android application.
- Dagger2 - Dagger is a fully static, compile-time dependency injection framework for both Java and Android (If you want to see this project using dagger, you can go to this branch)
- Retrofit - A type-safe HTTP client for Android and Java.
- Clean Architecture - Practical Software Architecture Solutions from the Legendary Robert C. Martin (“Uncle Bob”) By applying universal rules of software architecture
- OkHttp An HTTP & HTTP/2 client for Android and Java applications.
- Lottie an open source animation file format that’s tiny, high quality, interactive, and can be manipulated at runtime.
- Kotlinx Serialization Kotlin serialization consists of a compiler plugin, that generates visitor code for serializable classes, runtime library with core serialization API and support libraries with various serialization formats.
- Glide An image loading and caching library for Android focused on smooth scrolling
- Material Design Material is a design system created by Google to help teams build high-quality digital experiences for Android, iOS, Flutter, and the web.
- MockK Mocking library for Kotlin
- Turbin A small testing library for kotlinx.coroutines Flow
#Test
Just Follow my Github and star this repo
Copyright © 2021 Anggit Prayogo
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.