[PR #287] [MERGED] Added isbn search #3331

Closed
opened 2026-04-25 00:15:14 +02:00 by adam · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/advplyr/audiobookshelf/pull/287
Author: @ISO-B
Created: 1/4/2022
Status: Merged
Merged: 1/4/2022
Merged by: @advplyr

Base: masterHead: search_isbn


📝 Commits (4)

  • 2f8a90c Added isbn search
  • 01c8013 Changed replaceAll to replace since node12 doent' have it
  • 7607381 Added _isbn to Book so it's always string
  • 47dbd90 Add:ISBN highlighting to book search card

📊 Changes

2 files changed (+9 additions, -3 deletions)

View changed files

📝 client/components/cards/AudiobookSearchCard.vue (+3 -2)
📝 server/objects/Book.js (+6 -1)

📄 Description

Search now also searches books using isbn. ISBN match has to be exact to prevent isbn matches to flood results.

I was thinking about two other approaches:

  1. Only 10 and 13 character searches to be isbn searches since those are isbn lengths. This would limit using isbn field with other type of identify codes. I for one have some podcasts and other stuff that won't have isbn, but have guid instead.
  2. Start searching isbn when search string is longer than 4, because book name might have year in it. This might be good solution since not many books have more than 4 consecutive numbers so there would be no other results anyway. I don't know if there is use case for searching partial isbn. This would also require changes to client side search results list so you could see what part of isbn is matching. Since search only returns 12 books results would need to be ranked or sorted to some order, for example prefer matches from start of isbn.

Ended up with this proposed solution since I think it is good enough for most of people


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/advplyr/audiobookshelf/pull/287 **Author:** [@ISO-B](https://github.com/ISO-B) **Created:** 1/4/2022 **Status:** ✅ Merged **Merged:** 1/4/2022 **Merged by:** [@advplyr](https://github.com/advplyr) **Base:** `master` ← **Head:** `search_isbn` --- ### 📝 Commits (4) - [`2f8a90c`](https://github.com/advplyr/audiobookshelf/commit/2f8a90c21a4eea257dbdbb85e4cec6a5e76794ab) Added isbn search - [`01c8013`](https://github.com/advplyr/audiobookshelf/commit/01c8013309f2ea849f056dc8335d736cfbb6d57d) Changed replaceAll to replace since node12 doent' have it - [`7607381`](https://github.com/advplyr/audiobookshelf/commit/7607381ea43c2927d47622c21d1d85212d7af9b9) Added _isbn to Book so it's always string - [`47dbd90`](https://github.com/advplyr/audiobookshelf/commit/47dbd90971b0470b475bb069e15ed1d0ef4b58f2) Add:ISBN highlighting to book search card ### 📊 Changes **2 files changed** (+9 additions, -3 deletions) <details> <summary>View changed files</summary> 📝 `client/components/cards/AudiobookSearchCard.vue` (+3 -2) 📝 `server/objects/Book.js` (+6 -1) </details> ### 📄 Description Search now also searches books using isbn. ISBN match has to be exact to prevent isbn matches to flood results. I was thinking about two other approaches: 1. Only 10 and 13 character searches to be isbn searches since those are isbn lengths. This would limit using isbn field with other type of identify codes. I for one have some podcasts and other stuff that won't have isbn, but have guid instead. 2. Start searching isbn when search string is longer than 4, because book name might have year in it. This might be good solution since not many books have more than 4 consecutive numbers so there would be no other results anyway. I don't know if there is use case for searching partial isbn. This would also require changes to client side search results list so you could see what part of isbn is matching. Since search only returns 12 books results would need to be ranked or sorted to some order, for example prefer matches from start of isbn. Ended up with this proposed solution since I think it is good enough for most of people --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
adam added the pull-request label 2026-04-25 00:15:14 +02:00
adam closed this issue 2026-04-25 00:15:14 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf#3331