π¦ Semantic Backup Explorer
Ein Python-basiertes Tool zur Synchronisation, Analyse und semantischen Durchsuchung von Backups auf externen Festplatten.
Der Semantic Backup Explorer hilft dir dabei, den Γberblick ΓΌber deine verstreuten Backups auf verschiedenen externen Laufwerken zu behalten. Der Fokus liegt auf einem einfachen One-Click Sync, um deine tΓ€gliche Arbeit schnell und unkompliziert zu sichern. Optional kannst du modernste KI-Technologie (Large Language Models) nutzen, um deine Dateien auffindbar zu machen.
π€ Warum Semantic Backup Explorer?
Hast du mehrere externe Festplatten und mΓΆchtest sicherstellen, dass dein aktuelles Projekt auf dem richtigen Backup-Stand ist? Oder suchst du verzweifelt nach Dateien, ohne jede Platte einzeln anschlieΓen zu wollen?
Hier kommt der Semantic Backup Explorer ins Spiel:
- Blitzschneller Abgleich (One-Click Sync): WΓ€hle einen lokalen Ordner, und die App findet automatisch das passende Backup-GegenstΓΌck und zeigt dir, was fehlt.
- Kompakter Index: Die App speichert die Struktur deiner Festplatte in einer kleinen Textdatei. So weiΓt du immer, was wo liegt, auch wenn die Platte im Schrank liegt.
- KI-Suche (Optional): Die KI versteht ZusammenhΓ€nge (z.B. findet sie "Rechnungen", wenn du nach "Finanzen" suchst) und hilft dir, den richtigen Backup-Ordner zu finden.
π Hauptfunktionen
- π One-Click Sync: Kopiere fehlende oder neuere Dateien mit nur einem Klick auf dein Backup-Laufwerk.
- π Intelligenter Abgleich: Findet automatisch den richtigen Zielordner auf deinem Backup.
- π Semantische Suche (Optional): Frage einfach: "Wo habe ich meine Python-Projekte gesichert?"
- π·οΈ Laufwerks-Erkennung: Erkennt automatisch den Namen (Label) deiner Festplatten unter Windows.
π Schnellstart (5 Minuten)
1. Installation
Basis (Sync & Index):
git clone https://github.com/dgaida/semantic-backup-explorer.git
cd semantic-backup-explorer
pip install -e .
Optional (Semantische Suche):
2. Web-App starten
Γffne http://localhost:7860 und starte deinen ersten Sync!π Architektur
βββββββββββββββββββ
β Gradio Web UI β
ββββββββββ¬βββββββββ
β
βΌ
βββββββββββββββββββ ββββββββββββββββ
β Sync & Compare ββββββββ€ Backup Index β
β (Core Logic) β β (Markdown) β
ββββββββββ¬βββββββββ ββββββββββββββββ
β (Optional)
βΌ
βββββββββββββββββββ ββββββββββββββββ
β RAG Pipeline ββββββββ€ ChromaDB β
β (Semantic) β β (Embeddings)β
βββββββββββββββββββ ββββββββββββββββ
π Projektstruktur
semantic_backup_explorer/
βββ cli/ # CLI-spezifische Logik & UI
β βββ commands/ # ZukΓΌnftige CLI Commands
β βββ ui/ # Gradio Web Interface
βββ core/ # Kern-Businesslogik (BackupOperations)
βββ indexer/ # Scanning-Logik
βββ chunking/ # Markdown Partitionierung
βββ rag/ # Embedding & Retrieval
βββ compare/ # Folder Diffing
βββ sync/ # Datei Synchronisation
βββ utils/ # Hilfsfunktionen (Config, Logging, Paths)
βββ exceptions.py # Custom Exceptions
βοΈ Kernfunktionen
- π One-Click Sync: Kopiere fehlende oder neuere Dateien mit nur einem Klick auf dein Backup-Laufwerk.
- π Backup-Index: Erfasse die Struktur deiner Backup-Laufwerke als kompakte Markdown-Datei.
- π Semantische Suche (Optional): Nutze KI (LLMs), um deine Backups in natΓΌrlicher Sprache zu durchsuchen.
β Troubleshooting
"GROQ_API_KEY nicht gefunden"
Stelle sicher, dass die .env Datei im Root-Verzeichnis existiert und einen gΓΌltigen API-Key enthΓ€lt:
"Python 3.14+ nicht unterstΓΌtzt"
Das Projekt nutzt ChromaDB, welches aktuell InkompatibilitΓ€ten mit Python 3.14+ aufweist. Nutze Python 3.10-3.13.
π Entwicklung
Details zur Entwicklung, Testing und CI/CD findest du in der CONTRIBUTING.md. Detailed documentation is available in the docs/ folder.
Tests ausfΓΌhren
π Lizenz
MIT License