You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .agent/rules/project-context.md
+6-1Lines changed: 6 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,6 +18,11 @@ This is an offline-first Android client app for the [audiobookshelf](https://git
18
18
- If the offline track is deleted/cleared while the book is being played, the player should attempt to fallback to the online URL if the server is reachable, otherwise pause playback and persist the last playback state (track ID, playback position/timestamp, current chapter/index, and playback status) plus a flag indicating offline content was removed; ensure the rule notes that these persisted fields are used to resume or report playback state and are written atomically to the player state store.
19
19
- The app must be fully functional for downloaded content when offline.
20
20
21
+
## Future Plans (Not to be implemented now)
22
+
- The app should support multi-server / multi-user connections. A user should be able to connect to a server, download a few books for offline listening, then disconnect and connect to a new server and download few more books, and listen to all the books offline, and then connecting back to the previous server should push (sync) progress updates from the books which were downloaded earlier for offline listening.
23
+
- The app should also support uploading books that were downloaded from a server to another server (sharing)
24
+
- The app should support importing audiobooks from the phone storage directly without any server connection. Optionally, the user should be able to upload these audiobooks to the server along with the progress.
25
+
21
26
## Ensure Stability
22
27
23
28
- Ensure null-safety when converting data (e.g., check for division by zero in percentage calculations).
@@ -40,4 +45,4 @@ This is an offline-first Android client app for the [audiobookshelf](https://git
40
45
-**ABSOLUTELY NO** hardcoded user-facing strings in UI code. All strings must be extracted to `strings.xml` and accessed via `stringResource`.
41
46
- Use `associateBy` or proper indexing for collection lookups (O(1)) instead of nested loops (O(N^2)) when synchronizing data.
42
47
- Avoid expensive operations on the main thread.
43
-
- No code duplication, keep the code clean and easy to maintain.
48
+
- No code duplication, keep the code clean and easy to maintain.
0 commit comments