A simple book finder android application to search for books using api from Google Books Api
This project is built to show how to build modern android applications following Guide to app architecture with kotlin and some of the android jetpack libraries.
After cloning the project, in your projects root directory, create a file apikey.properties
.
You'll need an api key from Google Books Api.
Add the line Books_ApiKey = "YOUR-API-KEY"
to that file.
- Foundation - Components for core system capabilities, Kotlin extensions and support for
multidex and automated testing.
- AppCompat - Degrade gracefully on older versions of Android.
- Android KTX - Write more concise, idiomatic Kotlin code.
- Architecture - A collection of libraries that help you design robust, testable, and
maintainable apps. Start with classes for managing your UI component lifecycle and handling data
persistence.
- Data Binding - Declaratively bind observable data to UI elements.
- LiveData - Build data objects that notify views when the underlying database changes.
- Navigation - Handle everything needed for in-app navigation.
- Room - Access your app's SQLite database with in-app objects and compile-time checks.
- Paging - Load and display small chunks of data at a time.
- ViewModel - Store UI-related data that isn't destroyed on app rotations. Easily schedule asynchronous tasks for optimal execution.
- UI - Details on why and how to use UI Components in your apps - together or separate
- Fragment - A basic unit of composable UI.
- Recyclerview - Display large sets of data in your UI while minimizing memory usage.
- Third party
- Koin for dependency injection.
- Glide for image loading.
- Moshi A modern JSON library for Android and Java. It makes it easy to parse JSON into Java objects.
- Retrofit A type-safe HTTP client for Android.
- Timber A logger with a small, extensible API which provides utility on top of Android's normal Log class.
- Kotlin Coroutines for managing background threads with simplified code and reducing needs for callbacks.
If you like the project, do well to star it and also keep a watch.