https://github.com/yatima1460/drill
Search files without indexing, but fast crawling
https://github.com/yatima1460/drill
csharp dotnet filesearch
Last synced: 2 months ago
JSON representation
Search files without indexing, but fast crawling
- Host: GitHub
- URL: https://github.com/yatima1460/drill
- Owner: yatima1460
- License: gpl-2.0
- Created: 2019-05-02T00:38:00.000Z (about 7 years ago)
- Default Branch: main
- Last Pushed: 2026-04-16T17:36:24.000Z (2 months ago)
- Last Synced: 2026-04-16T18:35:33.701Z (2 months ago)
- Topics: csharp, dotnet, filesearch
- Language: Python
- Homepage: https://drill.software/
- Size: 120 MB
- Stars: 278
- Watchers: 11
- Forks: 21
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Drill
Very fast file searcher without indexing
[Download latest release](https://github.com/yatima1460/Drill/releases/latest)
[](https://github.com/yatima1460/Drill/actions/workflows/cd.yml)
[](https://opencollective.com/Drill) [](https://github.com/yatima1460/Drill/issues)
[](https://github.com/yatima1460/Drill/network)
[](https://github.com/yatima1460/Drill/stargazers)
[](https://github.com/yatima1460/Drill/blob/master/LICENSE)
[](https://x.com/intent/tweet?text=Wow:&url=https%3A%2F%2Fgithub.com%2Fyatima1460%2FDrill)
## TL;DR: What is this
- Multithreaded
- Use as much RAM as possible for caching stuff
- Heuristics to prioritize more important folders
- **Intended for desktop users**, no obscure Linux files and system files scans
- Betting on the future: being tested only for SSDs/M.2 or fast RAID arrays

## Run
### Precompiled one
Just grab the latest version and run the executable
### From source
```bash
pip3 install -r requirements-run.txt
python3 src/main.py
```
## What happened to the old code?
The old D code and other experimental versions are available in the other branches
This `main` branch started as an orphan branch to make a clean cut with the old Drill
## What is this in detail
I was stressed on Linux because I couldn't find the files I needed, file searchers based on system indexing (updatedb) are prone to breaking and hard to configure for the average user, so did an all nighter and started this.
Drill is a modern file searcher for Linux that tries to fix the old problem of slow searching and indexing.
Nowadays even some SSDs are used for storage and every PC has nearly a minimum of 8GB of RAM and quad-core;
knowing this it's time to design a future-proof file searcher that doesn't care about weak systems and uses the full multithreaded power in a clever way to find your files in the fastest possible way.
* Heuristics:
The first change was the algorithm, a lot of file searchers use depth-first algorithms, this is a very stupid choice and everyone that implemented it is a moron, why?
You see, normal humans don't create nested folders too much and you will probably get lost inside "black hole folders" or artificial archives (created by software); a breadth-first algorithm that scans your hard disks by depth has a higher chance to find the files you need.
Second change is excluding some obvious folders while crawling like `Windows` and `node_modules`, the average user doesn't care about .dlls and all the system files, and generally even devs too don't care, and if you need to find a system file you already know what you are doing and you should not use a UI tool.
* Clever multithreading: The second change is clever multithreading, I've never seen a file searcher that starts a thread *per disk* and it's 2019. The limitation for file searchers is 99% of the time just the disk speed, not the CPU or RAM, then why everyone just scans the disks sequentially????
* Use your goddamn RAM: The third change is caching everything, I don't care about your RAM, I will use even 8GB of your RAM if this provides me a faster way to find your files, unused RAM is wasted RAM, even truer the more time passes.
# Contributing
Read the Issues and check the labels for high priority ones
## Contributors
### Code Contributors
This project exists thanks to all the people who contribute. [[Contribute](CONTRIBUTING.md)].

### Financial Contributors
Become a financial contributor and help us sustain our community. [[Contribute](https://opencollective.com/Drill/contribute)]
#### Individuals
#### Organizations
Support this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/Drill/contribute)]