172 lines
7.2 KiB
Markdown
172 lines
7.2 KiB
Markdown
# 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 ✅)
|
|
|
|
- [x] Entwurf des Datenbankschemas für benutzerorientierte Mindmaps
|
|
- [x] Implementierung der Modelle in models.py
|
|
- [x] Erstellung der API-Endpunkte für CRUD-Operationen
|
|
- [x] Integration mit der bestehenden Benutzerauthentifizierung
|
|
- [x] Seed-Daten für die Entwicklung und Tests
|
|
|
|
## Phase 2: Dynamische Mindmap-Visualisierung (Abgeschlossen ✅)
|
|
|
|
- [x] Anpassung des Frontend-Codes zur Verwendung der DB-Daten anstelle des SVG
|
|
- [x] Implementierung von AJAX-Anfragen zum Laden der Mindmap-Daten
|
|
- [x] Dynamisches Rendering der Knoten, Verbindungen und Labels
|
|
- [x] Drag-and-Drop-Funktionalität für die Bewegung von Knoten
|
|
- [x] Zoom- und Pan-Funktionalität mit Persistenz der Ansicht
|
|
- [x] Verbesserte Fehlerbehandlung in der Knotenvisualisierung
|
|
- [x] Robustere Verbindungserkennung zwischen Knoten
|
|
- [x] Implementierung von Glasmorphismus-Effekten für moderneres UI
|
|
|
|
## Phase 3: Visuelles Design und UX (Abgeschlossen ✅)
|
|
|
|
- [x] Implementierung des Dark Mode
|
|
- [x] Entwicklung eines modernen, minimalistischen UI
|
|
- [x] Animierter neuronaler Netzwerk-Hintergrund mit WebGL
|
|
- [x] Responsive Design für alle Geräte
|
|
- [x] Verbesserte Hover- und Selektionseffekte
|
|
- [x] Clustertopologie für neuronale Netzwerkdarstellung
|
|
- [x] Animierte Neuronenfeuer-Simulation mit Signalweiterleitung
|
|
|
|
## Phase 4: Benutzerdefinierte Mindmaps (Aktuell 🔄)
|
|
|
|
- [x] 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
|
|
|
|
- [x] 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. |