963 Commits

Author SHA1 Message Date
Aditya Chandel
dec0fb7bef Merge pull request #1065 from booklore-app/develop
Merge develop into master for the release
v1.1.1
2025-09-01 15:45:14 -06:00
aditya.chandel
47e24e2241 Add "OPDS Server Enabled" button to OPDS v2 settings 2025-09-01 15:44:20 -06:00
aditya.chandel
cdd9b06b1d Fix settings page EPUB's reader font color 2025-09-01 12:34:21 -06:00
aditya.chandel
0159fcf2a8 Allow free-text and suggestion selection in authors and categories auto-complete 2025-09-01 12:29:55 -06:00
aditya.chandel
48c9f1d422 Show bookdrop button on mobile view 2025-09-01 11:05:03 -06:00
aditya.chandel
b3fd860783 Add text selection tool in PDF reader 2025-09-01 10:34:12 -06:00
Aditya Chandel
b02d6706a6 Merge pull request #1049 from booklore-app/develop
Merge develop into master for the release
v1.1.0
2025-08-31 08:48:34 -06:00
aditya.chandel
0d95817ae8 OPDS v2 fixes 2025-08-31 08:45:59 -06:00
aditya.chandel
31b724a0b8 Minor layout tweaks 2025-08-31 00:20:20 -06:00
aditya.chandel
13df6a79b6 Revamp styling and layout of settings pages 2025-08-30 23:47:34 -06:00
aditya.chandel
443dcad59a Implement OPDS v2 to return user-specific book feeds 2025-08-30 17:02:35 -06:00
aditya.chandel
4cff107a67 Add scripts and update drafter flow 2025-08-29 16:26:42 -06:00
Aditya Chandel
fc0b62ebf6 Merge pull request #1031 from booklore-app/develop
Try fixing versioning #2
v1.0.0
2025-08-29 15:26:18 -06:00
aditya.chandel
aa259bbf3a Try fixing versioning #2 2025-08-29 15:25:49 -06:00
Aditya Chandel
9f375b54df Merge pull request #1029 from booklore-app/develop
Merge pull request #847 from booklore-app/develop
2025-08-29 15:08:16 -06:00
aditya.chandel
4bc0556097 Try fix versoning 2025-08-29 15:07:37 -06:00
Aditya Chandel
9dd645fcfd Merge pull request #1025 from booklore-app/develop
Merge pull request #847 from booklore-app/develop
2025-08-29 14:53:53 -06:00
aditya.chandel
b909a100c1 Fix drafter 2025-08-29 14:53:13 -06:00
Aditya Chandel
b1ad4c0b91 Merge pull request #1023 from booklore-app/develop
Merge Develop into Master for Release
2025-08-29 14:18:50 -06:00
aditya.chandel
bb2c1f4c27 Fix OIDC stomp initialization and notification 2025-08-29 13:50:09 -06:00
aditya.chandel
614af906b7 Set RxStomp reconnect delay to 10 seconds for stable websocket reconnection 2025-08-29 13:03:17 -06:00
aditya.chandel
b34f7fcbf1 Fix notifications not being delivered for OIDC users 2025-08-29 12:17:17 -06:00
aditya.chandel
db5e840aec Hide sidebar by default on mobile devices 2025-08-29 11:10:16 -06:00
aditya.chandel
e4fe1ab029 Merge conflict fixes 2025-08-29 10:58:02 -06:00
Yonghao Zou
342039ea4b feat: support Douban as a metadata provider (#1000)
* feat: support Douban as metadata provider.
Douban.com is a platform of sharing films, music and books in China.

* format code

* support douban reviews

---------

Co-authored-by: Aditya Chandel <8075870+adityachandelgit@users.noreply.github.com>
2025-08-29 10:32:55 -06:00
Iván Ruiz Gázquez
3e64d35957 fix: add content-type header for koreader-sync auth (#1016)
* test: add content-type assertion for user auth

* fix: specify JSON content type in authorizeUser method

Set content type to JSON for user authorization response.
2025-08-29 10:31:45 -06:00
aditya.chandel
addf7c0c17 Allow manual bookdrop folder refresh for non-local file systems 2025-08-29 10:30:57 -06:00
aditya.chandel
a8102a3a75 Update readme 2025-08-28 23:38:05 -06:00
aditya.chandel
4abf5eccaa Add ISBN to Metadata Search 2025-08-28 23:35:24 -06:00
aditya.chandel
12b7aaa8e9 Allow users to disable kobo shelf 2025-08-28 21:12:45 -06:00
Alexander Puzynia
8d04bc3498 build(docker): return original names for docker tags (#1009) 2025-08-28 20:36:37 -06:00
aditya.chandel
146b2572c3 Get 5 reviews from Amazon and Goodreads 2025-08-27 23:10:29 -06:00
aditya.chandel
a16fb3c1e1 Fix: Metadata autofetch not returning any proposals 2025-08-27 23:03:33 -06:00
Alexander Puzynia
c18692ae13 Fix docker build tests (#1005)
* build(docker): skip test during docker build

* build(gha): do test directly on GHA instead of docker build

* build(gha): publish test results

* build(gha): publish docker build to personal docker hub and GH registry
2025-08-27 21:56:06 -06:00
Aditya Chandel
09bc2f6e9e Feature/999 add high resolution cover support upload storage and search (#1006)
* Add high-resolution cover support: upload, storage, and search

* Disable tests until fixed
2025-08-27 21:47:27 -06:00
aditya.chandel
b4978f3bd7 Update readme 2025-08-27 16:27:25 -06:00
Alexander Puzynia
694ee11540 Book additional files support library (3/3) (#872)
* feat(api/model): add new entity BookAdditionalFileEntity

* feat(api/db): add book additional file repository

* feat(api/db): add migration

* test(api/db): add book additional file repository test

* test(api/db): add book additional file repository tests for hash uniqueness

* feat(api/domain): add support to additional file model

* feat(api): add additional files controller

* refactor(api): move addAdditionalFile to FileUploadService as uploadAdditionalFile method

* feat(service): search book by additional file

* feat(services): process deleted additional files with ability to promote alternative formats to book instead of deleting them

* refactor(util): use common code to resolve patter for entity and domain object

* feat(service): move additional files

* test(service): test move additional files along with book itself

* feat(ui/domain): add alternativeFormats and supplementaryFiles to book model

* feat(ui/domain): add download additional file method to book service

* refactor(api/domain): extract FileInfo interface with common fields

Allow to share the same interface thet is implemented by AdditionFile and Book

* feat(ui): show multiple download options

* feat(ui/domain): add delete additional file method to book service

* feat(ui): add delete additional file ui

* feat(ui): add additional-file-uploader.component

* feat(ui/domain): add uploadAdditionalFile to the service

* feat(ui): add Upload File menu item

* feat(ui): show supplementary files in download menu item

* feat(ui): show supplementary files in delete file menu item

* feat(ui): book card allow to select single file to download or delete

* feat(api/domain): add scan mode and default book format to the library

* feat(ui): select scan mode and default book format

* feat(api): create/update library settings

* refactor(services): get processor based on scan mode

* feat(services): read all files if processor supports supplimentary files

* fix(services): detectNewBookPaths should check additional files as well

* feat(services): implement folder as book file processor

* test(service): add tests for FolderAsBookFileProcessor

* feat(services): allow follow links for search library files

* test(library): add tests for folder as book file processor

* refactor(library): use Path instead of String for directory path

* feat(library): sort directories before processing

* feat(library): reuse library file book type

* fix(library): do not add additional format if it is used in another book

* test(library): test same hashes files

* refactor(library): simplify FolderAsBookFileProcessor

* test(library): add test with deep folder structure

* test(library): add additional files to existing book

---------

Co-authored-by: Aditya Chandel <8075870+adityachandelgit@users.noreply.github.com>
2025-08-27 08:20:29 -06:00
Alexander Puzynia
f725ececf5 Book additional files support UI (2/3) (#870)
* feat(api/model): add new entity BookAdditionalFileEntity

* feat(api/db): add book additional file repository

* feat(api/db): add migration

* test(api/db): add book additional file repository test

* test(api/db): add book additional file repository tests for hash uniqueness

* feat(api/domain): add support to additional file model

* feat(api): add additional files controller

* refactor(api): move addAdditionalFile to FileUploadService as uploadAdditionalFile method

* feat(service): search book by additional file

* feat(services): process deleted additional files with ability to promote alternative formats to book instead of deleting them

* refactor(util): use common code to resolve patter for entity and domain object

* feat(service): move additional files

* test(service): test move additional files along with book itself

* feat(ui/domain): add alternativeFormats and supplementaryFiles to book model

* feat(ui/domain): add download additional file method to book service

* refactor(api/domain): extract FileInfo interface with common fields

Allow to share the same interface thet is implemented by AdditionFile and Book

* feat(ui): show multiple download options

* feat(ui/domain): add delete additional file method to book service

* feat(ui): add delete additional file ui

* feat(ui): add additional-file-uploader.component

* feat(ui/domain): add uploadAdditionalFile to the service

* feat(ui): add Upload File menu item

* feat(ui): show supplementary files in download menu item

* feat(ui): show supplementary files in delete file menu item

* feat(ui): book card allow to select single file to download or delete
2025-08-27 08:11:43 -06:00
Alexander Puzynia
b81a8d1422 Book additional files support (1/3) (#868)
* feat(api/model): add new entity BookAdditionalFileEntity

* feat(api/db): add book additional file repository

* feat(api/db): add migration

* test(api/db): add book additional file repository test

* test(api/db): add book additional file repository tests for hash uniqueness

* feat(api/domain): add support to additional file model

* feat(api): add additional files controller

* refactor(api): move addAdditionalFile to FileUploadService as uploadAdditionalFile method

* feat(service): search book by additional file

* feat(services): process deleted additional files with ability to promote alternative formats to book instead of deleting them

* refactor(util): use common code to resolve patter for entity and domain object

* feat(service): move additional files

* test(service): test move additional files along with book itself
2025-08-27 08:11:04 -06:00
aditya.chandel
ebe672a46c Fix drafter release header 2025-08-25 16:52:09 -06:00
Aditya Chandel
7e9bff4075 Merge pull request #989 from booklore-app/develop
Merge develop into master for release
v0.38.2
2025-08-25 16:19:56 -06:00
aditya.chandel
19e1b75325 Fix server.port error 2025-08-25 16:17:10 -06:00
aditya.chandel
22f6828899 Fix drafter to use correct version 2025-08-25 15:51:26 -06:00
Aditya Chandel
3717d6e1df Merge pull request #988 from booklore-app/develop
Merge develop into master for release
v0.38.1
2025-08-25 15:30:07 -06:00
aditya.chandel
11289adf79 Persist sidebar filter state when toggling visibility 2025-08-25 14:49:38 -06:00
aditya.chandel
0e4fb47580 feat(search): add ISBN & genre filters; disable author/category filters in drawer for performance 2025-08-25 10:24:12 -06:00
Aditya Chandel
2be27f34ad CBX reader styling improvements (#977) 2025-08-24 12:01:11 -06:00
Aditya Chandel
e5d54d1caa Refine book card styling (#975) 2025-08-24 10:48:33 -06:00
Aditya Chandel
fe8925f65e feat(kobo): add optional EPUB → KEpub conversion for Kobo downloads (#969) 2025-08-23 20:51:04 -06:00
Aditya Chandel
7ce2f80592 Merge pull request #965 from booklore-app/develop
Merge develop into master for release
v0.38.0
2025-08-23 08:15:42 -06:00