Skip to content

Releases: filippostanghellini/DocFinder

Docfinder v2.1.3

Choose a tag to compare

@filippostanghellini filippostanghellini released this 13 May 22:23
07f36b2

What's Changed

Fixed

  • RAG LLM context window overflow: _load_rag_llm() was hardcoded to n_ctx=4096 instead of using the model spec's ctx_size (8192 for all Qwen2.5 models), causing "Requested tokens exceed context window" errors. The context budget is now dynamically calculated from _rag_llm.n_ctx - 800.
  • RAG model not loading on startup: Model load is now auto-triggered on page load instead of only when opening the Settings tab, fixing "RAG model not loaded" errors when chatting immediately after search.
  • RAG LLM error handling: Added try/except around LLM calls to return a proper JSON 502 error instead of an unhandled exception HTML page.

Added

  • Open button in Library: Each document row in the Library tab now has an "Open" button to open files with the system default application.
  • Settings panel reorganization: Settings tab split into three distinct cards: Shortcuts, AI Chat (RAG), and Configuration.

📦 Downloads

Platform Download
macOS DocFinder-macOS.dmg
Windows DocFinder-Windows-Setup.exe
Linux DocFinder-Linux-x86_64.AppImage

Full Changelog: v2.1.2...v2.1.3

Docfinder v2.1.2

Choose a tag to compare

@filippostanghellini filippostanghellini released this 11 May 13:47
79d40f2

What's Changed

Fixed

  • macOS indexing performance: Switched from ONNX/CoreML to PyTorch MPS backend for Apple Silicon, providing significantly faster embedding generation (from 30+ minutes to seconds for typical workloads).
  • macOS RAM calculation: Improved memory detection with psutil>=5.9.0 for accurate cross-platform RAM detection.
  • Parallel parsing crash recovery: Added BrokenExecutor fallback to sequential processing when the process pool crashes, preventing complete indexing failures.

Changed

  • Apple Silicon backend preference: PyTorch MPS is now the preferred backend for Apple Silicon (previously ONNX with ARM64 quantized model), providing 10-30x faster embedding generation.
  • Adaptive batch sizing: Embedding batch size now dynamically scales with available RAM across all platforms (4-64 chunks), instead of being hardcoded to 16 on macOS.
  • Backend detection documentation: Updated docstrings and README to accurately reflect the new backend selection strategy.
  • Test coverage improved: Expanded test coverage for backend detection and indexing (~65%).

Performance

Scope Improvement
Apple Silicon (M-series) 10-30x faster indexing through PyTorch MPS backend
High-RAM systems (16GB+) Up to 4x larger embedding batches (64 vs 16)
All platforms Consistent adaptive batch sizing based on available memory

📦 Downloads

Platform Download
macOS DocFinder-macOS.dmg
Windows DocFinder-Windows-Setup.exe
Linux DocFinder-Linux-x86_64.AppImage

Full Changelog: v2.1.1...v2.1.2

Docfinder v2.1.1

Choose a tag to compare

@filippostanghellini filippostanghellini released this 06 May 09:33
1be6063

What's Changed

Fixed

  • Chat button visibility: Fixed RAG chat buttons on search results - buttons now correctly respect the RAG enable/disable setting; buttons are hidden when RAG is disabled and visible when enabled, both on page load and after toggling the setting.
  • Windows path handling: Fixed file path normalization for "Open file" button; paths with forward slashes (/) are now properly converted to Windows backslashes (\) via os.path.normpath().

Changed

  • Test coverage improved: Expanded test coverage for settings, memory utilities, notifications, text processing, and web app endpoints (~66%).
  • Config defaults aligned: AppConfig default chunk_chars (500 -> 1200) and overlap (50 -> 200) now match Indexer defaults for consistency.

📦 Downloads

Platform Download
macOS DocFinder-macOS.dmg
Windows DocFinder-Windows-Setup.exe
Linux DocFinder-Linux-x86_64.AppImage

Full Changelog: v2.1.0...v2.1.1

What's Changed

Full Changelog: v2.1.0...v2.1.1

Docfinder v2.1.0

Choose a tag to compare

@filippostanghellini filippostanghellini released this 25 Apr 09:15
0d17b1d

What's Changed

Added

  • Cross-encoder reranking: search results are re-scored with cross-encoder/ms-marco-MiniLM-L-2-v2 for better precision; the bi-encoder fetches 3× candidates and the cross-encoder selects the best matches.
  • Parallel document ingestion: files are parsed in parallel via ProcessPoolExecutor (up to 4 workers) when indexing 4+ documents; embedding and storage stay on the main process for thread safety.
  • Balanced hardware auto-selection for embeddings: runtime selection is now more robust (e.g. NVIDIA systems without ONNX CUDA provider fall back to PyTorch CUDA instead of CPU).
  • Balanced adaptive indexing workers: parser worker count now adapts automatically to available CPU/RAM.
  • Runtime diagnostics in Settings/System Info: backend, device, GPU, and indexing mode are exposed for easier troubleshooting.
  • Hybrid RAG context strategy: small documents (≤ 20 chunks) are loaded fully into context, while larger documents use a sliding window around the matched chunk.
  • Table extraction from PDFs: PyMuPDF find_tables() tables are extracted and converted to Markdown for better embedding quality.
  • New Reranker class with lazy model loading (index/reranker.py).
  • New storage methods get_document_chunk_count() and get_all_chunks() for hybrid RAG context.
  • Reranker model preloaded at startup alongside the embedding model.
  • Search folder filters: Search tab now includes selectable indexed directory filters (All/None + checkboxes), applied at query time without re-indexing.

Changed

  • Spotlight panel (spotlight.html) redesigned to better match the main app visual style.
  • Spotlight quick-search input is now rounded with less aggressive filtering (minimum 2 chars, softer threshold, fallback rendering).
  • ONNX fallback now preserves the best available torch device (cuda/mps) instead of forcing CPU.

📦 Downloads

Platform Download
macOS DocFinder-macOS.dmg
Windows DocFinder-Windows-Setup.exe
Linux DocFinder-Linux-x86_64.AppImage

Full Changelog: v2.0.0...v2.1.0

Docfinder v2.0.0

Choose a tag to compare

@filippostanghellini filippostanghellini released this 12 Mar 17:05
e2f2337

What's Changed

Added

  • Local RAG (AI Chat) — ask questions about your documents using a fully local LLM. No data leaves your
    machine.
    • Automatic model selection based on system RAM: Qwen2.5-7B (16 GB+), Qwen2.5-3B (8–16 GB), or Qwen2.5-1.5B
      (any)
    • GPU acceleration: Apple Metal on Apple Silicon, CUDA on NVIDIA, CPU fallback
    • Models downloaded once to ~/.cache/docfinder/models/ via Hugging Face Hub
    • Chat button on search results with slide-up conversation panel
  • RAG Settings UI — toggle AI Chat, view hardware detection, select and download models with real-time
    progress tracking
  • Page-aware context retrieval — RAG uses document structure for smarter context:
    • PDF: real page boundaries
    • Markdown: heading-based sections
    • Word (.docx): groups of 10 paragraphs
    • Plain text: virtual pages of ~3000 characters
  • Multi-format document support — DocFinder now indexes PDF, plain text (.txt), Markdown (.md), and Word
    (.docx) files
  • Spotlight-style quick-search panel (experimental) — floating NSPanel summoned via global hotkey without
    switching to the main window

Changed

  • Redesigned UI theme
  • build_chunks() now stores page number in chunk metadata for all document formats
  • New [rag] optional dependency group (pip install docfinder[rag])

📦 Downloads

Platform Download
macOS DocFinder-macOS.dmg
Windows DocFinder-Windows-Setup.exe
Linux DocFinder-Linux-x86_64.AppImage

Full Changelog: v1.2.0...v2.0.0

What's Changed

Full Changelog: v1.2.0...v2.0.0

Docfinder v2.0.0-beta

Docfinder v2.0.0-beta Pre-release
Pre-release

Choose a tag to compare

@filippostanghellini filippostanghellini released this 12 Mar 12:19

What's Changed

Added

  • Multi-format document support — DocFinder now indexes PDF, plain text (.txt), Markdown (.md), and Word (.docx) files in addition to PDFs; drop any supported file or folder in the Index tab and it will be picked up automatically
  • Spotlight-style quick-search panel (experimental) — a floating panel summoned via the global hotkey lets you search documents instantly without switching to the main window.

Changed

  • Redesigned UI theme

Notes

⚠️ The Spotlight panel is experimental and still being refined — it may behave unexpectedly in some scenarios. Feedback welcome.


📦 Downloads

Platform Download
macOS DocFinder-macOS.dmg
Windows DocFinder-Windows-Setup.exe
Linux DocFinder-Linux-x86_64.AppImage

Full Changelog: v1.2.0...v2.0.0-beta

Docfinder v1.2.0

Choose a tag to compare

@filippostanghellini filippostanghellini released this 10 Mar 23:11
57e1108

What's Changed

Fixed

  • Windows: Fixed crash on startupcreate_window() raised TypeError: unexpected keyword argument 'icon' on some pywebview builds;
    the app now falls back gracefully
  • macOS: Fixed dock icon showing Python logo — the DocFinder logo is now correctly shown in the dock when running from source

Added

  • Global hotkey — bring DocFinder to the front from any app with a configurable system-wide shortcut (⌘+Shift+F on macOS,
    Ctrl+Shift+F on Windows/Linux)
  • Settings tab — enable/disable the hotkey and change the key combination via an interactive capture modal
  • Native folder picker — "Browse…" button opens Finder/Explorer directly instead of requiring manual path input

Performance

  • Indexing 2–4× faster — batch SQLite inserts, larger embedding batches (8→32), removed unnecessary GC calls and artificial
    file-batching loops
  • First request instant — embedding model loaded once at startup instead of on every request

UI

  • Real-time indexing progress bar with file counter and current filename
  • macOS-native frosted-glass header
  • ⌘K / Ctrl+K shortcut to jump to search from any tab
  • Drag & drop folder support in the Index tab
  • Relevance score shown as percentage

📦 Downloads

Platform Download
macOS DocFinder-macOS.dmg
Windows DocFinder-Windows-Setup.exe
Linux DocFinder-Linux-x86_64.AppImage

Full Changelog: v1.1.2...v1.2.0

What's Changed

Full Changelog: v1.1.2...v1.2.0

DocFinder v1.1.2

Choose a tag to compare

@filippostanghellini filippostanghellini released this 15 Dec 18:37
9eda144

What's Changed

✅ Fixed

  • Windows: Silent startup crash resolved (multiprocessing.freeze_support()), added torch.cuda hidden imports, native error dialog, and persistent startup logging.
  • UI: The Search button no longer jumps on hover.

Added

  • CI: Smoke tests for macOS, Windows, and Linux (startup/log verification).

Changed

  • Improved multiprocessing handling for PyInstaller-built apps.

📦 Downloads

Platform Download
macOS DocFinder-macOS.dmg
Windows DocFinder-Windows-Setup.exe
Linux DocFinder-Linux-x86_64.AppImage

Full Changelog: v1.1.1...v1.1.2

What's Changed

Full Changelog: v1.1.1...v1.1.2

DocFinder v1.1.1

Choose a tag to compare

@filippostanghellini filippostanghellini released this 12 Dec 16:32

What's Changed

✨ Added

  • Improved User Interface with better design and user experience

🔄 Changed

  • License changed from MIT to AGPL-3.0 to comply with PyMuPDF licensing requirements
  • Switched PDF parsing from pypdf to PyMuPDF for faster and more reliable text extraction
  • Completely revamped README with better structure and documentation

📦 Downloads

Platform Download
macOS DocFinder-macOS.dmg
Windows DocFinder-Windows-Setup.exe
Linux DocFinder-Linux-x86_64.AppImage

Full Changelog: v1.0.1...v1.1.1

What's Changed

Full Changelog: v1.0.1...v1.1.1

DocFinder v1.0.1

Choose a tag to compare

@filippostanghellini filippostanghellini released this 26 Nov 09:10

🐛 Bug Fix Release

Fixed

  • Fixed Linux build failing due to disk space issues on CI runner
  • Excluded unnecessary CUDA/GPU libraries from bundle (GPU support still works via system libraries)
  • Optimized bundle size by using CPU-only PyTorch for builds

Downloads

  • macOS: DocFinder-macOS.dmg
  • Windows: DocFinder-Windows-Setup.exe
  • Linux: DocFinder-Linux-x86_64.AppImage

Notes

GPU acceleration (NVIDIA CUDA, AMD ROCm, Apple Metal) is still fully supported - the application uses GPU libraries from your system at runtime.

Full Changelog: v1.0.0...v1.0.1