No description
- PHP 100%
|
|
||
|---|---|---|
| public | remove bug | |
| src | remove bug | |
| views | remove bug | |
| .DS_Store | initial commit | |
| .env.example | Add Admincheck | |
| .gitignore | initial commit | |
| CLAUDE.md | initial commit | |
| composer.json | initial commit | |
| composer.lock | initial commit | |
| composer.phar | initial commit | |
| database.sqlite | initial commit | |
| README.md | initial commit | |
🚀 LibreAdmin (Studio Edition)
LibreAdmin ist ein modernes, minimalistisches Headless-CMS und CRUD-Adminsystem, das speziell für PHP 8.4+ entwickelt wurde. Es bietet eine tiefe Integration in den LibreWorkspace und ermöglicht die Verwaltung beliebiger Web-Inhalte über eine elegante, performante API und ein gutes Admin-Interface.
✨ Highlights
- 💎 Studio-Design: Ein konsistentes, hochauflösendes Dark-Mode Interface ("Dark Studio") mit Akzenten in Neon-Violett und Rose.
- 🛠 Dynamisches CRUD: Erkennt automatisch Datenbank-Strukturen und generiert sofort passende Verwaltungsmasken.
- 📐 Schema Manager: Erstelle Tabellen und füge Spalten direkt über das Web-Interface hinzu – ohne SQL-Kenntnisse.
- 🔐 Deep OIDC Integration: Vollständige Authentifizierung über LibreWorkspace OIDC, inklusive automatischer Gruppenprüfung (
wsadmin). - 📡 Headless API: JSON-Schnittstellen für alle Inhalte, gesichert durch LibreWorkspace API-Keys oder OIDC Bearer-Tokens.
- 📝 Auto-Slugs: Intelligente, automatische Generierung von URL-freundlichen Slugs aus Titeln.
- 📜 Audit-Logging: Lückenlose Protokollierung aller Änderungen (Wer, Was, Wann, IP-Adresse).
🛡️ Sicherheit auf Enterprise-Niveau
LibreAdmin wurde nach dem Prinzip "Security by Design" entwickelt:
- CSRF-Schutz: Jedes Formular ist durch kryptografische Tokens gegen Cross-Site Request Forgery abgesichert.
- XSS-Prävention: Konsequente Maskierung aller Ausgaben und sichere JSON-Datenübergabe an Frontend-Komponenten.
- SQL-Injection Schutz: Strikte Whitelist-Prüfung von Tabellennamen und Einsatz von Prepared Statements.
- Session Hardening: Abgesicherte Cookies (
HttpOnly,SameSite=Strict) und regelmäßige ID-Regeneration. - Security Headers: Aktive CSP (Content Security Policy), X-Frame-Options und DarkReader-Lock.
- Datenschutz: Keine externen CDNs für Schriften (lokaler Font-Stack) – keine Datenübermittlung an Google.
🚀 Installation & Setup
Voraussetzungen
- PHP >= 8.4 (mit FPM, SQLite3, cURL, MBString)
- LibreWorkspace Instanz
Als Standalone App
- Repository klonen oder Dateien kopieren.
- Abhängigkeiten installieren:
php composer.phar install --no-dev .envDatei basierend auf.env.exampleerstellen und OIDC-Daten eintragen.- Server starten:
php -S localhost:8000 -t public public/index.php
Als LibreWorkspace Addon
LibreAdmin ist vollständig als natives Modul vorbereitet. Das Repository als .zip Archiv herunterladen und im Libre Workspace in der Lokalen Addon Verwaltung hochladen und installieren.
📖 API Nutzung
Die API ist unter /api/{tabelle} erreichbar.
Beispiel mit API-Key:
curl -H "Api-key: <DEIN_KEY>" https://libreadmin.deine-domain.de/api/posts
📁 Struktur
src/Auth/: OIDC-Logik und Login-Flow.src/Controller/: Admin-, API- und Auth-Steuerung.src/Core/: Zentrale Komponenten (Sicherheit, Audit-Log, Router, DB).views/: Hochwertige Tailwind CSS & Alpine.js Templates.
Grafik & Design von Novi-Raven | Entwickelt für den LibreWorkspace | Coded with help from Gemini CLI. Fehler können vorhanden sein.