Add anime metadata providers

This commit is contained in:
Dymas
2026-09-15 15:57:43 +02:00
parent 9f39478018
commit 553bd6f427
8 changed files with 353 additions and 5 deletions
+8 -2
View File
@@ -1,6 +1,6 @@
# h-player
h-player is a small local web app for browsing a folder-based private video collection. The interface follows Kaizoku's dark purple glass-panel design, including the same card gradients, rounded controls, cover fallback treatment, and accent colors. The app remains a standalone private library browser and does not integrate with Plex, Jellyfin, Kodi, or any external metadata provider.
h-player is a small local web app for browsing a folder-based private video collection. The interface follows Kaizoku's dark purple glass-panel design, including the same card gradients, rounded controls, cover fallback treatment, and accent colors. The app remains a standalone private library browser and does not integrate with Plex, Jellyfin, or Kodi.
The sidebar holds app navigation, search, and rescanning controls. Movies and series appear in the main collection grid, similar to Jellyfin-style library browsing. Selecting a collection card opens that movie or series folder with its metadata, seasons, episodes, and playable files.
@@ -33,6 +33,8 @@ The included compose file keeps the existing `/mnt/ssd2/docker_data/h-play` host
To add a browser password prompt, uncomment `AUTH_USERNAME` and `AUTH_PASSWORD` in `docker-compose.yml`.
To enable rich AniDB fallback metadata, register an AniDB HTTP API client and set `ANIDB_CLIENT_NAME` plus `ANIDB_CLIENT_VERSION`. Without those values, h-player can still use AniDB's cached public title dump for fallback matching, but rich descriptions and images come from AniList unless AniDB API credentials are configured.
## Run Without Docker
```bash
@@ -48,6 +50,8 @@ LIBRARY_DIR=/path/to/Library
DATA_DIR=/path/to/private-library-data
AUTH_USERNAME=viewer
AUTH_PASSWORD=change-me
ANIDB_CLIENT_NAME=my_registered_client
ANIDB_CLIENT_VERSION=1
```
Set `HOST=0.0.0.0` only when you intentionally want the app reachable from other machines on the network. Use `AUTH_USERNAME` and `AUTH_PASSWORD` before exposing it beyond localhost.
@@ -74,8 +78,10 @@ Use the app to edit:
The `Thumbnail` button extracts a frame from the first video in a title and stores it under `data/thumbnails`.
The `Metadata` button searches AniList first and falls back to AniDB if AniList has no usable result or is unavailable. Provider metadata only fills missing local fields by default, so manually edited descriptions and thumbnails are preserved.
## Privacy Notes
- No external metadata lookup is performed.
- External metadata lookup is performed only when the `Metadata` button is used.
- Optional Basic Auth is available through `AUTH_USERNAME` and `AUTH_PASSWORD`.
- Do not expose this container directly to the public internet.