Find what you need in milliseconds, without the resource bloat.
A fast, lightweight, and 100% local desktop document organizer built with Tauri v2, Rust, and React.
We have all been there: you downloaded a contract, drafted a project specification, or saved a research paper somewhere on your drive weeks ago. Now you need it urgently, but:
- Built-in OS searches can be sluggish, unpredictable, or index things you don’t care about.
- Heavy desktop tools built on bulky frameworks often consume 500MB–1GB+ of RAM just idling in the background.
- Cloud search services compromise your privacy by requiring your local documents to be uploaded or synced.
Root was built to solve this simply and elegantly:
- You choose the folders that matter (e.g., your Projects, Documents, or Downloads directory).
- Root keeps an ultra-fast local index of all your documents using an embedded SQLite database.
- Rust watches your files in real-time: when you add, edit, or delete a document, Root reflects the change instantly.
- Instant search & launch: Search as you type, sort by date or size, and open the document directly in your default system app with one click.
Zero cloud sync. Zero telemetry. Minimal memory footprint.
- ⚡ Lightning Fast & Lightweight: Powered by native Rust; uses only a fraction of the memory and CPU of traditional Electron-based indexers.
- 📂 Multi-Directory Monitoring: Watch multiple custom folders simultaneously.
- 🔄 Real-Time Filesystem Watching: Instant detection of file creation, edits, and removals via filesystem events.
- 🔍 Instant Case-Insensitive Search: Filter hundreds or thousands of documents with zero lag as you type.
- 📊 Smart Sorting: Sort your indexed documents by modification date, file size, name, or extension.
- 🚀 Direct System Open: Launch files directly in your operating system's native viewer (Adobe Acrobat, Word, VS Code, etc.).
- 🔒 100% Local & Privacy-Focused: Your files and metadata never leave your computer. Everything resides in an embedded SQLite database on your machine.
Root automatically identifies, indexes, and categorizes common document formats while filtering out hidden files, system directories, and build artifacts:
| Category | File Extensions |
|---|---|
| Documents | .pdf, .docx, .doc, .odt, .rtf, .epub |
| Text & Notes | .txt, .md, .markdown |
| Data & Spreadsheets | .csv, .xlsx, .xls |
| Presentations | .pptx, .ppt |
| Code & Config | .json, .yaml, .yml, .xml, .html, .htm, .log |
Root intentionally excludes common heavy directories like
node_modules,.git,target, anddistto keep indexing fast and clean.
Root leverages a modern hybrid desktop architecture: a high-performance Rust core handling OS-level interactions, paired with a snappy React user interface.
┌────────────────────────────────────────────────────────┐
│ React + TypeScript │
│ (Vite + Lucide Icons + CSS) │
└──────────────────────────┬─────────────────────────────┘
│ Tauri IPC (Commands & Events)
┌──────────────────────────▼─────────────────────────────┐
│ Tauri v2 (Rust) │
│ ┌───────────────────────┬───────────────────────────┐ │
│ │ Notify & Walkdir │ SQLite (Rusqlite) │ │
│ │ (FS Watching & Scan) │ (WAL Mode Storage) │ │
│ └───────────────────────┴───────────────────────────┘ │
└────────────────────────────────────────────────────────┘
- Tauri v2: Next-generation desktop application framework utilizing OS webviews for minimal binary size and memory usage.
- Rusqlite: Embedded SQLite database with WAL (Write-Ahead Logging) mode for concurrent, atomic reads and writes.
- Notify: Cross-platform filesystem event monitoring for instantaneous updates.
- WalkDir: Fast, recursive directory traversal for initial background scans.
- Tokio: Asynchronous runtime managing background indexing without freezing the UI.
- React 18: Component-driven UI.
- TypeScript: Full type safety across Tauri IPC commands and data models.
- Vite: Fast frontend development and optimized production bundling.
- Lucide React: Clean, modern iconography.
Ensure you have the following installed on your machine:
- Node.js (v18 or newer) &
npm - Rust &
cargo(via rustup.rs) - Platform-specific Tauri build tools (see Tauri Prerequisites)
-
Clone the repository:
git clone https://github.com/raazseth/callRoot.git cd callRoot -
Install frontend dependencies:
npm install
Start the development server with live reload:
# Run desktop window + dev server
npm run tauri devAlternatively, to test the UI in your web browser:
npm run devTo compile a production-ready desktop installer / executable:
npm run tauri buildThe compiled installer will be available under src-tauri/target/release/bundle/.
- Full-Text In-Document Search: Extracting text content from PDFs and text files for deep keyword matching.
- Tagging & Collections: Create custom tags to group documents across different physical folders.
- Local AI / Semantic Search: Optional offline embeddings (via ONNX or local models) to find files by concept ("Find my tax receipt from last June").
- Global Shortcut: Hotkey to bring Root up instantly from the system tray.
This project is licensed under the MIT License — feel free to modify and use it for your own workflows!