Case Study · OJ DocumentHub

Von der Dateiablage zur modularen Dokumenten- und Release-Plattform in Joomla

OJ DocumentHub wurde als Joomla-Paket aufgebaut, das Dokumente, Versionen, Dateien und Storage mit Freigabeworkflows, sicherer Auslieferung und einem eigenständigen Software-Release-Modell verbindet. Die zentrale Aufgabe war, redaktionelle Dokumentenverwaltung und technische Softwareverteilung innerhalb einer gemeinsamen, aber klar getrennten Architektur abzubilden.

Plattform
Joomla 5 / Joomla 6
Paket
Komponente · Plugins · Frontend-Module
Storage
Local · External · S3 · R2 · MinIO · WebDAV
Distribution
Downloads · Update Server · REST API · Webhooks
Projektstart

Ausgangslage

Eine klassische Dateiablage reicht nicht aus, wenn Dokumente versioniert, geprüft, sicher heruntergeladen, mit eigenen Metadaten versehen und zusätzlich als Teil einer Softwareverteilung eingesetzt werden sollen. Gleichzeitig müssen Joomla-ACL, Suchfunktionen, Frontend-Ausgabe und Integrationen berücksichtigt werden.

Model

Mehrere fachliche Ebenen

Dokument, Version, Datei und Storage dürfen nicht als ein einziger Datensatz behandelt werden, wenn Historie und Storage-Wechsel sauber abbildbar bleiben sollen.

Security

Geschützte Downloads

Dateien benötigen signierte Abrufe, erneute ACL-Prüfung und Limits, statt direkt über öffentliche Storage-URLs ausgeliefert zu werden.

Workflow

Redaktionelle Freigabe

Dokumente können einen mehrstufigen Prüf- und Freigabeprozess durchlaufen, einschließlich Vier-Augen-Prinzip.

Release

Softwareverteilung

Produkte, Releases, Channels, Kompatibilitäten und Abhängigkeiten benötigen ein eigenes Modell, ohne Dokumentversionen dafür umzudeuten.

Architektur

Die technische Struktur

Content

Kategorien, Dokumente, Versionen und Dateien bilden die redaktionelle Ebene.

Storage

Jede Datei speichert ihren verwendeten Adapter dauerhaft. Neue Uploads können auf einen anderen aktiven Storage wechseln.

Distribution

Download Engine, Joomla Update Server und Kundenportal liefern freigegebene Inhalte kontrolliert aus.

Integration

REST API, Managed Webhooks, Benachrichtigungen, Finder, Shortcodes und Module binden weitere Joomla- und Drittsysteme an.

Kernbereiche

Vom Dokument bis zum Software-Release

01
Dokumente & Kategorien

Dokumente erhalten Titel, Beschreibung, Schlagwörter, Sprache, Zugriff, Veröffentlichungszeitraum sowie optionale SEO- und Workflow-Felder.

02
Versionen & Dateien

Historische Stände werden getrennt verwaltet. Dateien werden geprüft, gehasht und über den gespeicherten Storage-Adapter geladen.

03
Freigabe & ACL

Joomla-Rechte und eigene DocumentHub-Aktionen steuern Bearbeitung, Upload, Download, Versionierung, Freigabe und API-Nutzung.

04
Frontend & Suche

Mehrere Menütypen, Filter, Smart Search, Editor-Integration, Shortcodes und Module stellen Inhalte im Frontend bereit.

05
Software & Releases

Produkte, Releases, Channels, Kompatibilitäten, Abhängigkeiten und Release-Dateien bilden die Grundlage für Softwareverteilung.

06
Automatisierung & Betrieb

Scheduled Tasks, Storage-Health, Datei-Integrität, Audit Log und Stable Release Gate unterstützen den laufenden Betrieb.

Technische Schwerpunkte

Was an der Umsetzung besonders relevant war

Storage-Wechsel ohne Zwangsmigration

Der aktive Storage-Adapter gilt nur für neue Uploads. Bereits vorhandene Dateien behalten ihren gespeicherten Adapter und bleiben dadurch weiterhin auflösbar.

Software-ZIPs sicher behandeln

Joomla- und Softwarepakete können legitimen PHP-Code enthalten. Deshalb existiert dafür ein gesonderter Prüfpfad mit Endungs-, MIME-, ZIP- und Pfadkontrollen.

Geschützte Updates

Bei geschützten Releases werden Zugriffsentscheidung, Joomla-ACL und optional JoomSubs-Regeln auch beim Update-Feed berücksichtigt.

Integrität sichtbar machen

Das Stable Release Gate prüft Schema, Child-Erweiterungen, Security, Performance-Indizes, verwaiste Datensätze, Current-Versionen und Release-Readiness.

Abnahme

Prüfung und Betriebsnachweise

Stable Release Gate

Die read-only Prüfstelle macht Blocker bei Laufzeit, Schema, Child-Erweiterungen, Integrität und Release-Konfiguration sichtbar.

Storage Health

Der Verbindungstest schreibt, liest und löscht eine Testdatei über den aktiven Adapter.

Datei-Integrität

Dateien können auf Existenz und optional gegen den gespeicherten SHA-256 geprüft werden.

Frontend & Downloads

Menütypen, Sichtbarkeit, signierte Links, Viewlevel und Downloadrechte lassen sich mit Testbenutzern praktisch prüfen.

Ergebnis

Eine Joomla-Plattform für Dokumente und Softwareverteilung

OJ DocumentHub führt Dokumentenverwaltung, sichere Dateiauslieferung und Software-Release-Management in einer gemeinsamen Joomla-Erweiterung zusammen. Die einzelnen Bereiche bleiben dabei als eigene Modelle und Dienste getrennt, sodass Dokumente, Dateien, Storage und Releases unabhängig voneinander verwaltet werden können.

Nächster Schritt

Du planst eine Joomla-Lösung für Dokumente, Downloads oder Software-Releases?

Das DocumentHub-Projekt zeigt, wie sich redaktionelle Inhalte, sichere Dateien und technische Distribution innerhalb von Joomla strukturiert zusammenführen lassen.