Skip to content

Benji377/tooka

🗂️ Tooka

clippy test

Tooka logo

A fast, rule-based CLI tool for organizing files.


🧭 Introduction

Tooka is a flexible command-line tool for automating your filesystem: organize, rename, move, copy, or delete files using simple, powerful YAML rules.

You define what files to match (by name, extension, metadata, size, etc.) and what should happen to them — Tooka handles the rest with blazing-fast parallel processing. With built-in background monitoring, Tooka can continuously keep your folders organized automatically.


✨ Features

  • Rule-based automation - Define custom file organization rules using declarative YAML
  • Automatic monitoring - Set up background monitoring to automatically sort folders at intervals
  • High-performance - Parallel recursive directory traversal and file operations
  • Flexible filtering - Match files by name patterns, extensions, MIME types, size, metadata, and timestamps
  • Multiple actions - Move, copy, rename, delete, or skip files based on conditions
  • Template support - Dynamic file naming with customizable templates
  • Safe operations - Dry-run mode and comprehensive logging for safety
  • Cross-platform - Works seamlessly on Windows, macOS, and Linux

📦 Installation

git clone https://github.com/Benji377/tooka.git
cd tooka
cargo build --release

🚀 Quick Start

# Sort files based on rules
tooka sort /path/to/folder --rules rules.yaml

# Monitor folder automatically
tooka monitor add ~/Downloads --interval 300
tooka monitor daemon run

See the Wiki for detailed documentation and examples.


🚀 Performance

Tooka is designed for speed with:

  • Parallel file processing using Rayon
  • Optimized hot paths with cached operations
  • Comprehensive benchmark suite to track performance

Run performance benchmarks:

cargo run --release --bin performance_benchmarks

See benches/README.md for details.


🤝 Contributing

We welcome contributions! Please see:


💬 Community & Support


📜 License

Licensed under GPLv3


Built with ❤️ in Italy 🇮🇹

About

Automatic File Sorter CLI

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Sponsor this project

 

Contributors

Languages