{"id":46451540,"url":"https://github.com/filippostanghellini/docfinder","last_synced_at":"2026-04-25T11:01:14.947Z","repository":{"id":322464933,"uuid":"1089097650","full_name":"filippostanghellini/DocFinder","owner":"filippostanghellini","description":"DocFinder is a local-first indexing and searching documents using semantic embeddings stored in SQLite. Everything runs on your machine, no external services required.","archived":false,"fork":false,"pushed_at":"2026-04-25T09:15:46.000Z","size":5842,"stargazers_count":21,"open_issues_count":16,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-25T10:24:23.166Z","etag":null,"topics":["documentsearch","local-first","local-llm","offline","pdf","privacy","rag","semantic-search","sentence-transformers"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/filippostanghellini.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-03T22:06:24.000Z","updated_at":"2026-04-25T09:11:00.000Z","dependencies_parsed_at":"2025-12-11T19:35:26.768Z","dependency_job_id":null,"html_url":"https://github.com/filippostanghellini/DocFinder","commit_stats":null,"previous_names":["filippostanghellini/docfinder"],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/filippostanghellini/DocFinder","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filippostanghellini%2FDocFinder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filippostanghellini%2FDocFinder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filippostanghellini%2FDocFinder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filippostanghellini%2FDocFinder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/filippostanghellini","download_url":"https://codeload.github.com/filippostanghellini/DocFinder/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filippostanghellini%2FDocFinder/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32259472,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-25T09:15:33.318Z","status":"ssl_error","status_checked_at":"2026-04-25T09:15:31.997Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["documentsearch","local-first","local-llm","offline","pdf","privacy","rag","semantic-search","sentence-transformers"],"created_at":"2026-03-06T00:32:05.651Z","updated_at":"2026-04-25T11:01:14.941Z","avatar_url":"https://github.com/filippostanghellini.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DocFinder\n\n[![CI](https://img.shields.io/github/actions/workflow/status/filippostanghellini/DocFinder/ci.yml?branch=main\u0026label=CI\u0026logo=github)](https://github.com/filippostanghellini/DocFinder/actions/workflows/ci.yml)\n[![CodeQL](https://img.shields.io/github/actions/workflow/status/filippostanghellini/DocFinder/codeql.yml?branch=main\u0026label=CodeQL\u0026logo=github)](https://github.com/filippostanghellini/DocFinder/actions/workflows/codeql.yml)\n[![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](LICENSE)\n[![Python](https://img.shields.io/badge/python-3.10%2B-blue?logo=python\u0026logoColor=white)](https://www.python.org/downloads/)\n[![Release](https://img.shields.io/github/v/release/filippostanghellini/DocFinder?logo=github)](https://github.com/filippostanghellini/DocFinder/releases)\n[![Downloads](https://img.shields.io/github/downloads/filippostanghellini/DocFinder/total?logo=github)](https://github.com/filippostanghellini/DocFinder/releases)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"Logo.png\" alt=\"DocFinder Logo\" width=\"160\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eLocal-first semantic search for your documents.\u003c/strong\u003e\u003cbr\u003e\n  Supports PDF, Word (.docx), Markdown, and plain text files.\u003cbr\u003e\n  Everything runs on your machine — no cloud, no accounts, complete privacy.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images/demo.gif\" alt=\"DocFinder Demo\" width=\"700\"\u003e\n\u003c/p\u003e                                                                        \n\n## Features\n\n- **Semantic search** — find documents by meaning, not just keywords (PDF, DOCX, Markdown, TXT)\n- **AI chat** — ask questions about any document and get precise answers, powered by local Qwen models (automatically selects the best model for your hardware)\n- **100% local** — your files never leave your machine\n- **GPU accelerated** — auto-detects Apple Silicon (Metal), NVIDIA (CUDA), AMD (ROCm)\n- **Cross-platform** — native apps for macOS, Windows, and Linux\n- **Global shortcut** (Experimental) — bring DocFinder to front from anywhere with a configurable hotkey\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images/chat.png\" alt=\"DocFinder Chat\" width=\"700\"\u003e\n\u003c/p\u003e\n\n## Download\n\n| Platform | Installer |\n|----------|-----------|\n| **macOS** | [DocFinder-macOS.dmg](https://github.com/filippostanghellini/DocFinder/releases/latest) |\n| **Windows** | [DocFinder-Windows-Setup.exe](https://github.com/filippostanghellini/DocFinder/releases/latest) |\n| **Linux** | [DocFinder-Linux-x86_64.AppImage](https://github.com/filippostanghellini/DocFinder/releases/latest) |\n\n**macOS** — open the DMG, drag DocFinder to Applications, then right-click → **Open** on first launch (Gatekeeper warning — normal for unsigned open-source apps).\n\n**Windows** — run the installer; if SmartScreen appears choose **More info → Run anyway**.\n\n**Linux**\n```bash\nchmod +x DocFinder-Linux-x86_64.AppImage \u0026\u0026 ./DocFinder-Linux-x86_64.AppImage\n```\n\n## Run from Source\n\nRequires Python 3.10+ and `make`.\n\n```bash\ngit clone https://github.com/filippostanghellini/DocFinder.git\ncd DocFinder\nmake setup   # create .venv and install all dependencies\nmake run     # desktop GUI\nmake run-web # web interface at http://127.0.0.1:8000\n```\n\n### Runtime acceleration (auto)\n\nDocFinder automatically selects the best available runtime on your machine:\n\n- NVIDIA: ONNX CUDA provider when available, otherwise PyTorch CUDA\n- AMD: ONNX ROCm provider when available, otherwise PyTorch fallback\n- Apple Silicon: optimized ONNX path\n- CPU-only hosts: ONNX or PyTorch CPU fallback\n\nIndexing uses a balanced parallel parser strategy by default, selected automatically based on your\nmachine resources.\n\n## Contributing\n\nContributions are welcome, feel free to open an issue or submit a pull request.\n\n## License\n\nLicensed under the **GNU Affero General Public License v3.0 (AGPL-3.0)**.\n\n\u003e DocFinder was originally released under the MIT License. Starting from version 1.1.1 the license was changed to AGPL-3.0 to comply with the [PyMuPDF](https://pymupdf.readthedocs.io/) licensing requirements, as PyMuPDF itself is AGPL-3.0 licensed.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffilippostanghellini%2Fdocfinder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffilippostanghellini%2Fdocfinder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffilippostanghellini%2Fdocfinder/lists"}