chore: remove obsolete documentation and API collection files

Cleanup of project files:
- Remove CALIBRE_OPF_IMPLEMENTATION.md (obsolete documentation)
- Remove Bruno API collection files for field value searches:
  - Field Values Search - Authors.yml
  - Field Values Search - Genres.yml
  - Field Values Search - Languages.yml
  - Field Values Search - Series.yml

These files are no longer needed as the functionality has been
implemented and the API has evolved.
This commit is contained in:
2026-03-28 00:46:20 -04:00
parent d9bb0834cd
commit 0c1a55d6e3
5 changed files with 0 additions and 1469 deletions
File diff suppressed because it is too large Load Diff
@@ -1,89 +0,0 @@
info:
name: Field Values Search - Authors
type: http
seq: 6
http:
method: GET
url: "{{base_url}}/api/media-items/search?library_id={{library_id}}&author=orwell&limit=50"
params:
- name: library_id
value: "{{library_id}}"
type: query
- name: author
value: orwell
type: query
- name: limit
value: "50"
type: query
auth: inherit
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
docs: |-
## Field Values Search - Authors
Fetches distinct author values for autocomplete dropdowns with counts and similarity scores.
**Method:** GET
**Endpoint:** /api/media-items/search
**Authentication:** Required (Bearer token)
**Query Parameters:**
- `library_id` (string, required): Library UUID to search within
- `author` (string, required): Author name to search for (fuzzy match)
- `limit` (integer, optional): Maximum results to return (default: 50)
**How It Works:**
- Returns distinct author names from the library
- Fuzzy matches the search query against author names
- Includes count of books per author
- Includes similarity score (0-1, higher = better match)
- Sorted by similarity score, then by count
**Use Case:**
- Populate autocomplete dropdown when user types in author filter field
- Show user available authors with book counts
- Help users discover similar author names
**Response:** HTTP 200 (OK)
```json
{
"results": [
{
"value": "Asimov, Isaac",
"count": 47,
"score": 0.8
},
{
"value": "Asimov, Isaac & Robert Silverberg",
"count": 2,
"score": 0.75
}
],
"total": 2
}
```
**Examples:**
- `author=asimov` → Returns "Asimov, Isaac" (47 books), "Asimov, Isaac & Robert Silverberg" (2 books)
- `author=rowling` → Returns "Rowling, J.K." (10 books)
- `author=tolkien` → Returns "Tolkien, J.R.R." (15 books)
**Frontend Integration:**
- Call this endpoint when user types ≥2 characters in author field
- Display results in `<datalist>` or custom dropdown
- Show: "Author Name (count)" format
- Allow user to select from suggestions
**Success Criteria:**
- Status: 200
- Returns array of author values with counts
- Results sorted by relevance (similarity score)
- Only returns authors matching the fuzzy search
@@ -1,89 +0,0 @@
info:
name: Field Values Search - Genres
type: http
seq: 7
http:
method: GET
url: "{{base_url}}/api/media-items/search?library_id={{library_id}}&tags=sci&limit=50"
params:
- name: library_id
value: "{{library_id}}"
type: query
- name: tags
value: sci
type: query
- name: limit
value: "50"
type: query
auth: inherit
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
docs: |-
## Field Values Search - Genres
Fetches distinct tags values for autocomplete dropdowns with counts and similarity scores.
**Method:** GET
**Endpoint:** /api/media-items/search
**Authentication:** Required (Bearer token)
**Query Parameters:**
- `library_id` (string, required): Library UUID to search within
- `tags` (string, required): Genre name to search for (fuzzy match)
- `limit` (integer, optional): Maximum results to return (default: 50)
**How It Works:**
- Returns distinct tags names from the library
- Fuzzy matches the search query against tags names
- Includes count of books per tags
- Includes similarity score (0-1, higher = better match)
- Sorted by similarity score, then by count
**Use Case:**
- Populate autocomplete dropdown when user types in tags filter field
- Show user available tagss with book counts
- Help users discover similar tags names
**Response:** HTTP 200 (OK)
```json
{
"results": [
{
"value": "Sci-Fi",
"count": 234,
"score": 0.85
},
{
"value": "Science Fiction",
"count": 156,
"score": 0.82
}
],
"total": 2
}
```
**Examples:**
- `tags=sci` → Returns "Sci-Fi" (234 books), "Science Fiction" (156 books)
- `tags=fant` → Returns "Fantasy" (345 books), "High Fantasy" (89 books)
- `tags=mystery` → Returns "Mystery" (123 books), "Mystery/Thriller" (45 books)
**Frontend Integration:**
- Call this endpoint when user types ≥2 characters in tags field
- Display results in `<datalist>` or custom dropdown
- Show: "Genre Name (count)" format
- Allow user to select from suggestions
**Success Criteria:**
- Status: 200
- Returns array of tags values with counts
- Results sorted by relevance (similarity score)
- Only returns tagss matching the fuzzy search
@@ -1,89 +0,0 @@
info:
name: Field Values Search - Languages
type: http
seq: 8
http:
method: GET
url: "{{base_url}}/api/media-items/search?library_id={{library_id}}&language=eng&limit=50"
params:
- name: library_id
value: "{{library_id}}"
type: query
- name: language
value: eng
type: query
- name: limit
value: "50"
type: query
auth: inherit
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
docs: |-
## Field Values Search - Languages
Fetches distinct language values for autocomplete dropdowns with counts and similarity scores.
**Method:** GET
**Endpoint:** /api/media-items/search
**Authentication:** Required (Bearer token)
**Query Parameters:**
- `library_id` (string, required): Library UUID to search within
- `language` (string, required): Language name/code to search for (fuzzy match)
- `limit` (integer, optional): Maximum results to return (default: 50)
**How It Works:**
- Returns distinct language names from the library
- Fuzzy matches the search query against language names
- Includes count of books per language
- Includes similarity score (0-1, higher = better match)
- Sorted by similarity score, then by count
**Use Case:**
- Populate autocomplete dropdown when user types in language filter field
- Show user available languages with book counts
- Help users discover similar language codes/names
**Response:** HTTP 200 (OK)
```json
{
"results": [
{
"value": "English",
"count": 1245,
"score": 0.9
},
{
"value": "eng",
"count": 856,
"score": 0.85
}
],
"total": 2
}
```
**Examples:**
- `language=eng` → Returns "English" (1245 books), "eng" (856 books)
- `language=fre` → Returns "French" (234 books), "fre" (123 books)
- `language=german` → Returns "German" (189 books), "deutsch" (45 books)
**Frontend Integration:**
- Call this endpoint when user types ≥2 characters in language field
- Display results in `<datalist>` or custom dropdown
- Show: "Language Name (count)" format
- Allow user to select from suggestions
**Success Criteria:**
- Status: 200
- Returns array of language values with counts
- Results sorted by relevance (similarity score)
- Only returns languages matching the fuzzy search
@@ -1,89 +0,0 @@
info:
name: Field Values Search - Series
type: http
seq: 9
http:
method: GET
url: "{{base_url}}/api/media-items/search?library_id={{library_id}}&series=haley&limit=50"
params:
- name: library_id
value: "{{library_id}}"
type: query
- name: series
value: haley
type: query
- name: limit
value: "50"
type: query
auth: inherit
settings:
encodeUrl: true
timeout: 0
followRedirects: true
maxRedirects: 5
docs: |-
## Field Values Search - Series
Fetches distinct series values for autocomplete dropdowns with counts and similarity scores.
**Method:** GET
**Endpoint:** /api/media-items/search
**Authentication:** Required (Bearer token)
**Query Parameters:**
- `library_id` (string, required): Library UUID to search within
- `series` (string, required): Series name to search for (fuzzy match)
- `limit` (integer, optional): Maximum results to return (default: 50)
**How It Works:**
- Returns distinct series names from the library
- Fuzzy matches the search query against series names
- Includes count of books per series
- Includes similarity score (0-1, higher = better match)
- Sorted by similarity score, then by count
**Use Case:**
- Populate autocomplete dropdown when user types in series filter field
- Show user available series with book counts
- Help users discover similar series names
**Response:** HTTP 200 (OK)
```json
{
"results": [
{
"value": "Foundation",
"count": 7,
"score": 0.9
},
{
"value": "Foundation Series",
"count": 7,
"score": 0.85
}
],
"total": 2
}
```
**Examples:**
- `series=foundation` → Returns "Foundation" (7 books), "Foundation Series" (7 books)
- `series=harry` → Returns "Harry Potter" (10 books)
- `series=lord` → Returns "Lord of the Rings" (3 books)
**Frontend Integration:**
- Call this endpoint when user types ≥2 characters in series field
- Display results in `<datalist>` or custom dropdown
- Show: "Series Name (count)" format
- Allow user to select from suggestions
**Success Criteria:**
- Status: 200
- Returns array of series values with counts
- Results sorted by relevance (similarity score)
- Only returns series matching the fuzzy search