e97a748b35bbcdfb45dba4749126cc0a1b03c33a
Fable-5-Review (n)+(o) beim Gegenlesen von server.py auf dem Pi: (o) KRITISCH: /api/ban, /api/unban, /api/toggle-registration, /api/create-invite, /api/run-stats sind über https://dashboard.steggi-matrix.work oeffentlich erreichbar und pruefen KEINEN Token (per curl belegt: App-eigene 400-Antwort ueber die oeffentliche URL). Fremde koennten Uta sperren oder offene Registrierung aktivieren; Hostname ist ueber CT-Logs auffindbar. Nicht blind gefixt (jede Auth-Ergaenzung legt Bernds Dashboard bis zur Token-Eingabe lahm -> kein Aussperren). Fertiger Plan mit zwei Wegen (Cloudflare Access / DASH_TOKEN) in docs/DASHBOARD_AUTH_HARDENING.md, ROADMAP M0 dringend, wartet auf Bernds Wahl. (n) LiveKit-Token-Route POST /api/livekit-token wurde von einer abgebrochenen Session bereits live in server.py gebaut (unprotokolliert). Geprueft + headless verifiziert (401/400/413/200, JWT-Signatur unabhaengig gegen livekit.yaml gueltig, Identitaet = gepruefte user_id). Server-Seite des M0-LiveKit-Punkts erledigt; Client-Umstellung + Rotation bleiben PC/Geraet (heiliger Call-Pfad). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Pyramid
Pyramid ist ein eigenständiger Matrix-Client (Flutter), kein Fork von FluffyChat
oder Element. Er läuft gegen den selbst gehosteten Homeserver steggi-matrix.work
(Continuwuity) und ist bei echten Nutzern im Einsatz – Stabilität und
Datensicherheit haben Vorrang vor Feature-Tempo.
Funktionsumfang
- Matrix-Chat mit Timeline, Reply, Medien, Link-Vorschauen, lokaler Volltextsuche über entschlüsselte Nachrichten (server-seitige Suche funktioniert bei E2EE nicht)
- Ende-zu-Ende-Verschlüsselung (vodozemac/Olm/Megolm) inkl. Key-Backup
- Sprach-/Video-Calls und Bildschirmübertragung über LiveKit
(
wss://livekit.steggi-matrix.work) - Push-Benachrichtigungen mit clientseitiger Entschlüsselung auch bei gekillter
App (FCM + Sygnal, siehe
docs/NOTIFICATIONS.md) - Größenverstellbares Panel-Layout (Rooms/Chat/Members) statt starrer Tabs
Build
Voraussetzung: Flutter (stable channel, siehe environment.sdk in pubspec.yaml
für die unterstützte Dart-Version).
flutter pub get
flutter run -d windows # schnellster Praxistest während der Entwicklung
flutter analyze # muss sauber bleiben
Unterstützte Zielplattformen: Android, Windows, Linux, iOS, macOS (Ordner
android/, windows/, linux/, ios/, macos/ sind Standard-Flutter-Projekte).
Release-Build (signiert, Windows + Android): scripts/release.ps1.
Projektstruktur
lib/
core/ Matrix-Client, Auth, VoIP-Manager, Storage, App-State
features/
auth/ Login, Server-Auswahl
rooms/ Raumliste, Spaces
chat/ Timeline, Composer, Medien, Dokumentenvorschau
call/ LiveKit-Calls, Voice-Channel, Mini-Call-Widget
members/ Mitgliederliste/-panel
settings/ Einstellungen
layout/ Panel-Layout (resizable)
widgets/ geteilte UI-Bausteine
utils/ Hilfsfunktionen
Weiterführende Dokumentation
CLAUDE.md– Arbeitsregeln und Infrastruktur für die Zusammenarbeit mit ClaudeROADMAP.md/PROGRESS.md– aktueller Stand und nächste Schrittedocs/NOTIFICATIONS.md– Push-Architektur (native Anzeige vs. Hintergrund-Entschlüsselung)docs/matrix-sdk/– Hinweise zum verwendeten Matrix-SDK
Description
Releases
9
Pyramid v0.1.35
Latest
Languages
Dart
83.4%
JavaScript
6.2%
CSS
3.6%
Kotlin
2.2%
C++
1.9%
Other
2.6%