/ case study / cleanmyfiles

CleanMyFiles

Local‑first desktop‑инструмент, который помогает понять, что занимает диск, проверить точные дубликаты и убрать только то, что пользователь выбрал сам.

PRODUCT PRINCIPLE

Understand first.
Clean second.

Вместо обещания «освободить N гигабайт одним кликом» продукт сначала объясняет пользователю, что именно найдено и почему это показано.

shellTauri 2
native coreRust
uiReact 19 + TypeScript
duplicatesBLAKE3 verification
philosophyLocal-first
removalSystem Trash / Recycle Bin

Обычный пользователь либо вручную прыгает по папкам, либо доверяет агрессивному cleaner'у, который сам решает, что считать мусором. CleanMyFiles строится вокруг противоположной идеи: показать данные достаточно ясно, чтобы решение оставалось у человека.

Storage overview instead of raw filesystem noise
Exact duplicate verification instead of filename guessing
Manual review before any removal
No remote file scan required

Интерфейс остаётся быстрым и удобным для разработки, а тяжёлая файловая работа выполняется нативным Rust‑ядром. Tauri связывает оба слоя через IPC и события прогресса.

React 19
TypeScript UI
Tauri IPC
events
Rust core
filesystem / hashes

Дубликаты

Кандидаты сначала группируются по размеру, затем проходят быстрый fingerprint, а финальная группа требует полного BLAKE3 content hash. Это уменьшает лишнее чтение диска, не жертвуя точностью финального результата.

Даже byte-for-byte одинаковый файл может быть нужен конкретному приложению по конкретному пути. Поэтому проект не делает вид, что способен определить ценность файла лучше пользователя.

Nothing selected automatically after a scan
Scanning itself is read-only
Reveal in native file manager before deciding
Explicitly selected files go to system trash
root@hanxw:~# access granted
Konami route resolved. ROOT ACCESS achievement unlocked.