Files
pyramid/docs/feature-checklist.md
T
Bernd Steckmeister cdf48c4d45 feat: in-app update downloader with progress, Gitea auto-push hook
- update_checker: Gitea at git.steggi-matrix.work, Windows + Android support, asset URL detection
- update_download_dialog: animated Pyramid logo, progress bar, platform install (exe/apk)
- update_banner: Herunterladen button triggers dialog, dismiss option
- Android: REQUEST_INSTALL_PACKAGES permission + FileProvider for APK install
- post-commit hook: auto-push to Gitea on every commit
- chat_input: larger send button (60px desktop), more padding, bigger icon
- rooms_panel: space menu visible on mobile (leave space fix)
- docs: feature-checklist.md added

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-28 15:35:59 +02:00

11 KiB

Matrix / Element Feature Checklist für Pyramid

Stand: April 2026 — Pyramid v0.1.x (Early Development)


Nachrichten (Messaging)

Kern-Funktionen

  • Textnachrichten senden
  • Nachrichten empfangen & anzeigen
  • Zeitstempel (formatiert, relativ)
  • Nachrichtengruppierung (gleicher Sender, <5 Min.)
  • Datumstrennlinien zwischen Gruppen
  • Verschlüsselte Nachrichten anzeigen (Entschlüsselungsstatus)
  • Nachrichtenverlauf paginieren (ältere Nachrichten beim Scrollen laden)
  • Ungelesene-Nachrichten-Tracking

Nachrichtenaktionen

  • Nachrichtentext kopieren
  • Eigene Nachrichten löschen (redact)
  • Nachrichten anpinnen / Pinboard anzeigen
  • [~] Auf Nachrichten antworten (in-reply-to vorhanden, kein visuelles Zitatfeld)
  • [~] Nachrichten bearbeiten (m.edit im SDK erkannt, kein vollständiges UI)
  • Nachrichten weiterleiten
  • Zitat-Styling (visuelle Blockquote-Anzeige)

Textformatierung

  • Fett (text)
  • Kursiv (text)
  • Durchgestrichen (text)
  • Inline-Code (code)
  • Code-Block (code)
  • Aufzählungslisten
  • Klickbare Links
  • @Erwähnungen (User)
  • #Kanal-Erwähnungen
  • Spoiler-Tags (||text||)

Medien & Anhänge

  • Dateianhänge senden (mit MIME-Erkennung)
  • Bilder senden & inline anzeigen
  • Videos senden & inline abspielen
  • Audio senden & inline abspielen
  • Sticker anzeigen (m.sticker)
  • Dateianhang mit Untertitel
  • Dateigröße berechnen & anzeigen
  • Verschlüsselte Medien entschlüsseln & herunterladen
  • Thumbnail-Generierung für Bilder/Videos
  • [~] Sprachnachrichten (Struktur vorhanden, Wiedergabe-UI fehlt)
  • Animierte GIFs
  • Link-Vorschau (URL-Unfurling)
  • Dokument-Vorschau (PDF, Office)

Reaktionen

  • Emoji-Reaktionen senden
  • Reaktionszähler anzeigen
  • 6 häufigste Reaktionen als Schnellauswahl
  • Vollständiger Emoji-Picker mit Suche
  • Eigene Reaktion entfernen
  • Anzeigen wer reagiert hat
  • Mehrere Reaktionen pro Nachricht
  • Kategoriebasierte Emoji-Organisation

Threads

  • Thread-Antworten (m.in_reply_to vorhanden, kein Thread-View)
  • Thread aufklappen / eigene Ansicht
  • Thread-Benachrichtigungen
  • Thread als gelöst markieren

Raumverwaltung

Grundfunktionen

  • Raumliste anzeigen (sortiert nach letzter Aktivität)
  • Räume beitreten
  • Räume verlassen
  • Raumname & Avatar anzeigen
  • Verschlüsselungsstatus (Schloss-Icon)
  • Einladungen annehmen / ablehnen
  • Neuen Raum erstellen
  • Raumname bearbeiten
  • Raumthema/Beschreibung bearbeiten
  • Raum-Avatar ändern
  • Raumvisibilität (öffentlich / privat)
  • Zugriffsregeln (invite/knock/public)
  • Verlaufsvisibilität konfigurieren
  • Raum-Aliases verwalten

Direktnachrichten (DMs)

  • 1:1 DM-Räume anzeigen & öffnen
  • Presence-Status des Gegenübers anzeigen
  • Echtzeit-Presence-Updates
  • Sprachanruf aus DM starten
  • Videoanruf aus DM starten
  • DM starten (neuen Chat beginnen, nur über Suchfeld)

Mitglieder & Rollen

  • Mitgliederliste anzeigen
  • Mitgliederanzahl anzeigen
  • Avatar & Anzeigename der Mitglieder
  • Nutzer in Raum einladen (Raum-Kontextmenü)
  • Nutzer aus Raum entfernen (Kick)
  • Nutzer sperren (Ban)
  • Power Levels bearbeiten
  • Nutzer zum Moderator / Admin befördern
  • Bans aufheben

Raumeinstellungen

  • Raumeinstellungen-Dialog (Name, Thema, Moderationsregeln)
  • Raumverschlüsselung aktivieren/deaktivieren
  • Erweiterte Raumeinstellungen (Fluffychat-Level)
  • Widget-/App-Integration in Räume

Spaces & Gemeinschaften

Spaces

  • Spaces in der Seitenleiste anzeigen
  • Zwischen Spaces navigieren
  • Space-Avatar anzeigen
  • Space-Banner hochladen & anzeigen (Discord-Style)
  • Räume nach Space filtern
  • Virtuelle "Rooms"- und "DMs"-Spaces
  • Unterkategorien (Sub-Spaces) als Kategorien in der Kanalleiste
  • Drag-and-drop Kanalreihenfolge für Admins
  • Space-Verwaltungsdialog (Name, Avatar, Banner, Einladungen, Mitglieder, Power Levels)
  • Neuen Space erstellen
  • Räume zum Space hinzufügen / entfernen
  • Space-Regeln / Beschreibung
  • Space-Entdeckung (öffentliche Spaces durchsuchen)

Kanalorganisation

  • Kanäle nach letzter Aktivität sortieren
  • Ungelesene-Badge auf Kanälen
  • Sprachkanal-Teilnehmerliste (Discord-Style, mit Echtzeit-Updates)
  • Kollabierbare Kategorien
  • Favoriten / angeheftete Räume
  • Räume stummschalten
  • Räume ausblenden / archivieren
  • Kanalreihenfolge für reguläre Nutzer

Sprach- & Videoanrufe

Sprachanrufe (LiveKit)

  • Sprachkanal betreten / verlassen (Toggle)
  • Teilnehmerliste im Sprachkanal
  • Mikrofon stummschalten
  • Audio-Ausgabe deaktivieren (Deafen)
  • Anruf-UI im Profil-Panel (aktiver Anruf)
  • Anruf-Ansicht öffnen (Vollansicht)
  • Mini-Call-Widget bei VOIP-Anrufen
  • Klingelton bei eingehenden Anrufen
  • Anruf annehmen / ablehnen (UI)
  • Anrufdauer-Timer
  • Anrufverlauf

Videoanrufe

  • Videoanruf starten (aus DM)
  • Kamera-Toggle
  • Videoteilnehmer-Anzeige
  • Bildschirmfreigabe (Toggle-UI vorhanden, Implementierung unklar)
  • Picture-in-Picture-Modus
  • Virtueller Hintergrund

Gruppenanrufe

  • Mehrere Teilnehmer im Sprachkanal (LiveKit)
  • Gruppen-Videogitter
  • Spotlight-/Galerie-Ansicht

Benachrichtigungen & Presence

Push-Benachrichtigungen

  • Desktop-Benachrichtigungen (Windows/macOS/Linux)
  • Mobile Push-Benachrichtigungen (Android/iOS)
  • Benachrichtigungseinstellungen pro Raum
  • Nicht-Stören-Modus
  • Benachrichtigungssound konfigurieren

Presence & Status

  • Nutzer-Presence abrufen (online/offline/abwesend)
  • Presence-Indikator anzeigen
  • Letzte-Aktivität-Zeitstempel
  • Echtzeit-Presence-Updates
  • Eigenen Status setzen (online/abwesend/unsichtbar)
  • Benutzerdefinierte Statusmeldung
  • Aktivitätsbasierte Status-Änderung

Tipp-Indikatoren

  • "X tippt gerade"-Anzeige empfangen
  • Eigene Tipp-Benachrichtigung senden
  • Timeout nach Tipp-Ende

Nutzereinstellungen & Profil

Profilverwaltung

  • Eigene User-ID anzeigen
  • Eigenen Avatar anzeigen (Initialen-Fallback)
  • Anzeigenamen anzeigen
  • Anzeigenamen bearbeiten
  • Eigenen Avatar hochladen / entfernen
  • Status-Nachricht setzen

Kontosicherheit

  • Passwort ändern
  • E-Mail-Adresse verwalten
  • Sitzungsverwaltung (alle Sitzungen anzeigen)
  • Andere Sitzungen abmelden
  • Konto deaktivieren / löschen
  • Zwei-Faktor-Authentifizierung (2FA)

App-Einstellungen

  • Hell / Dunkel-Theme
  • Akzentfarbe (6 Voreinstellungen)
  • Eckradius anpassen
  • UI-Dichte / Kompaktheit
  • Animationssteuerung
  • Schriftgröße anpassen
  • Sprachauswahl (i18n)
  • Kompaktansicht (kein Avatar in Nachrichten)

Datenschutz & Sicherheit

Ende-zu-Ende-Verschlüsselung (E2EE)

  • E2EE-Unterstützung (Olm/Megolm via vodozemac)
  • E2EE-Schlüssel beim ersten Login einrichten (Bootstrap)
  • Verschlüsselte Nachrichten-Indikatoren
  • Entschlüsselungsstatus anzeigen
  • SSSS (Symmetric Secret Storage)
  • Recovery-Key erzeugen & anzeigen
  • Recovery-Key aus bestehender Einrichtung importieren
  • Schlüssel-Caching (lokal speichern)
  • Session-Keys von anderen Geräten anfordern
  • Schlüssel-Backup (Server-seitig)
  • Schlüssel-Backup verifizieren

Geräte-Verifizierung

  • Cross-Signing (Master/Self-Signing/User-Signing Keys)
  • Gerät per Emoji verifizieren
  • Gerät per Zahlencodes verifizieren
  • Geräte als vertrauenswürdig markieren
  • Gerätename / Modell anzeigen
  • Sitzungsverwaltung (alle Geräte dieses Accounts)
  • Fremde Geräte abmelden

Vertrauen & Sicherheit

  • Geräte-Vertrauensstatus-Indikator in Nachrichten
  • Nutzer blockieren / entsperren
  • Blockierte Nutzer-Liste
  • Verifizierter-Nutzer-Badge

Suche

Nachrichtensuche

  • Suchdialog öffnen (UI vorhanden)
  • Volltextsuche in Nachrichteninhalten
  • Filter nach Absender
  • Filter nach Datum
  • Filter nach Raum
  • Filter nach Medientyp
  • Suchergebnisse hervorheben
  • Suchverlauf

Nutzer- / Raumsuche

  • Nutzer nach Anzeigenamen suchen
  • Nutzer nach User-ID suchen
  • Öffentliche Räume entdecken (Directory)
  • Eigene Räume filtern
  • Räume nach Name / Thema suchen

Auto-Update

  • GitHub-Releases als Update-Quelle
  • Versions-Vergleich (SemVer)
  • Rate-Limiting (max. alle 4 Stunden prüfen)
  • Update-Banner im App-Header (Windows)
  • "Diese Version überspringen"-Option
  • Manueller Update-Check in den Einstellungen
  • Automatischer Download & Installation (Squirrel/NSIS)
  • Delta-Updates (nur geänderte Dateien)
  • Update-Kanal wählen (Stable/Beta/Nightly)

Plattform-spezifisch

Desktop (Windows / macOS / Linux)

  • Native Desktop-App (Flutter Desktop)
  • Tastenkürzel (Enter = Senden, Shift+Enter = Zeile)
  • Drag-and-Drop für Dateianhänge
  • System-Tray-Integration
  • Desktop-Benachrichtigungen
  • Minimieren in System-Tray
  • Fenster-State speichern (Größe, Position)
  • MSIX / Installer-Paketierung

Mobile (Android / iOS)

  • Mobile App (Flutter)
  • Drawer-Navigation (Hamburger-Menü)
  • Touch-optimiertes UI (derzeit Desktop-first)
  • Mobile Push-Benachrichtigungen
  • Zurück-Geste Navigation
  • Bottom-Sheet-Modals
  • Share-Sheet-Integration
  • Haptisches Feedback

Statistik

Bereich Implementiert Teilweise Fehlend
Messaging 14 2 14
Raumverwaltung 8 0 14
Spaces 10 0 6
Anrufe 8 1 10
Benachrichtigungen 4 0 8
Einstellungen/Profil 5 0 11
Sicherheit/E2EE 9 0 7
Suche 1 0 10
Auto-Update 6 0 3
Plattform 5 0 10
Gesamt ~70 ~3 ~93

Implementierungsgrad: ~42 % (inkl. Teilimplementierungen)


Empfohlene Feature-Prioritäten

  1. Textformatierung — häufig genutzt, von Nutzern erwartet
  2. Push-Benachrichtigungen — Desktop-Benachrichtigungen für Windows
  3. Tipp-Indikatoren — verbessert Gesprächsgefühl deutlich
  4. Nachrichtenbearbeitung — SDK-Grundlage vorhanden, nur UI fehlt
  5. Profilbearbeitung — Avatar & Anzeigename ändern
  6. Raum erstellen — Basis-Workflow, derzeit nicht möglich
  7. Sprachnachricht abspielen — Struktur vorhanden
  8. Suche — Dialog vorhanden, Backend-Abfrage fehlt
  9. Nutzer blockieren — Sicherheits-Grundfunktion
  10. System-Tray — Desktop-Erlebnis verbessern