r/SideProjectβ€’
taevel02

Sift: Safety-first Rust file organizer with 1-click Undo, TUI & 30x faster performance than Python CLI [Benchmarked on 23k+ files]

Hey everyone,

I built Sift (https://github.com/taevel02/Sift) to create a ultra-fast, local-first alternative to Hazel and organize-cli.

I wanted something lightweight that runs in the background, but also provides a guaranteed safety net so a bad regex or wrong rule never silently destroys files.

Here is the benchmark comparison measured against organize-cli (Python) on 23,656 real files:

πŸ“Š Benchmark Highlights

  • ⚑ ~30x Faster: 0.06 s (60 ms) vs 1.84 s execution time for 23,656 files.
  • 🧠 ~2.5x Less Memory: Peak RAM footprint of 22.0 MB.
  • πŸ›‘οΈ 1-Click Rollback (sift undo): Every file move/copy/trash operation logs a transaction to ~/.config/sift/history.json for immediate instant recovery.
  • πŸ“Š Real-Time TUI Dashboard (sift watch): Live terminal interface built with ratatui for watching directory changes in real-time.

πŸ“ Out-of-the-Box Recipes

Instead of starting from a blank YAML file, Sift ships with ready-to-use recipes for common daily annoyances:

  1. Desktop Cleanup: Moves Screenshot... files older than 3 days to Pictures/Screenshots/YYYY-MM/.
  2. Downloads Auto-Trash: Cleans .dmg, .pkg, and unaccessed files older than 7 days to OS Trash.
  3. Invoice Tagging: Parses PDF text for keywords ("Invoice" / "Receipt") and tags/organizes them into Documents/Taxes/.

πŸš€ Quickstart

I’d love to get your thoughts on the benchmark methodology, transaction undo implementation, or rule syntax edge cases!

Posted Aug 10, 2026, 4:24 PM UTC

10
Loading comments…