Files
website/ROADMAP.md

7.2 KiB

Systades Mindmap - Entwicklungs-Roadmap

Diese Roadmap beschreibt die geplante Entwicklung der dynamischen, benutzerorientierten Mindmap-Funktionalität für das Systades-Projekt.

Phase 1: Grundlegendes Datenmodell und Backend (Abgeschlossen )

  • Entwurf des Datenbankschemas für benutzerorientierte Mindmaps
  • Implementierung der Modelle in models.py
  • Erstellung der API-Endpunkte für CRUD-Operationen
  • Integration mit der bestehenden Benutzerauthentifizierung
  • Seed-Daten für die Entwicklung und Tests

Phase 2: Dynamische Mindmap-Visualisierung (Abgeschlossen )

  • Anpassung des Frontend-Codes zur Verwendung der DB-Daten anstelle des SVG
  • Implementierung von AJAX-Anfragen zum Laden der Mindmap-Daten
  • Dynamisches Rendering der Knoten, Verbindungen und Labels
  • Drag-and-Drop-Funktionalität für die Bewegung von Knoten
  • Zoom- und Pan-Funktionalität mit Persistenz der Ansicht
  • Verbesserte Fehlerbehandlung in der Knotenvisualisierung
  • Robustere Verbindungserkennung zwischen Knoten
  • Implementierung von Glasmorphismus-Effekten für moderneres UI

Phase 3: Visuelles Design und UX (Abgeschlossen )

  • Implementierung des Dark Mode
  • Entwicklung eines modernen, minimalistischen UI
  • Animierter neuronaler Netzwerk-Hintergrund mit WebGL
  • Responsive Design für alle Geräte
  • Verbesserte Hover- und Selektionseffekte
  • Clustertopologie für neuronale Netzwerkdarstellung
  • Animierte Neuronenfeuer-Simulation mit Signalweiterleitung

Phase 4: Benutzerdefinierte Mindmaps (Aktuell 🔄)

  • UI für das Betrachten bestehender Mindmaps
  • UI für das Erstellen und Bearbeiten eigener Mindmaps
  • Funktion zum Hinzufügen/Entfernen von Knoten aus der öffentlichen Mindmap
  • Speichern der Knotenpositionen und Ansichtseinstellungen
  • Benutzerspezifische Visualisierungseinstellungen
  • Dashboard mit Übersicht aller Mindmaps des Benutzers

Phase 5: Notizen und Annotationen

  • Anzeige von Gedanken zu Mindmap-Knoten
  • UI für das Hinzufügen privater Notizen zu Knoten
  • Visuelle Anzeige von Notizen in der Mindmap
  • Texteditor mit Markdown-Unterstützung für Notizen
  • Kategorisierung und Farbkodierung von Notizen
  • Suchfunktion für Notizen

Phase 6: Tagging und Quellenmanagement

  • Tagging-System für Inhalte implementieren
  • Verknüpfen von Quellen mit Mindmap-Knoten
  • Upload-Funktionalität für Dateien und Medien
  • Verwaltung von Zitaten und Referenzen
  • Visuelles Feedback für Tags und Quellen in der Mindmap

Phase 7: Integrationen und Erweiterungen

  • Import/Export-Funktionalität für Mindmaps (JSON, PNG)
  • Teilen von Mindmaps (öffentlich/privat/mit bestimmten Benutzern)
  • Kollaborative Bearbeitung von Mindmaps
  • Verknüpfung mit externen Ressourcen (Links, Dateien)
  • Versionierung von Mindmaps

Phase 8: KI-Integration und Analyse

  • KI-gestützte Vorschläge für Verbindungen zwischen Knoten
  • Automatische Kategorisierung von Inhalten
  • Visualisierung von Beziehungsstärken und -typen
  • Mindmap-Statistiken und Analysen
  • KI-basierte Zusammenfassung von Teilbereichen der Mindmap

Phase 9: Optimierung und Skalierung

  • Performance-Optimierung für große Mindmaps
  • Verbesserung der Benutzerfreundlichkeit basierend auf Feedback
  • Erweiterte Such- und Filterfunktionen
  • Mobile Optimierung
  • Offline-Funktionalität mit Synchronisierung

Technische Schulden und Refactoring

  • Trennung der Datenbank-Logik vom Flask-App-Code
  • Einführung von Unit-Tests und Integration-Tests
  • Überarbeitung der API-Dokumentation
  • Caching-Strategien für bessere Performance
  • Verbesserte Fehlerbehandlung und Logging

KI-Integration

Aktuelle Implementation

  • Integration von OpenAI mit dem gpt-4o-mini-Modell für den KI-Assistenten
  • Datenbankzugriff für den KI-Assistenten, um direkt Informationen aus der Datenbank abzufragen
  • Verbesserte Benutzeroberfläche für den KI-Assistenten mit kontextbezogenen Vorschlägen

Zukünftige Verbesserungen

  • Implementierung von Vektorsuche für präzisere Datenbank-Abfragen durch die KI
  • Erweiterung der KI-Funktionalität für tiefere Analyse von Zusammenhängen zwischen Gedanken
  • KI-gestützte Vorschläge für neue Verbindungen zwischen Gedanken basierend auf Inhaltsanalyse
  • Finetuning des KI-Modells auf die spezifischen Anforderungen der Anwendung
  • Erweiterung auf multimodale Fähigkeiten (Bild- und Textanalyse)

Implementierungsdetails

Datenbankschema

Das Datenbankschema umfasst folgende Hauptentitäten:

  1. Category - Wissenschaftliche Kategorien für die öffentliche Mindmap
  2. MindMapNode - Öffentliche Mindmap-Knoten mit Metadaten
  3. UserMindmap - Benutzerdefinierte Mindmaps
  4. UserMindmapNode - Verknüpfung zwischen Benutzermindmaps und öffentlichen Knoten
  5. MindmapNote - Benutzerspezifische Notizen
  6. Thought - Gedanken und Inhalte, die Knoten zugeordnet sind
  7. ThoughtRelation - Beziehungen zwischen Gedanken

Frontend-Technologien

  • D3.js für die Visualisierung der Mindmap
  • WebGL für den neuronalen Netzwerk-Hintergrund
  • AJAX für dynamisches Laden von Daten
  • Interaktive Bedienelemente mit JavaScript
  • Responsive Design mit Tailwind CSS

Backend-APIs

Die implementierten API-Endpunkte umfassen:

  • /api/mindmap/public - Abrufen der öffentlichen Mindmap-Struktur
  • /api/mindmap/user/<id> - Abrufen benutzerdefinierter Mindmaps
  • /api/mindmap/<id>/add_node - Hinzufügen eines Knotens zur Benutzer-Mindmap
  • /api/mindmap/<id>/remove_node/<node_id> - Entfernen eines Knotens
  • /api/mindmap/<id>/update_node_position - Aktualisierung von Knotenpositionen
  • /api/mindmap/<id>/notes - Verwaltung von Notizen
  • /api/nodes/<id>/thoughts - Abrufen und Hinzufügen von Gedanken zu Knoten
  • /api/get_dark_mode - Abrufen der Dark Mode Einstellung

Neuronaler Netzwerk-Hintergrund

Der neue WebGL-basierte Hintergrund bietet:

  • WebGL-basierte Rendering-Engine für optimale Performance
  • Dynamische Knoten und Verbindungen mit realistischem Verhalten
  • Clustering von neuronalen Knoten für natürlicheres Erscheinungsbild
  • Simulation von neuronaler Aktivität und Signalweiterleitung
  • Anpassbare visuelle Parameter (Helligkeit, Dichte, Geschwindigkeit)
  • Vollständig responsives Design für alle Bildschirmgrößen

Aktuelle Verbesserungen

  • Tailwind CSS wurde auf CDN-Version aktualisiert (06.06.2024)
  • Content Security Policy (CSP) für Tailwind CSS CDN und WebGL konfiguriert
  • Behebung kritischer Fehler in der Mindmap-Knotenvisualisierung (15.06.2024)
  • Verbesserte Verbindungserkennung zwischen Knoten implementiert
  • Robuste Fehlerbehandlung für verschiedene API-Datenformate

Zukünftige Aufgaben (Q3 2024)

  • Implementierung des Tagging-Systems für Gedanken
  • Quellenmanagement für Mindmap-Knoten
  • Erweiterte Benutzerprofilfunktionen
  • Verbesserung der mobilen Benutzererfahrung
  • Integration von Exportfunktionen für Mindmaps

Zuletzt aktualisiert: 15.06.2024

[Entfernt] CORS-Unterstützung (flask-cors)

  • Die flask-cors-Bibliothek und alle zugehörigen Initialisierungen wurden entfernt.
  • CORS wird nicht mehr unterstützt oder benötigt.