{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,11]],"date-time":"2026-06-11T12:00:32Z","timestamp":1781179232904,"version":"3.54.1"},"reference-count":15,"publisher":"Elsevier BV","license":[{"start":{"date-parts":[[2026,6,1]],"date-time":"2026-06-01T00:00:00Z","timestamp":1780272000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"},{"start":{"date-parts":[[2026,6,1]],"date-time":"2026-06-01T00:00:00Z","timestamp":1780272000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/legal\/tdmrep-license"},{"start":{"date-parts":[[2026,5,20]],"date-time":"2026-05-20T00:00:00Z","timestamp":1779235200000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":["elsevier.com","sciencedirect.com"],"crossmark-restriction":true},"short-container-title":["SoftwareX"],"published-print":{"date-parts":[[2026,6]]},"DOI":"10.1016\/j.softx.2026.102742","type":"journal-article","created":{"date-parts":[[2026,5,27]],"date-time":"2026-05-27T02:39:21Z","timestamp":1779849561000},"page":"102742","update-policy":"https:\/\/doi.org\/10.1016\/elsevier_cm_policy","source":"Crossref","is-referenced-by-count":0,"special_numbering":"C","title":["cairnsearch: A privacy-first hybrid search and local RAG system for personal document collections"],"prefix":"10.1016","volume":"34","author":[{"ORCID":"https:\/\/orcid.org\/0009-0000-9794-1461","authenticated-orcid":false,"given":"Muhammad","family":"Waqas","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"78","reference":[{"issue":"4","key":"10.1016\/j.softx.2026.102742_bib0001","first-page":"333","article-title":"The probabilistic relevance framework: BM25 and beyond","volume":"3","author":"Robertson","year":"2009","journal-title":"Found Trends Inf Retr"},{"key":"10.1016\/j.softx.2026.102742_bib0002","series-title":"Advances in neural information processing systems 33 (NeurIPS 2020)","article-title":"Retrieval-augmented generation for knowledge-intensive NLP tasks","author":"Lewis","year":"2020"},{"key":"10.1016\/j.softx.2026.102742_bib0003","series-title":"Proceedings of EMNLP 2020","first-page":"6769","article-title":"Dense passage retrieval for open-domain question answering","author":"Karpukhin","year":"2020"},{"key":"10.1016\/j.softx.2026.102742_bib0004","unstructured":"Thakur N., Reimers N., R\u00fcckl\u00e9 A., Srivastava A., Gurevych I. BEIR: a heterogeneous benchmark for zero-shot evaluation of information retrieval models. In: NeurIPS Datasets and Benchmarks Track; 2021."},{"key":"10.1016\/j.softx.2026.102742_bib0005","unstructured":"Hipp D.R. SQLite FTS5: full-text search extension. Online: https:\/\/www.sqlite.org\/fts5.html (accessed 2026-04)."},{"key":"10.1016\/j.softx.2026.102742_bib0006","unstructured":"Ollama contributors. Ollama: get up and running with large language models locally. https:\/\/ollama.com (accessed 2026-04)."},{"key":"10.1016\/j.softx.2026.102742_bib0007","unstructured":"Nussbaum Z., Morris J., Duderstadt B., Mulyar A. Nomic Embed: training a reproducible long-context text embedder. arXiv:2402.01613; 2024."},{"key":"10.1016\/j.softx.2026.102742_bib0008","series-title":"Proceedings of ICDAR 2007","first-page":"629","article-title":"An overview of the Tesseract OCR engine","author":"Smith","year":"2007"},{"key":"10.1016\/j.softx.2026.102742_bib0009","series-title":"Proceedings of ACL 2023","article-title":"Precise zero-shot dense retrieval without relevance labels","author":"Gao","year":"2023"},{"key":"10.1016\/j.softx.2026.102742_bib0010","unstructured":"Dock\u00e8s J.-.F. Recoll: a desktop full-text search application. https:\/\/www.recoll.org (accessed 2026-04)."},{"key":"10.1016\/j.softx.2026.102742_bib0011","unstructured":"M\u00fcller T. DocFetcher: an open-source desktop search application. https:\/\/docfetcher.sourceforge.io (accessed 2026-04)."},{"key":"10.1016\/j.softx.2026.102742_bib0012","unstructured":"Mart\u00ednez I., and contributors. PrivateGPT: interact with your documents using the power of LLMs, 100% privately. https:\/\/github.com\/zylon-ai\/private-gpt (accessed 2026-04)."},{"key":"10.1016\/j.softx.2026.102742_bib0013","unstructured":"Nomic A.I. GPT4All: a free-to-use, locally running, privacy-aware chatbot. https:\/\/gpt4all.io (accessed 2026-04)."},{"key":"10.1016\/j.softx.2026.102742_bib0014","unstructured":"InfiniFlow. RAGFlow: an open-source RAG engine based on deep document understanding. https:\/\/github.com\/infiniflow\/ragflow (accessed 2026-04)."},{"key":"10.1016\/j.softx.2026.102742_bib0015","unstructured":"Waqas M. cairnsearch: privacy-first local document search and RAG. https:\/\/github.com\/smwaqas89\/cairnsearch; 2026."}],"container-title":["SoftwareX"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S2352711026002347?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S2352711026002347?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2026,6,11]],"date-time":"2026-06-11T11:26:05Z","timestamp":1781177165000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/S2352711026002347"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2026,6]]},"references-count":15,"alternative-id":["S2352711026002347"],"URL":"https:\/\/doi.org\/10.1016\/j.softx.2026.102742","relation":{},"ISSN":["2352-7110"],"issn-type":[{"value":"2352-7110","type":"print"}],"subject":[],"published":{"date-parts":[[2026,6]]},"assertion":[{"value":"Elsevier","name":"publisher","label":"This article is maintained by"},{"value":"cairnsearch: A privacy-first hybrid search and local RAG system for personal document collections","name":"articletitle","label":"Article Title"},{"value":"SoftwareX","name":"journaltitle","label":"Journal Title"},{"value":"https:\/\/doi.org\/10.1016\/j.softx.2026.102742","name":"articlelink","label":"CrossRef DOI link to publisher maintained version"},{"value":"article","name":"content_type","label":"Content Type"},{"value":"\u00a9 2026 The Author. Published by Elsevier B.V.","name":"copyright","label":"Copyright"}],"article-number":"102742"}}