DEV Community

Cover image for Building Vexil Search: A Privacy-First, Blazing Fast Desktop Search App
Priya Ranjan Sahu
Priya Ranjan Sahu

Posted on

Building Vexil Search: A Privacy-First, Blazing Fast Desktop Search App

The Problem: Why I Built Vexil Search

As an indie hacker, I realized I was spending way too much time looking for files spread across my hard drive, random project folders, and archived directories. The built-in OS search tools were either painfully slow or incredibly bloated, and most third-party options didn't respect privacy. I wanted something built on the "indie hacker philosophy": 100% offline, privacy-first, lightning fast, and cross-platform.

So, I built Vexil Search.

What is Vexil Search?

Vexil Search is a blazing fast, cross-platform desktop search application. It instantly indexes and searches your local files without ever sending a single byte of your data to the cloud.
What started as a personal tool to scratch my own itch has evolved into a robust, cross-platform desktop application powered by a modern tech stack. While the core indexing algorithms are proprietary and closed-source, I wanted to share the broader technical journey of how it came to life.

The Tech Stack: Speed Meets Security

To achieve the performance I needed while remaining lightweight, I chose a modern stack:

  • Backend Engine: Rust
  • Frontend UI: React 19 + TypeScript + Vite
  • Desktop Framework: Tauri 2.0
  • Database: SQLite with FTS5 (Full-Text Search)

By utilizing Tauri instead of Electron, Vexil Search looks and feels like a native application rather than a heavy web page bundled in a browser. It consumes a fraction of the RAM and CPU, which is exactly what a background search tool should do.

The Engineering Journey: Overcoming the Hard Problems

Building a native desktop app that scales gracefully to thousands of files is no easy feat. Over the last few weeks of development, the project hit some incredible milestones that I am thrilled to share:

1. A Custom, High-Performance Indexing Engine

We completely overhauled the core indexing engine in Rust. We built a highly parallelized directory crawler optimized for minimal memory footprint. The result is an engine that launches its background threads in milliseconds and can index your directories incredibly fast, while keeping system resources free for your actual work.

2. Cross-Platform Native Builds

One of the hardest parts of desktop app development is distribution. We invested heavily in an automated CI/CD pipeline. Today, Vexil Search automatically compiles and distributes 17 different release assets across all operating systems.
Whether you use Windows (.exe, .msi), macOS (.dmg, .app.tar.gz), Linux (.deb, .rpm, .AppImage), or Android (.apk), there is a native installer compiled specifically for your architecture.

3. Seamless Over-The-Air (OTA) Updates

Nobody likes downloading installers manually every time a bug is fixed. We engineered a seamless OTA update system leveraging Tauri's updater plugin. Whenever a new version is released, Vexil Search detects it in the background and elegantly prompts you to restart and update—just like VS Code or Slack.

4. Live File System Radar

Search results are useless if they are stale. We engineered a "Live Radar" system that monitors file system events in real-time. It silently updates the SQLite Full-Text Search index in the background the moment a file is created, modified, or deleted, ensuring your search results are always perfectly up to date.

What's Next?

Vexil Search is currently in its v0.1.0 release, and I am actively iterating on it. The current focus is expanding the mobile experience and adding even more productivity features.

If you love privacy-first tools, or just want a faster way to find your files without sacrificing your data, I would love for you to try it out!
👉 Download Vexil Search

If you find it useful, dropping a ⭐️ on the release repo would mean the world to me. Let me know what you think in the comments!

Top comments (0)