Installation

Dieses Kapitel beschreibt die vollständige Installation von libreStage auf einem eigenen Server oder auf einem lokalen Rechner für die Entwicklung.

Voraussetzungen

Folgende Software muss auf dem Zielsystem installiert sein:

Software

Mindestversion

Hinweis

Python

3.11

Empfohlen: 3.12+

Node.js

18

Für das Frontend (SvelteKit)

npm

9

Wird mit Node.js installiert

Git

beliebig

Für das Klonen des Repositories

Repository klonen

git clone <repository-url>
cd libre-stage

Backend einrichten

libreStage verwendet uv als Python-Paketmanager.

pip install uv
uv sync --all-groups

Umgebungsvariablen konfigurieren

Kopiere die Beispiel-Konfiguration und passe sie an:

cp .env.example .env

Öffne anschließend .env in einem Texteditor und setze mindestens den SECRET_KEY (langer, zufälliger String). Alle verfügbaren Variablen sind in Konfiguration beschrieben.

Datenbank initialisieren

uv run alembic upgrade head

Optional: Demo-Datenbank laden

uv run python backend/migrations/init_demo_db.py

Frontend einrichten

cd frontend && npm install && cd ..

Anwendung starten

Terminal 1 – Backend:

uv run uvicorn backend.main:app --host 0.0.0.0 --port 8000 --reload

Terminal 2 – Frontend:

cd frontend && npm run dev

Die Anwendung ist danach unter folgenden Adressen erreichbar:

Erster Login

Bemerkung

Screenshot folgt – bitte docs/manual/_static/screenshots/login.png ablegen.

Beim ersten Start mit der Demo-Datenbank stehen folgende Accounts zur Verfügung:

Benutzername

Passwort

Rolle

Beschreibung

admin

Admin1234!

admin

Vollständige Verwaltungsrechte

alice

Demo1234!

editor

Sängerin, kann Inhalte bearbeiten

bob

Demo1234!

editor

Sänger, kann Inhalte bearbeiten

carol

Demo1234!

musician

Musikerin, Lesezugriff + eigene Todos

dave

Demo1234!

musician

Musiker, Lesezugriff + eigene Todos

Warnung

Ändere vor dem produktiven Einsatz unbedingt alle Demo-Passwörter und setze einen sicheren SECRET_KEY in der .env-Datei!

Produktion

Für den produktiven Betrieb empfiehlt sich:

  • Frontend mit npm run build bauen – statische Dateien liegen in frontend/build/

  • Backend hinter einem Reverse-Proxy (nginx, Caddy) betreiben

  • ENVIRONMENT=production in .env setzen (aktiviert Secure-Cookie-Flag)

  • PostgreSQL statt SQLite für Mehrbenutzerbetrieb unter Last

  • Regelmäßige Datenbank-Backups einrichten