| Crates.io | dotted-ignore |
| lib.rs | dotted-ignore |
| version | 0.1.0 |
| created_at | 2025-10-31 11:05:09.779679+00 |
| updated_at | 2025-10-31 11:05:09.779679+00 |
| description | A Rust library and CLI utility for **efficient directory walking with `.ignore`-style file exclusion** โ inspired by `.gitignore` behavior. |
| homepage | |
| repository | https://github.com/themahikaishar/dotted-ignore |
| max_upload_size | |
| id | 1909870 |
| size | 12,758 |
A Rust library and CLI utility for efficient directory walking with .ignore-style file exclusion โ inspired by .gitignore behavior.
dotted-ignore provides a flexible and extendable way to recursively walk directories while respecting ignore rules scoped per directory, just like .gitignore. It supports:
.ignore files with scoped rulesWhether youโre building a file watcher, backup tool, or any utility that needs fine-grained file filtering, dotted-ignore gives you the control you need.
.gitignore scoped ignore behavior, supporting patterns like:
/target to ignore a folder only in the current scope**/node_modules to ignore recursively everywhere./buildAdd dotted-ignore to your Cargo.toml:
[dependencies]
dotted-ignore = "0.1"
Example usage:
use dotted_ignore::walk_dir;
fn main() {
let base_dir = std::env::current_dir().unwrap();
walk_dir(base_dir.to_str().unwrap(), |entry| {
let path = entry.path();
if path.is_dir() {
println!("Dir: {}", path.display());
} else {
println!("File: {}", path.display());
}
});
}
Iโm excited to grow this project into a fast, robust, and fully featured .ignore implementation.
If you want to contribute, your help is welcome with:
.ignore features like negation (!pattern)Feel free to open issues or submit pull requests!
.gitignore feature support