A local-first visual library for everything worth finding again.
Native macOS · SwiftUI · Local-first · MIT licensed
Loci brings websites, images, screenshots, X bookmarks, notes, PDFs, and documents into one fast visual workspace. Browse references as a grid, arrange them spatially, search by text or appearance, and build a local Markdown knowledge vault without giving up ownership of your library.
Note
Loci is pre-1.0 software. The source is ready for contributors, while public binary distribution still requires signed and notarized release artifacts.
Saving is easy. Finding the useful thing again is the hard part.
Loci keeps references visible and connected instead of scattering them across browser bookmarks, Downloads, screenshots, notes, and open tabs. The library stays on your Mac by default and can be moved to a folder-backed location you control.
- Capture by drag and drop, paste, screenshot, URL, browser extension, X bookmark sync, or local API.
- Browse in Grid, Canvas, and Infinity modes designed for visual memory.
- Search by text, dominant color, and visual similarity.
- Preview images, websites, PDFs, Office documents, and text files.
- Extract text with Vision OCR and optional document-processing helpers.
- Turn rendered websites into clean local Markdown, with optional curl.md fallback for weak extractions.
- Build and export an Obsidian-compatible Markdown vault.
- Use local search without an LLM, or optionally connect OpenRouter or Ollama.
- Keep telemetry off by default; when enabled, only allowlisted aggregate events are recorded.
- macOS 15 or newer
- Swift 6
- Xcode or Apple Command Line Tools
Optional integrations have their own requirements. See Integrations.
Signed and notarized builds are published on the GitHub Releases page. Download the DMG, open it, and drag Loci to the Applications shortcut. Release assets include SHA256SUMS.txt so you can verify the download with:
shasum -a 256 -c SHA256SUMS.txtIf the Releases page has no DMG yet, a public binary has not been published; use the source build below in the meantime.
git clone <your-fork-or-repository-url>
cd Loci
swift build
swift test
swift run LociFor optional local configuration:
cp .env.example .envNever commit the resulting .env file.
Loci is local-first:
- Libraries, extracted text, thumbnails, and the Markdown vault remain local unless you deliberately use an external integration.
- X OAuth tokens are stored in the macOS Keychain.
- The local API binds to loopback by default and protects sensitive routes with a bearer token.
- Telemetry is disabled by default and excludes file contents, URLs, bookmark text, prompts, model responses, tokens, and local paths.
- LLM features are optional. Source text is sent only when you choose a configured external provider.
- Local website extraction is enabled by default and can be disabled; the optional curl.md fallback sends an eligible website URL only after you enable it.
Read the complete Telemetry and Privacy and Security policies.
The unpacked Chrome/Edge WebExtension lives in BrowserExtension/. With Loci running:
- Open
chrome://extensions. - Enable Developer Mode.
- Choose Load unpacked.
- Select the
BrowserExtensionfolder.
The extension talks only to Loci's local endpoint by default. See the extension guide.
.
├── Sources/Loci/ Native macOS application
├── Tests/LociTests/ Swift test suite
├── BrowserExtension/ Chrome and Edge WebExtension
├── Support/ Bundle metadata and icon sources
├── scripts/ Packaging and optional helper tools
├── docs/ Architecture, privacy, integrations, and releases
└── Package.swift Swift package definition
Start with Architecture for system boundaries or Project Structure for the complete file map.
swift build
swift testCreate an ad-hoc local app package:
ALLOW_ADHOC=1 KEEP_APP=1 scripts/package-beta.shSigned and notarized distribution is documented in the Release Checklist.
Contributions are welcome. Please read CONTRIBUTING.md, follow the Code of Conduct, and use the issue templates for reproducible bug reports and focused proposals.
Security vulnerabilities should be reported privately according to SECURITY.md, never through a public issue.
Loci is available under the MIT License.