A blazing-fast, native Windows desktop file search engine built in pure C17. Index hundreds of thousands of files in seconds and search them instantly with real-time results as you type.
Achilles-Search is a lightweight desktop search tool that lets you find any file on your computer almost instantly. Unlike the built-in Windows search, Achilles-Search builds its own high-performance in-memory index of your filesystem, so searches return results in real-time as you type each character.
It runs as a native Windows application with no frameworks, no runtimes, and no dependencies. Just a single .exe that sits in your system tray and is always one hotkey away.
-
Scan - You pick a directory and click Index. A background worker thread recursively scans every file and folder using the Windows API, building a compressed in-memory index.
-
Search - As you type in the search box, a multi-threaded parallel matcher instantly filters through the entire index and displays matching filenames and paths in real-time.
-
Interact - Double-click any result to reveal it in Windows Explorer, or right-click to copy its full path to your clipboard.
The application lives in your system tray. Press Alt + Shift + Space from anywhere on your desktop to instantly summon the search window.
- Instant Search - Results appear in real-time as you type, powered by a multi-threaded parallel file matcher.
- Background Indexing - Filesystem scanning runs on a dedicated worker thread so the UI never freezes.
- System Tray - Minimizes to tray on close. Always running, always one hotkey away.
- Global Hotkey - Alt + Shift + Space toggles the window from anywhere.
- Real-Time Monitoring - Watches indexed directories for changes using asynchronous overlapped I/O.
- Content Indexing - Inverted word index enables searching inside file contents.
- Persistent Database - Save and restore your index across sessions with a custom binary serializer.
- Zero Dependencies - Pure C17 with native Win32 APIs. No external libraries required.
| Requirement | Details |
|---|---|
| Operating System | Windows 10 / Windows 11 (64-bit) |
| Architecture | x86-64 (AMD64) |
| Runtime Dependencies | None |
Pre-built binaries are available on the Releases page.
| Download | Description |
|---|---|
AchillesSearch-x.x.x-win64.exe |
Windows installer with Start Menu shortcut |
AchillesSearch-x.x.x-win64.zip |
Portable version — extract and run, no install needed |
If you prefer to compile it yourself, you will need:
git clone https://github.com/Kri311/Achilles-Search.git
cd Achilles-Search
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release
cmake --build build --config ReleaseMake sure C:\msys64\mingw64\bin is added to your system PATH.
git clone https://github.com/Kri311/Achilles-Search.git
cd Achilles-Search
cmake -G "MinGW Makefiles" -B build -S . -DCMAKE_BUILD_TYPE=Release
cmake --build build --config ReleaseThe compiled executable will be at build/bin/AchillesSearch.exe.
To generate the distributable ZIP and NSIS installer locally (requires NSIS):
cd build
cpack -C ReleaseAchilles-Search/
├── include/ # Public header files
│ ├── common/ # Types, errors, config, logger, utilities
│ ├── core/ # Scanner, index, search, content index, monitor
│ ├── data/ # Vector, HashMap
│ └── storage/ # Database serialization
├── src/ # Source implementation
│ ├── common/ # Logger, utilities
│ ├── core/ # Scanner, indexer, search engine, monitor
│ ├── data/ # Dynamic vector, hash map
│ ├── storage/ # Binary database serializer
│ └── main.c # Win32 GUI entry point
├── tests/ # Unit tests for every module
├── .github/workflows/ # CI/CD release automation
├── CMakeLists.txt # Build configuration
└── README.md
| Module | What It Does |
|---|---|
| Scanner | Recursively walks directories using Windows FindFirstFileW / FindNextFileW |
| Indexer | Builds a prefix-path compressed in-memory index of all scanned files |
| Search Engine | Multi-threaded parallel matcher that filters the index against a query |
| Content Index | Inverted word index for searching inside file contents |
| Monitor | Watches directories for real-time changes via ReadDirectoryChangesW |
| Database | Custom binary format to persist and restore the index to/from disk |
| GUI | Native Win32 window with ListView, status bar, system tray, and global hotkey |
This project is licensed under the Apache License 2.0. See the LICENSE file for full details.




