Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alinachroma/bookshelf
An Android app that makes multiple requests to a web service and displays a list of books with images from the Google Books API. Created for demo purposes to demonstrate everything I learned within the "Android Basics with Compose" Course (Unit 5). Built fully with Jetpack Compose.
https://github.com/alinachroma/bookshelf
android android-app android-application coroutines google-api jetpack-compose retrofit2
Last synced: 18 days ago
JSON representation
An Android app that makes multiple requests to a web service and displays a list of books with images from the Google Books API. Created for demo purposes to demonstrate everything I learned within the "Android Basics with Compose" Course (Unit 5). Built fully with Jetpack Compose.
- Host: GitHub
- URL: https://github.com/alinachroma/bookshelf
- Owner: alinachroma
- Created: 2024-06-03T15:13:44.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-09-06T17:32:29.000Z (5 months ago)
- Last Synced: 2024-11-21T09:36:47.639Z (3 months ago)
- Topics: android, android-app, android-application, coroutines, google-api, jetpack-compose, retrofit2
- Language: Kotlin
- Homepage:
- Size: 297 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Bookshelf
An Android app that makes multiple requests to a web service and displays a list of books with images from the Google Books API. Created for demo purposes to demonstrate everything I learned within the "Android Basics with Compose" Course (Unit 5). Built fully with Jetpack Compose.
Project Screenshots:
![]()
## 🚀 Demo
| Offline-online behavior |
| ------------- |
| |🧐 Features
* The app uses Kotlin coroutines
* The app makes a request to the Google Books API using Retrofit
* UI layer and Data layer are separated
* The response is parsed using Gson
* Asynchronously downloaded images of the books along with their titles displayed in a vertical grid
* Manual Dependency Injection
* Coil is used to load and display images
* Tests for code that requires the network service, using dependency injection
💻 Built with
Technologies used in the project:
* Jetpack Compose
* Kotlin coroutines
* Retrofit
* Gson
* Coil
* Manual Dependency InjectionCredits
Library icons created by Good Ware - Flaticon