Skip to content

0xsecaas/quickfind

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

quickfind

Search files instantly: configurable, interactive, Rust-powered.

asciicast

Remember part of a filename? Find it instantly in milliseconds, open it in your default app or jump straight into vim.

Install Quickly

$ cargo install quickfind
Usage

1. Index once

$ quickfind index

2. Search any moment

$ quickfind <your-query>

# OR

$ quickfind

Why quickfind?

Since I started using Linux, I always felt one essential tool was missing: a fast, reliable file finder like Everything Search on Windows.
So I built quickfind in Rust. Its configurable indexing and interactive TUI make finding files fast, reliable, and effortless.

Features
  • Configurable: Customize search locations, ignored paths, and search depth via a simple config file.
  • Efficient Indexing: Traverses directories once and stores paths in a local database for lightning-fast searching.
  • Interactive Interface: Browse results with a minimal TUI, open files in default apps or vim.
Install from Source 1. Clone the repository:
$ git clone https://github.com/0xsecaas/quickfind
  1. Build the project:
$ cd quickfind
$ cargo build --release
  1. Run the application:
$ ./target/release/quickfind

# OR

$ cargo run 
Configuration

Config file: ~/.quickfind/config.toml

include = [
    "/path/to/your/directory",
    "/another/path/to/search"
]
ignore = "**/node_modules/**"
depth = 10
editor = "vim" # "vi" or "code" or "subl" or any editor of your choice
  • include: Absolute paths to directories you want to index.
  • ignore: Glob patterns for paths to exclude.
  • depth: Maximum directory depth to traverse.
Interactive Mode
  • Tab: Switch between search input and results
  • Arrow Keys: Navigate results
  • Enter: Open selected file/directory with default app
  • v: Open selected file with vim
  • d: Open containing directory
  • Esc: Exit interactive mode
Architecture
  • main.rs: CLI parsing and orchestration
  • config.rs: Loads and manages user configs (~/.quickfind/config.toml)
  • db.rs: Handles persistent file indexing storage
  • indexing.rs: Traverses directories and populates the database
  • tui.rs: Interactive Text User Interface
Future Plans
  • Background Sync: Automatically update the index as files change
Contributing

Open issues, submit PRs, or suggest features.

License

MIT License

Releases

No releases published

Packages

No packages published

Languages