diff --git a/build_jellyfin_web.md b/build_jellyfin_web.md new file mode 100644 index 0000000..360dfd6 --- /dev/null +++ b/build_jellyfin_web.md @@ -0,0 +1,142 @@ +## Build-Anleitung für jellyfin-web + +### 1. Standardbuild (neueste Version) + + +## Voraussetzungen +- Node.js (empfohlen: Version 24) +- npm (kommt mit Node.js) + +### Node-Version verwalten (Node Version Manager) +Es gibt mehrere Tools, um die Node-Version zu verwalten. Nachfolgend sind die wichtigsten Befehle für `nvm` (Linux/macOS), `nvm-windows` (Windows) und `fnm` (schneller Node-Manager) zusammengefasst — Installation, Verwendung, Auflisten und Entfernen von Versionen sowie lokale Hilfe. + +- Für `nvm` (macOS / Linux): +```bash +# Node 24 installieren und verwenden +nvm install 24 +nvm use 24 +# Optional: als Standard setzen +nvm alias default 24 + +# Installierte Versionen anzeigen +nvm ls +# Verfügbare Remote-Versionen (zum Installieren) +nvm ls-remote +# Version deinstallieren +nvm uninstall 24 +``` + +- Für `nvm-windows` (Windows): +```powershell +# Beispiel: genaue Version prüfen (z.B. 24.0.0) +nvm install 24.0.0 +nvm use 24.0.0 +# Nach dem Wechsel ggf. neue Shell öffnen + +# Installierte Versionen anzeigen +nvm list +# Verfügbare Remote-Versionen (zum Installieren) +nvm list available +# Version deinstallieren +nvm uninstall 24.0.0 +``` + +- Für `fnm` (fast Node Manager): +```bash +fnm install 24 +fnm use 24 +fnm default 24 + +# Installierte Versionen anzeigen +fnm list +# Verfügbare Remote-Versionen (zum Installieren) +fnm remote list +# Version deinstallieren +fnm uninstall 24 +``` + +- Version prüfen: +```bash +node -v +``` + +Hinweis: Ersetze `24` bzw. `24.0.0` durch die gewünschte exakte Version, falls nötig. Wenn ein Befehl nicht gefunden wird oder Unsicherheit besteht, hilft die lokale Hilfe der Tools: +```bash +nvm --help +nvm help # für nvm-windows +fnm --help +``` + +## Schritte zum Bauen + +1. **Repository klonen:** + ```sh + git clone https://github.com/jellyfin/jellyfin-web.git + cd jellyfin-web + ``` + +2. **Dependencies installieren:** + ```sh + npm install + ``` + +3. **Production Build erstellen:** + ```sh + npm run build:production + ``` + + Der fertige Build befindet sich dann im `dist/` Ordner. + + +### 2. Für ein bestimmtes Release bauen (z.B. 10.11.6) + +Um Version 10.11.6 zu bauen: + +```bash +# 1. Repository klonen +git clone https://github.com/jellyfin/jellyfin-web.git +cd jellyfin-web + +# 2. Zum gewünschten Release-Tag wechseln +git checkout v10.11.6 + +# 3. Dependencies installieren +npm install + +# 4. Production Build +npm run build:production +``` + +### 3. Mit ZIP aus dem Release bauen + +**Man kann auch die Source-Code-ZIP aus den Releases verwenden:** + +```bash +# 1. ZIP herunterladen von: +# https://github.com/jellyfin/jellyfin-web/releases/tag/v10.11.6 + +# 2. Entpacken +unzip jellyfin-web-10.11.6.zip +cd jellyfin-web-10.11.6 + +# 3. Dependencies installieren +npm install + +# 4. Production Build +npm run build:production +``` + +### Verfügbare Build-Befehle + +Basierend auf dem README gibt es folgende npm scripts: + +- **`npm start`** - Development-Server mit Hot-Reload +- **`npm run build:development`** - Development Build mit Sourcemaps +- **`npm run build:production`** - Production Build (optimiert) + +### Release-Links + +Um die verfügbaren Releases zu sehen: +- Releases-Seite: https://github.com/jellyfin/jellyfin-web/releases + +Der fertige Build befindet sich nach dem Kompilieren im **`dist/`** Ordner und kann dann auf dem Jellyfin-Server eingesetzt werden.