Startseite

2026-08-11 18:08:06 +00:00
parent d347574c8b
commit 5695a6efed
+67
@@ -0,0 +1,67 @@
# d4rk_media
Eigener Medien-Dienst für alle FiveM-Ressourcen: Dateien annehmen, ablegen,
ausliefern, in einem Dashboard verwalten.
**Läuft unter** https://fivemanage.d4rkst3r.de — Dashboard und API an der
Wurzel, Dateien unter `/f/`.
---
## Wo was steht
| | |
|---|---|
| **[API](API)** | Endpunkte, Kopfzeilen, Fehlermeldungen, Grenzen — und was beim Anbinden schiefgeht |
| `ROADMAP.md` im Repo | Zuschnitt, Stand, Reihenfolge, offene Entscheidungen |
| `CLAUDE.md` im Repo | die Arbeitsweise: prüfen statt raten |
Das Warum einer Änderung steht in der Commit-Nachricht, nicht nur im Diff.
---
## Der Zuschnitt in vier Sätzen
**Ein Container.** SQLite statt PostgreSQL, Dateien auf einer Platte statt
MinIO. Das ist nicht die kleine Lösung, sondern die, die man nicht pflegt.
**Der Pfad ist der Schlüssel.** `vehicles/adder.webp` bleibt
`vehicles/adder.webp`, damit die Vorlage im Handy `{model}.webp` lauten kann.
Die Adressen stehen nirgends in der Datenbank — sie werden bei jeder Antwort
neu gebaut.
**Jeder Knopf gibt Rückmeldung, auch der erfolgreiche.** Das ist der Fehler, an
dem der Fivemanage-Anlauf gescheitert ist: ein Knopf ohne Antwort sieht aus wie
ein kaputter Knopf, und das Ergebnis waren neunzehn gleichnamige
Organisationen.
**Nicht nachgebaut wird das Logging.** Dafür schleppt Fivemanage ClickHouse
mit, und genau da ist der Wartungsaufwand echt.
---
## Was der Dienst kann
- **Hochladen** über die Skript-API (Token) oder aus dem Dashboard (Sitzung) —
Bilder, Videos, Ton, PDF
- **Ausliefern** mit ETag, Bereichsanfragen und Vorschaubildern
- **Galerie** mit Ordnerbaum, Suche, Filter nach Medienart, Sortierung,
Mehrfachauswahl, Verschieben und Löschen
- **Verlauf**: wer hat wann was abgelegt, ersetzt, verschoben oder gelöscht
- **Anmeldung** über Discord (Rolle auf dem Server) oder Passwort
- **Sicherung** täglich, geprüft, in die Nextcloud
---
## Wenn etwas nicht geht
1. **Ein Bild ändert sich nicht.** Der Proxy hielt Bilder früher 30 Minuten
fest. Behoben — siehe [API](API), Abschnitt *Zwischenspeicher des Proxys*.
2. **Die Anmeldung sagt 200, aber man ist nicht angemeldet.** `NODE_ENV=production`
setzt das Cookie auf `Secure`; über eine nackte `http`-Adresse verwirft der
Browser es still. Über den Proxy mit TLS gibt es das Problem nicht.
3. **Ein Upload gibt 400 mit „ist als Pfadteil nicht erlaubt".** Jeder Teil
eines Pfades muss mit einem Buchstaben oder einer Ziffer beginnen. Ein
führender Unterstrich fällt durch.
4. **Ein Fehler ohne Text.** Sollte es nicht mehr geben: der Dienst hat eine
Auffanglinie, die auch bei unerwarteten Fehlern einen Satz mitgibt.