Differences

This shows you the differences between two versions of the page.

Link to this comparison view

android:proiect:2025:proiecte:mybookshelfapp [2025/05/30 02:29]
andrei_mihai.canuta created
android:proiect:2025:proiecte:mybookshelfapp [2025/05/30 02:34] (current)
andrei_mihai.canuta
Line 1: Line 1:
-My Bookshelf App+====== ​My Bookshelf App ======
  
-###### ​CANUTA Andrei-Mihai,​ SCPD-1+===== CANUTA Andrei-Mihai,​ SCPD-1 ​=====
  
-## Overview+==== Overview ​====
  
-**My Bookshelf** is an Android application developed in **Kotlin** using **Jetpack Compose**. It helps users organize and manage ​their book collections. The application integrates with the **Google Books API** for book search and utilizes **Room database** for offline persistence.+**My Bookshelf** is an Android application developed in **Kotlin** using **Jetpack Compose**. It helps users organize, search, ​and manage ​a personal library of books.
  
-## Features+The app integrates with the **Google Books API** to fetch book information and uses **Room Database** for local storage of user selections.
  
-**Home Screen**: View the list of saved books from the local database. +----
-**Search Screen**: Search for books using the Google Books API. +
-**Book Details**: View book details in a popup (title, author, cover, description,​ rating). +
-**Add Book**: Add books from the search screen to the local database. +
-- **Update Status**: Change the status of a book (Should Read, Reading, Read). +
-- **Delete Book**: Delete books with confirmation prompt. +
-- **Filter**: Filter books by status using chips.+
  
-## Technologies Used+==== Features ====
  
-**Kotlin** +  ​* **Home Screen** — View saved books from the local database 
-**Jetpack Compose** +  * **Search Screen** — Query books using Google Books API 
-**Navigation Component** +  * **Book Details** — View cover, title, author, description,​ and rating in a styled popup 
-**Room Database** +  * **Add Book** — Save books from search results to the local collection 
-**Retrofit** +  * **Update Status** — Change status between //Should Read//, //​Reading//,​ and //Read// 
-**Google Books API** +  * **Delete Book** — Remove a book with confirmation 
-**MVVM Architecture**+  ​* ​**Filter** — Filter books by status using selection chips
  
-## Book Statuses+----
  
-Books can have one of three statuses:+==== Technologies Used ====
  
-- `Should Read` – default when adding a book +  * Kotlin 
-- `Reading` +  * Jetpack Compose 
-- `Read`+  * Navigation Component 
 +  * Room Database 
 +  * Retrofit 
 +  * Coil (Image loading) 
 +  * Google Books API 
 +  * MVVM Architecture
  
-## How to Run+----
  
-1. Clone the repository. +==== Book Statuses ==== 
-2. Open in Android Studio. + 
-3. Sync Gradle. +Each book can have one of the following statuses: 
-4. Run the application ​on an emulator or real device.+ 
 +  * **Should Read** — default when added 
 +  * **Reading** 
 +  * **Read** 
 + 
 +These are visually styled using color-coded chips for intuitive filtering. 
 + 
 +---- 
 + 
 +==== How to Run ==== 
 + 
 +  - Clone or download ​the project ​repository 
 +  ​- ​Open the project ​in **Android Studio** 
 +  - Allow Gradle ​to sync all dependencies 
 +  ​- ​Run the app on a connected ​emulator or physical Android ​device 
 +  - Ensure the device has **Internet access** for API requests 
 + 
 +---- 
 + 
 +==== Known Issues ==== 
 + 
 +  * You **must increment the Room database version** when updating the `Book` entity or schema, otherwise you will get a `Room cannot verify the data integrity` crash. 
 +  * Some books from the Google Books API may not return thumbnails or descriptions — fallback text is displayed in such cases. 
 +  * Covers sometimes fail to load due to null `imageLinks.thumbnail`. 
 + 
 +----
  
-## Known Issues 
  
-- You must **increment the Room database version** when changing the schema. 
-- Ensure **Internet permission** is enabled for API access. 
-- Not loading book covers 
android/proiect/2025/proiecte/mybookshelfapp.1748561343.txt.gz · Last modified: 2025/05/30 02:29 by andrei_mihai.canuta
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0