arnaucube
arnaucube/configsPublic Self-hosted repository
configs/server-dockers/jellyfin-news/README.md
server-dockers/jellyfin-news/README.mdRaw
 1# Jellyfin update webpage
 2
 3A small Go web server for generating copyable Jellyfin movie and episode recaps. It serves one embedded `index.html` page, a database, or third-party Go dependencies.
 4
 5The page provides:
 6
 7- **Current week**: from the configured weekly boundary through now (Monday at 00:00 by default).
 8- **Selected week**: `-1` means last week, `-2` means two weeks ago, and so on.
 9- **Selected month**: `-1` means last month, `-2` means two months ago, and so on.
10- **Watched in selected period**: generates a Jellystat recap with watched seasons beside each show, for example `Andor (S1, S2)`. The prefix uses the first letter of `TEXT_SEASON`, so `TEXT_SEASON=Temporada` produces `T1, T2`. Seasons are included when available in playback history; season 0 is shown as `Specials`.
11- **Copy to clipboard**: copies the generated plain-text recap.
12- **Generate poster image**: previews a downloadable PNG collage for the selected week or month, with one poster per movie or show added during that period. Open **Add movies or shows to the poster image** to paste extra entries in the same `Movies:` / `Shows:` bullet format as a newly added recap. Extra titles are included only in the image; their artwork is matched by title (and movie year, when provided) against the Jellyfin library. Missing artwork gets a labelled placeholder. The automatic entries use Jellyfin's added date (`DateCreated`).
13
14Weekly output looks like:
15
16```text
172026-08-15 - 2026-08-22 jellyfin weekly update:
18
19Movies:
20• Dune (2021)
21
22Shows:
23• Example Show — Season 3, episodes 1-12
24```
25
26## Configuration
27
28Copy the example and edit it:
29
30```sh
31cp .env.example .env
32```
33
34## Run with Docker Compose
35
36```sh
37docker compose up -d --build
38docker compose logs -f
39```
40
41Then open:
42
43```text
44http://<home-server-ip>:8080
45```
46
47## Run as a local binary
48
49Go 1.23 or newer is required.
50
51```sh
52go test ./...
53go build -o jellyfin-news .
54set -a
55. ./.env
56set +a
57./jellyfin-news
58```
59
60The API key remains on the server and is never sent to the browser. The browser receives recap text, poster metadata, and artwork proxied through this app. This app has no authentication, so keep port 8080 limited to your trusted home LAN and do not expose it directly to the internet.