BookFinderApp is a modern Android application built with Kotlin and Jetpack Compose that transforms the way you discover and organize books. With an intuitive interface and powerful search capabilities, finding your next favorite book has never been easier.
"Every book is a new adventure waiting to be discovered."
- Lightning Fast Search: Find books instantly by title
- Offline Access: Save your discoveries for later, even without internet
- Beautiful Design: Modern Material 3 UI that's easy on the eyes
- Simple & Clean: Focus on what matters - discovering great books
- Search thousands of books by title using online providers
- Real-time search suggestions and results
- Fast and responsive search experience
| Information | Description |
|---|---|
| π Title & Author | Complete book details and author information |
| π’ Publisher | Publishing house and publication details |
| π·οΈ Categories | Genre and topic classifications |
| π Description | Full book synopsis and overview |
| πΌοΈ Cover Art | High-quality book cover images |
- Save Books: Keep your discoveries in a personal library
- Offline Access: View saved books anytime, anywhere
- Easy Management: Remove books with a single tap
- Persistent Storage: Your library survives app restarts
- View all your saved books in one place
- Quick access to book details
- Clean, organized book collection display
- Room Database: Local storage and data management
- Content Provider: Data sharing and persistence layer
- Repository Pattern: Clean separation of data sources
- MVVM: Modern Android architecture pattern
- Android Studio Arctic Fox or newer
- Android SDK 21+ (Android 5.0+)
- Kotlin 1.8+
-
Clone the repository
git clone https://github.com/KerimSikalo/BookFinderApp.git cd BookFinderApp -
Open in Android Studio
- Launch Android Studio
- Select "Open an existing project"
- Navigate to the cloned repository
-
Sync dependencies
- Click "Sync Project with Gradle Files"
- Wait for the sync to complete
-
Run the app
- Connect an Android device or start an emulator
- Click the "Run" button or press Ctrl+R
π¦ BookFinderApp
βββ π ui/screens/ # Jetpack Compose screens
β βββ HomeScreen.kt # Main library view
β βββ SearchScreen.kt # Book search interface
β βββ DetailsScreen.kt # Book details view
βββ π repositories/ # Data layer
β βββ BookRepository.kt # Data fetching & persistence
βββ π model/ # Data models
β βββ Book.kt # Book entity definitions
βββ π components/ # Reusable UI components
β βββ BookCard.kt # Book display components
βββ π provider/ # Data providers
βββ BookProvider.kt # Content provider logic
- Open the app and navigate to the Search screen
- Enter a book title in the search bar
- Browse through the results
- Tap on any book to view detailed information
- From the book details screen, tap the "Save" button
- The book will be added to your personal library
- Access saved books from the Home screen anytime
- View all saved books on the Home screen
- Tap any book to view details again
- Remove books with a single tap on the delete button
Contributions make the open-source community an amazing place to learn, inspire, and create! Any contributions you make are greatly appreciated.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Found a bug? Please open an issue with:
- Device and Android version
- Steps to reproduce
- Expected vs actual behavior
- Screenshots (if applicable)
- Google for Jetpack Compose and Material Design
- Book APIs for providing comprehensive book data
- Android Community for excellent documentation and tutorials
- Open Source Contributors who inspire continuous learning
Kerim Sikalo
- π§ Email: kerim.sikalo1@gmail.com
- π GitHub: @KerimSikalo
- πΌ LinkedIn: Connect with me


