Skip to content

Library

Domekologe edited this page Aug 1, 2026 · 8 revisions

Library

🌐 English · Deutsch

The library (/library) shows all downloaded series and movies from the download path and all custom paths — as a single, searchable list of titles (season/episode detail lives inside each title), including file sizes.

Screenshot: library

Browsing

  • Grid or list view — toggle in the toolbar; both show the same data. The choice is stored on your account, together with the results-per-page setting, so the layout you pick follows you to every browser and device instead of resetting to the poster grid on each visit.
  • Every title carries a Series/Movie pill and, if you have more than one library path (custom path), a small volume tag showing which one it came from — titles from every path/language folder are listed together instead of being grouped into separate sections. On a phone the tag keeps its label in list view and in the expanded header; only in the poster grid, where there is no room for it, does it shrink to its icon.
  • A "New" ribbon marks titles added to disk in the last two weeks.
  • Click a card or row to expand its seasons/episodes inline, directly underneath it — clicking again (or the close button) collapses it. Only one title is open at a time.
  • Filter by all/series/movies and sort by name/size/episode count, in either view.
  • The filter bar also carries Manga and Music placeholders (marked "soon"). Those two media types are not indexed yet — selecting one replaces the list with a "Coming soon" card, and search, sorting and the layout switch are hidden in that state; picking another filter brings the library back.
  • Pagination — the list is paged (10/20/50/100 titles per page, your choice, remembered for next time); changing the filter, sort, search or page size takes you back to page 1.

eBooks

Selecting eBooks in the filter bar shows the books found in your library paths. Books are indexed by a pass of their own, driven purely by file extension: EPUB, MOBI, AZW3, AZW and PDF count as books wherever they sit — loose in a library root, in an author folder, inside a Calibre Title (id) folder or several levels down in a download directory. .KFX is recognised and listed too, but it is DRM-protected and shown as a locked format rather than hidden, so a book that exists only as KFX does not look like a scanning failure.

One book, several files

The same book usually exists more than once. Calibre stores one record per format, so a novel kept as EPUB, MOBI, AZW3 and PDF is four folders — five if a file was ever re-imported — and the same book often also sits loose in the library root from before it was imported. All of those become one entry with a badge per format (EPUB, AZW3 ×2, …).

Which files belong together is decided across the whole library path at once, not per folder, so copies in completely different directories still merge. Identity comes from the first source that has it:

  1. the metadata.opf Calibre writes next to the book (authoritative — Calibre truncates the filename it creates, so the file itself often carries a shortened title)
  2. the Calibre metadata.db in the root of the path, if present — read strictly read-only, which is what it contributes series, volume number, tags and descriptions from without ever locking or modifying your Calibre library
  3. the filename, in the common Title - Author.ext shape, with Amazon ASIN suffixes and release-group markers stripped
  4. the parent folder, but only as an author fallback and only when it looks like a person — collection folders like Books or IT Stuff never become authors

Books by different authors never merge, and neither do different volumes of a series.

The detail panel

Clicking a book expands it in place and lists every file behind that one entry, with its format, size and folder. That is deliberate: the shelf shows one book, and this is the evidence for why — including the two identical EPUBs a Calibre import can leave behind. Nothing is ever deleted automatically, and there is no clean-up action; the list is there so you can decide for yourself.

Covers come from inside the book. An EPUB carries its own, and MediaForge reads it out in the background, shrinks it and keeps a small copy — so the shelf shows pictures rather than a wall of grey tiles. A cover.jpg next to the book still wins when there is one; it is the picture you or Calibre chose deliberately.

While that is running, the shelf header shows "Preparing covers" with a count and the waiting cards carry a spinner. Cards fill in as they arrive, in place, so nothing jumps under you. It only happens once per file: after that the cover is served from the cache.

Two formats stay without one unless a cover.jpg is there. PDF, because drawing page one needs a renderer the server does not have and the reader does it in the browser anyway; and MOBI/AZW3, until the file has been converted — opening it once is enough, and the cover appears afterwards.

A book with no cover anywhere gets a generated tile derived from the title, and a cover that fails to load falls back to the same tile rather than showing a broken image.

The cover cache and the conversion cache both live under Settings → Library → eBooks, with their sizes next to a button that empties them. Both hold derived data only: your book files are never touched, and everything in them is produced again on demand. They are separate from the comic caches — clearing one leaves the other alone.

Reading a book

Click Read on any file in the detail panel and the book opens in a reader overlay, the same way a film opens in the player instead of a browser tab.

  • PDF and EPUB are read in place. MOBI, AZW3 and AZW are converted to EPUB by the server the first time you open them — a second or two for a typical book, cached afterwards, and the reader shows what it is waiting for. .KFX is DRM-protected and cannot be opened at all.
  • DRM-protected files are detected during the scan (the encryption flag sits in the file header) and labelled DRM-protected on the shelf, instead of failing the conversion again on every open. This mostly means Kindle purchases — recognisable by the ASIN in the filename, e.g. Title_B01EXUFAMA.azw3. They can still be downloaded, just not read here.
  • Controls: page with the arrow keys, Page up/Page down or the tap zones at the left and right edge of the page, +/- for text size, F for fullscreen, Esc to close.
  • Three reading palettes — light, sepia and dark — independent of the app theme, because reading at night in a dark app but on a white page is its own kind of unpleasant.
  • Contents and bookmarks share one panel, opened from the header. For an EPUB the chapter list comes from the book's own navigation; a converted Kindle file that has none gets its chapters worked out from the headings inside it, the first time you open the list.
  • Bookmarks are set with the ribbon button in the header or with B, and the ribbon at the top edge of the page tells you a page is marked even while the bars have faded out. They live on your account and are listed with the chapter they sit in.
  • EPUB additionally offers a switch between paged and scrolling reading.
  • Typography — typeface, text size, line spacing and page width — is pushed into the book itself, so it also applies to publishers that set their own fonts and sizes.
  • Text size, typeface, spacing, width, palette and reading mode are stored on your account, so the setup you chose on the desktop is the one your phone uses.

Where you stopped is remembered per book, not per file. Start a novel as EPUB, open the PDF later, and you carry on where you were — which only works because the library treats those files as one book in the first place.

Automatic refresh

  • On startup the library is fully scanned once and cached in the DB.
  • A file watcher (watchdog) monitors all library paths and automatically rescans only the affected folder on changes.
  • A manual refresh can be triggered from the UI at any time.
  • With language separation enabled, each title's volume tag reflects its language folder as well.

File management (admin only)

Action Description
Rename Rename series folders and files according to the naming template
Move Move titles between library paths — with progress display (copied bytes / total)
Delete Delete episodes, seasons or entire titles
Media info Technical details via ffprobe: codec, resolution, audio/subtitle tracks, duration, bitrate

In-browser player (live transcode)

Every file can be played directly in the browser:

  1. When playback starts, the app probes the file via ffprobe and starts an HLS transcode session (FFmpeg).
  2. The best available H.264 encoder is chosen automatically — hardware (NVENC, VAAPI, VideoToolbox) before software (libx264). The Encoding page shows the detection and lets you reset it.
  3. The player supports seeking (the session restarts at the requested position).
  4. Progress saving (per user): the playback position is stored per user and file. When you reopen a partly-watched file a dialog offers Resume (at the saved position) or Start over. A "continue watching" pill in the library shows the percentage.

For security, only files inside the configured library paths can be streamed; stream URLs are token-based and restricted to the app's own origin.

Besides playing downloaded files, episodes can also be streamed directly from the provider without downloading first, and a Watch Together (Syncplay) mode synchronises playback with others — see Web UI → Playback & streaming.

Upscaling from the library

Individual episodes, seasons or entire titles can be sent to the upscale queue straight from the library (Anime4K Upscaling).

Add to Auto-Sync

A series can be added to AutoSync directly via the "Add to Auto-Sync" action in its menu. Because the library only knows folder names, the app first searches AniWorld and serienstream.to for the title and only proceeds if it is actually found there. If several sources match, a picker lets you choose which one (each result shows its source site and a match score). The standard AutoSync configuration dialog then opens (language, provider, path, episode filter). Movies are excluded, as AutoSync is episode-based.

External API

The library inventory is also available via the external REST API (/api/v1/library, /api/v1/library/series, /api/v1/library/movies) — see API Reference.

Clone this wiki locally