Loading repository data…
Loading repository data…
FatBoyIL / repository
ReaderCity is a Kotlin Android book reader app using Jetpack Compose, Firebase, and Google Books API. Features book search, reading tracking, user authentication, and modern UI with MVVM architecture.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
A modern Android book reading application built with Jetpack Compose and Kotlin, designed to help users discover, track, and manage their reading journey.
The app follows MVVM (Model-View-ViewModel) architecture with:
Clone the repository
git clone https://github.com/FatBoyIL/ReaderCity.git
cd ReaderCity
Firebase Setup
google-services.json and place it in the app/ directoryGoogle Books API
Build and Run
./gradlew assembleDebug
app/src/main/java/com/jacknguyen/readerapp/
├── components/ # Reusable UI components
├── data/ # Data models and resources
├── di/ # Dependency injection modules
├── model/ # Data classes and entities
├── navigation/ # App navigation setup
├── network/ # API interfaces and network layer
├── repository/ # Data repository implementations
├── screen/ # UI screens and ViewModels
│ ├── details/ # Book details screen
│ ├── home/ # Home dashboard
│ ├── search/ # Book search functionality
│ └── stats/ # Reading statistics
└── utils/ # Utility classes and constants
fun searchBooks(query: String) {
viewModelScope.launch(Dispatchers.Default) {
when(val response = bookRepository.getAllBooks(query)) {
is Resource.Success -> {
listOfBooks = response.data!!
isLoading = false
}
is Resource.Error -> {
isLoading = false
Log.e("Network", "Failed getting books")
}
}
}
}
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)This project is licensed under the MIT License - see the LICENSE file for details.
FatBoyIL - GitHub Profile
Built with ❤️ using Kotlin and Jetpack Compose