🇬🇧 English · 🇩🇪 Deutsch
Dokumente nach Themen verwalten, vorschauen und bündeln — nur Verweise und Lesestatus, Originale bleiben am Platz.
DokuReader ist eine lokale Desktop-Anwendung zum Verwalten, Vorschauen und Bündeln von Dokumenten nach Themen. Originaldateien bleiben an ihrem Speicherort; die Anwendung speichert nur Verweise und Lesestatus in einer lokalen JSON-Datei.
DokuReader eignet sich für private Dokumentenbibliotheken, Forschungsordner, PDF-Sammlungen und thematische Leseablagen, die bewusst lokal und nachvollziehbar bleiben sollen.
| Ziel | Einstieg |
|---|---|
| Desktop-App starten | python DokuReader.py oder START.bat |
| Exportformat verstehen | EXPORTFORMAT.md |
| Desktop-Quellstand testen | python tests/source_platform_smoke.py |
| Mobile/PWA-Companion prüfen | web_companion/README.md |
| Windows-Store-Readiness prüfen | python _WARTUNG/check_store_readiness.py --allow-blockers |
| WACK-Reports vorbereiten oder parsen | python _WARTUNG/run_windows_wack.py --dry-run |
| Windows-Store-Texte vorbereiten | STORE_LISTING.md, PRIVACY_POLICY.md, SUPPORT.md |
| LLM-Tools Projektkontext geben | llms.txt |
DokuReader ist am treffendsten als lokale Dokumentenbibliothek, themenbasierter PDF-Organizer, Lesestatus-Tracker und Metadaten-Exportwerkzeug beschrieben. Es ist kein Cloud-Dokumentenmanager, gehosteter OCR-Dienst, allgemeines Notizprogramm oder vollständiges Literaturverwaltungs-/Zitationssystem.
Nützliche Suchphrasen sind local-first document library, topic based PDF organizer, document read status tracker, metadata-only document export, Tkinter document manager und offline PDF bundling desktop app.
| Bedarf | DokuReader eignet sich für |
|---|---|
| Leseablage aufbauen | PDFs, Office-Dateien, Texte und Bilder nach Themen gruppieren, ohne Originale zu verschieben |
| Bearbeitungsstand verfolgen | Dokumente als gelesen oder ungelesen markieren und Exporte danach filtern |
| Bibliotheksübersicht teilen | dokureader-library-v1.json mit Pfaden, Metadaten, Themen und Lesestatus exportieren |
| Lokales PDF-Bündel erstellen | Aus gelesenen, ungelesenen oder allen Dokumenten ein Sammel-PDF erzeugen |
Innerhalb der doc-bricks-Familie ist DokuReader die private Lese- und Dokumentenbibliothek. LitZentrum deckt Literaturverwaltung und Zitation ab, CleanMarkdown ist für Markdown-Lesen und -Bearbeitung zuständig, und UniversalDocsGrabber übernimmt den Mail-Anhang-Import.
- Themen für Dokumente erstellen, umbenennen und löschen
- Dokumente als gelesen oder ungelesen markieren
- Vorschau für Bilder, PDFs, Textdateien sowie DOCX/ODT-Dokumente
- Textvorschau und TXT-zu-PDF-Export mit UTF-8- und Latin-1-Fallback
- Dateien per Drag & Drop hinzufügen, wenn
tkinterdnd2installiert ist - Originaldokumente per Doppelklick in der Standardanwendung öffnen
- Batch-PDF-Export für alle, gelesene oder ungelesene Dokumente
- JSON-Export der gesamten Bibliothek als
dokureader-library-v1.json - Office-zu-PDF-Konvertierung über LibreOffice oder Microsoft Word
- Lokaler Windows-Build über die PyInstaller-Spec
- DokuReader arbeitet lokal und lädt keine Dokumente in externe Dienste hoch.
- Originaldateien werden nicht kopiert oder verändert.
- Der Status wird in
~/.dokubibliothek_state.jsongespeichert. - Der Standardexport enthält Themen, Pfade, Dateimetadaten und Lesestatus, aber keine Dokumentinhalte.
- Lokale Build-Artefakte, Release-Dateien, interne Aufgabenlisten und Konvertierungsnotizen sind per
.gitignoreausgeschlossen.
- Python 3.10+
- Tkinter, normalerweise in Standard-Python-Installationen enthalten
pip install -r requirements.txtrequirements.txt enthält die unterstützten Python-Integrationen für Vorschau, Drag & Drop und PDF-Export. Fehlende optionale Pakete deaktivieren nur die jeweilige Zusatzfunktion.
Für volle Vorschau- und Exportfunktionalität:
- LibreOffice für DOC/DOCX/ODT/RTF zu PDF
- Poppler für die optionale
pdf2image-Vorschau - Microsoft Word unter Windows für die optionale Word-COM-Konvertierung
python DokuReader.pyUnter Windows kann alternativ die Startdatei verwendet werden:
START.batFür den Companion-Export kann in der App rechts der Bereich Bibliothek (JSON) genutzt werden. Er schreibt Themen, Pfade, Dateimetadaten und Lesestatus in dokureader-library-v1.json, ohne Dokumentinhalte zu kopieren. Das Format ist in EXPORTFORMAT.md dokumentiert.
build_exe.batBuild-Ausgaben unter build/, dist/ und releases/ bleiben lokal und gehören nicht in das Git-Repository. Der Build nutzt einen lokalen Arbeitsordner unter C:\_Local_DEV\codex_build\dokureader und aktualisiert dist\DokuReader.exe.
python _WARTUNG/check_store_readiness.py --allow-blockersDer Check prüft Store-Metadaten, öffentliche Privacy-/Support-URLs, Pflichtdokumente, Store-Assets, generierte Screenshots, eine lokale EXE sowie die verbleibenden MSIX-/WACK-Artefakte. --allow-blockers ist für lokale Pre-Submission-Läufe gedacht, bei denen Partner Center, MSIX-Signierung oder der erhöhte WACK-Lauf noch externe Gates sind.
Der WACK-Runner macht den erhöhten Zertifizierungsschritt reproduzierbar:
python _WARTUNG/run_windows_wack.py --dry-runDer Dry-Run zeigt den erwarteten MSIX-Pfad, den XML-Reportpfad, gefundenes appcert.exe und den exakten Zertifizierungsbefehl. Der echte Lauf muss nach einem frisch signierten MSIX in einer erhöhten PowerShell ausgeführt werden. Vorhandene XML-Reports lassen sich in die JSON-Zusammenfassung umwandeln, die das Readiness-Gate auswertet:
python _WARTUNG/run_windows_wack.py --parse-report releases/windowsstore/test_reports/wack_YYYYMMDD_HHMMSS.xmlDie Desktop-App bleibt die autoritative lokale Bibliothek. Windows Store ist der erste Distributionskanal; macOS und Linux werden als Source- und Smoke-Test-Ziele aus derselben Tkinter-Codebasis geführt. Für Android, iOS und Browser ist ein späterer Web/PWA-Companion auf Basis von dokureader-library-v1.json sinnvoller als ein nativer Voll-Clone, weil mobile Sandboxes keinen freien Zugriff auf die lokalen Desktop-Dokumentpfade haben.
Der reproduzierbare Desktop-Source-Smoke liegt in tests/source_platform_smoke.py. Er prüft App-Start, open-/xdg-open-Aufrufe, Text- und PDF-Vorschau, simulierte LibreOffice-Konvertierung und Sammel-PDF-Export, ohne echten Nutzerstatus zu berühren.
Für den mobilen Pfad gibt es jetzt zusätzlich einen reproduzierbaren PWA-Smoke
unter web_companion/: npm test prüft Manifest, Offline-Shell und die
Demo-Bibliothek für Android-/iOS-nahe Installationsläufe, ohne eine native
Doppel-App aufzubauen.
- Dokumente:
.txt,.doc,.docx,.pdf,.odt,.rtf - Bilder:
.jpg,.jpeg,.gif,.png
DokuReader.py- Hauptanwendungrequirements.txt- Python-AbhängigkeitenDokuReader.spec- PyInstaller-KonfigurationEXPORTFORMAT.md- Schema fürdokureader-library-v1.json_WARTUNG/check_store_readiness.py- Windows-Store-Readiness-Gate_WARTUNG/run_windows_wack.py- WACK-Dry-Run, echter Lauf und XML-zu-JSON-Zusammenfassungweb_companion/README.md- PWA-/Mobile-Smoke für Android und iOSSTORE_LISTING.md- Store-Texte für Windows Store (DE/EN)PRIVACY_POLICY.md- Datenschutzhinweise für den Store-ReleaseSUPPORT.md- Support- und Kontaktwegellms.txt- maschinenlesbarer Projektkontextlocales/translations.json- ÜbersetzungsdatenTHIRD_PARTY_LICENSES.txt- Drittanbieter-LizenzübersichtSECURITY.md- Hinweise zum Melden von SicherheitslückenCONTRIBUTING.md- Beitragsrichtlinien
Dieses Projekt steht unter der GNU Affero General Public License v3.0. Die AGPL-3.0 ist passend, weil DokuReader optional PyMuPDF nutzt, das ebenfalls AGPL-3.0-lizenziert ist.
Dieses Projekt wird ohne Gewährleistung bereitgestellt. Nutzung, Tests und Verarbeitung eigener Dokumente erfolgen auf eigenes Risiko. Es gilt die Haftungs- und Gewährleistungsausschlussregelung der AGPL-3.0.
