{"id":49748983,"url":"https://github.com/kodydennon/pursue","last_synced_at":"2026-05-24T23:01:00.117Z","repository":{"id":356716098,"uuid":"1233688923","full_name":"KodyDennon/pursue","owner":"KodyDennon","description":"Local-first desktop OSINT evidence analyzer for WAR.gov UFO/PURSUE records.","archived":false,"fork":false,"pushed_at":"2026-05-17T23:26:18.000Z","size":7650,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-18T01:35:54.953Z","etag":null,"topics":["desktop-app","local-first","osint","rust","sqlite","svelte","tauri","ufo"],"latest_commit_sha":null,"homepage":"https://github.com/KodyDennon/pursue/releases/latest","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KodyDennon.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-05-09T08:29:57.000Z","updated_at":"2026-05-17T23:26:21.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/KodyDennon/pursue","commit_stats":null,"previous_names":["kodydennon/pursue"],"tags_count":31,"template":false,"template_full_name":null,"purl":"pkg:github/KodyDennon/pursue","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KodyDennon%2Fpursue","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KodyDennon%2Fpursue/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KodyDennon%2Fpursue/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KodyDennon%2Fpursue/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KodyDennon","download_url":"https://codeload.github.com/KodyDennon/pursue/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KodyDennon%2Fpursue/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33453557,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-24T19:21:36.376Z","status":"ssl_error","status_checked_at":"2026-05-24T19:21:10.562Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":["desktop-app","local-first","osint","rust","sqlite","svelte","tauri","ufo"],"created_at":"2026-05-10T08:22:39.002Z","updated_at":"2026-05-24T23:01:00.111Z","avatar_url":"https://github.com/KodyDennon.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PURSUE Data Analyzer\n\n[![Installer builds](https://github.com/KodyDennon/pursue/actions/workflows/release.yml/badge.svg)](https://github.com/KodyDennon/pursue/actions/workflows/release.yml)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)\n\nPURSUE Data Analyzer is a local-first desktop OSINT app for syncing, preserving, analyzing, searching, and exporting WAR.gov UFO/PURSUE evidence.\n\nThe app keeps official source snapshots, tracks changes between source releases, downloads evidence into a SHA-256 content-addressed local library, imports manual files, extracts local text/OCR when native tools are installed, indexes deterministic entities and local vector chunks, supports case notes, and exports Markdown or self-contained HTML dossiers.\n\n## Download\n\nInstallers are published from GitHub Releases:\n\nhttps://github.com/KodyDennon/pursue/releases/latest\n\nSupported release targets:\n\n- macOS 26 or newer on Apple Silicon (`aarch64-apple-darwin`).\n- Windows x64 through the default Tauri Windows installer target.\n\nRelease artifacts are unsigned. Unsigned macOS and Windows builds can trigger operating-system warnings.\n\n### macOS Install Notes\n\nDownload `PURSUE.Data.Analyzer_0.2.1_aarch64.dmg`, open it, and drag `PURSUE Data Analyzer.app` to `/Applications`.\n\nBecause the current build is unsigned and not notarized, macOS may say the app is damaged or cannot be opened. If you trust the release you downloaded from this repository, remove the quarantine attribute after installing it:\n\n```bash\nxattr -dr com.apple.quarantine \"/Applications/PURSUE Data Analyzer.app\"\n```\n\nThen open the app again from Finder or Spotlight.\n\nAlternative macOS path:\n\n1. Open System Settings.\n2. Go to Privacy \u0026 Security.\n3. If macOS shows a blocked app message for PURSUE Data Analyzer, choose Open Anyway.\n\n### Windows Install Notes\n\nDownload one Windows installer from the release:\n\n- `PURSUE.Data.Analyzer_0.2.1_x64-setup.exe`: normal interactive installer.\n- `PURSUE.Data.Analyzer_0.2.1_x64_en-US.msi`: Windows Installer package, better for managed installs.\n\nWindows may show a Microsoft Defender SmartScreen warning because the build is unsigned. Choose More info, then Run anyway if you trust the release from this repository.\n\nThe app uses the system WebView2 runtime through Tauri. Modern Windows 10 and Windows 11 installations usually already include WebView2. If the app does not open because WebView2 is missing, install the Microsoft Edge WebView2 Runtime from Microsoft and run the installer again.\n\n## Features\n\n- Sync official WAR.gov UFO/PURSUE CSV data with a real user agent.\n- Preserve immutable raw source snapshots and added/changed/removed diffs.\n- Download official evidence files and deduplicate local artifacts by SHA-256.\n- Import investigator-provided local evidence.\n- Extract digital PDF text, plain text, image OCR, and scanned-PDF OCR through local tools.\n- Index chunks, entities, metadata, and deterministic local vectors in SQLite.\n- Search records and analyzed content without hosted APIs.\n- Build cases with notes and selected records.\n- Export portable Markdown and self-contained HTML dossiers.\n\n## Privacy And Data Boundaries\n\nPURSUE Data Analyzer is local-first. App data is stored under the operating system app data directory and includes `pursue.db`, `library/`, `snapshots/`, and `exports/`.\n\nNetwork access is used for official WAR.gov source sync and evidence downloads. The app does not require hosted OCR, hosted embeddings, paid AI APIs, or third-party inference services.\n\n## Requirements\n\nFor development:\n\n- Bun 1.3.9 or newer.\n- Node.js 24 LTS or newer, with CI pinned to Node 26.\n- Rust stable.\n- Platform build tools for Tauri.\n\nOptional local OCR tools:\n\n```bash\nbrew install tesseract ocrmypdf poppler\n```\n\nWindows builds can run source sync, downloads, imports, digital text extraction, search, cases, and exports without hosted services. Image/scanned-PDF OCR requires local OCR tools available on the Windows machine.\n\n## Development\n\nInstall dependencies:\n\n```bash\nbun install\n```\n\nRun the frontend-only dev server:\n\n```bash\nbun run dev\n```\n\nRun the full desktop app:\n\n```bash\nbun tauri dev\n```\n\nValidation gates:\n\n```bash\nbun run check\nbun run build\ncd src-tauri \u0026\u0026 cargo check\ncd src-tauri \u0026\u0026 cargo test\n```\n\nMore details are in [docs/DEVELOPMENT.md](docs/DEVELOPMENT.md).\n\n## Releases\n\nThe release workflow verifies the frontend and Rust backend, then builds installers for macOS 26 Apple Silicon and Windows. Tags matching `v*` publish non-draft GitHub Releases with downloadable installer assets.\n\nRelease documentation is in [docs/RELEASES.md](docs/RELEASES.md).\n\n## Project Layout\n\n- `src/routes/`: SvelteKit route entry points.\n- `src/lib/components/`: reusable Svelte UI components.\n- `src/lib/types.ts`: shared frontend TypeScript shapes.\n- `src-tauri/src/`: Rust application core.\n- `src-tauri/migrations/`: SQLite schema migrations.\n- `src-tauri/capabilities/`: Tauri permissions.\n- `.github/workflows/`: verification, installer, and release automation.\n\n## Status\n\nCurrent implementation status is tracked in [PROJECT_STATUS.md](PROJECT_STATUS.md). Product and data contracts are tracked in [PURSUE_BLUEPRINT.md](PURSUE_BLUEPRINT.md).\n\n## License\n\nMIT. See [LICENSE](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkodydennon%2Fpursue","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkodydennon%2Fpursue","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkodydennon%2Fpursue/lists"}