A program written entirely in Kotlin using the principles of Clean Architecture according to the MVVM pattern.
An application that shows a list of anime and detailed information about them, the ability to search, as well as add to favorites. The selected data is stored in a remote database on the server Back4App
Libraries
Android Jetpack
-
ViewBinding View binding is a feature that makes it easier for you to write code that interacts with views.
-
Lifecycle An interface that automatically responds to lifecycle events.
-
Preference Build interactive settings screens without needing to interact with device storage or manage the UI.
-
Paging 2 Swap Library helps to load and display small pieces of data at the same time. Downloading partial data on demand reduces the use of network bandwidth and system resources.
-
Navigation Navigation refers to interactions that allow users to navigate through , enter, and exit various parts of the content in your app. Navigation component Android Jetpack helps you navigate, from simple button clicks to more complex templates like application panels and navigation bar. The navigation component also provides a consistent and predictable user interface, adhering to an established set of principles.
-
LiveData Data objects that notify views of changes to the underlying database.
-
Kotlin flows In coroutines, a flow is a type that can emit multiple values sequentially, as opposed to suspend functions that return only a single value. For example, you can use a flow to receive live updates from a database.
-
ViewModel Data related to the user interface that is not destroyed when the application is rotated. Easily schedule asynchronous tasks for optimal execution.
DI
- Hilt Hilt is a dependency injection library for Android that reduces the execution time of manual dependency injection into your project. Performing manual dependency injection requires that you create each class and its dependencies manually, and use containers to reuse and manage dependencies.
Image
- Picasso Picasso allows you to easily upload images to your app - often in a single line of code.
HTTP
-
Retrofit2 Type-safe HTTP client for Android and Java.
-
OkHttp HTTP + HTTP/2 client for Android and Java applications.
Coroutines
- Kotlin Coroutines Coroutines is a rich library for coroutines developed by JetBrains. It contains a number of high-level primitives with support for coroutines, which are discussed in this guide, including startup, asynchrony, and others.
GitHub Custom Libraries
-
Simple Rating View A rating toggle for Android which switches between 3 rating levels: positive, neutral, and negative.
-
Expandable TextView ExpandableTextView is an Android library that allows developers to easily create an TextView which can expand/collapse just like the Google Play's app description. Feel free to use it all you want in your Android apps provided that you cite this project.
-
Flow Layout Extended linear layout that wrap its content when there is no place in the current line.
-
Pretty Time Social Style Date and Time Formatting for Java
-
Shimmer Shimmer is an Android library that provides an easy way to add a shimmer effect to any view in your Android app.