Skip to content
ZaidNAlAsaliPublic

About

Privacy-first Windows file organizer with exact duplicate detection, move-only cleanup plans, and integrity-checked undo.

Topics

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

FileNest

Private, reversible file organization for Windows.

FileNest turns cluttered Downloads, Desktop, and Documents folders into a reviewable cleanup workflow. It scans only folders the user selects, identifies exact duplicates and stale files, proposes move-only actions, and records every approved operation for integrity-checked undo.

FileNest overview

View the complete interface gallery
Exact duplicate review Explicit cleanup approval
FileNest exact duplicate review FileNest cleanup plan
Integrity-checked undo history Local filename and path search
FileNest activity and undo FileNest local search
Safety settings and local-history controls
FileNest safety settings

All screenshots use fictional browser-demo data under C:\Users\Demo; the packaged desktop starts empty and never presents demo findings as local scan results.

Why FileNest exists

Most cleanup utilities optimize for aggressive deletion. That is the wrong default for personal files. FileNest optimizes for trust:

  • FileNest has no upload, telemetry, or network client. Cloud-synchronized folders may still trigger provider-controlled hydration or synchronization.
  • A scan never mutates files.
  • Cleanup plans contain moves, not deletes.
  • Every selected source is hashed and rechecked immediately before execution.
  • Existing destinations are never overwritten.
  • Undo stops rather than overwriting a changed or occupied path.

Current capabilities

  • Windows Known Folder discovery for Downloads, Desktop, and Documents
  • User-selected multi-folder scans
  • Hidden and system entry exclusion by default
  • Link/junction traversal disabled
  • File categorization, stale-file detection, large-file insights, and issue collection
  • Streaming BLAKE3 hashing only for same-size duplicate candidates
  • Parallel exact-duplicate verification
  • SQLite scan snapshots, settings, operation journal, and Unicode FTS5 search
  • User-confirmed clearing of scan, search, and plan metadata without touching personal files; operation journals remain available for undo
  • Explicit cleanup-plan selection
  • Crash-aware pending-operation recovery
  • Windows same-volume atomic moves; cross-volume actions are refused rather than emulated with a risky copy/delete sequence
  • Integrity-checked one-click undo
  • Local browser demo mode using fictional data for visual review
  • Windows NSIS packaging and GitHub Actions CI

Architecture

flowchart LR
    UI[React + TypeScript UI] -->|typed Tauri commands| CMD[Tauri command boundary]
    CMD --> SCAN[Rust scanner + BLAKE3]
    CMD --> PLAN[Cleanup planner]
    CMD --> OPS[Verified move + undo engine]
    CMD --> DB[(SQLite + FTS5)]
    SCAN --> FS[Selected local folders]
    OPS --> FS
    PLAN --> DB
    OPS --> DB
Loading

The React layer cannot access arbitrary files directly. The only frontend filesystem permission is the native folder picker. Rust owns traversal, hashing, path validation, planning, mutation, recovery, and persistence.

See Architecture and Safety model for the complete boundaries and trade-offs.

Run locally

Prerequisites

  • Windows 10 or 11
  • Node.js 24
  • Rust stable with the MSVC target
  • Visual Studio 2022 Build Tools with Desktop development with C++
  • Microsoft Edge WebView2 Runtime

Development

npm ci
npm run tauri dev

The standard verification commands are:

npm run check
cd src-tauri
cargo fmt --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all-features

Production installer

npm run tauri build -- --bundles nsis

The unsigned development installer is generated under src-tauri/target/release/bundle/nsis/. Windows code signing is intentionally not claimed or configured in this repository.

The FileNest application has no network client. If Microsoft Edge WebView2 Runtime is absent, the NSIS installer may download Microsoft's WebView2 bootstrapper so it can install that prerequisite.

Reproducible benchmark

cd src-tauri
cargo run --release --example benchmark -- \
  --files 10000 \
  --repeats 5 \
  --output ../docs/benchmarks/windows-10000.json

The checked-in Windows run scanned a generated 10,000-file corpus with exact duplicate detection at a median 5,042.35 files/second. Median duration was 1,983.20 ms and measured-run p95 was 2,083.42 ms across five repeats.

This is an in-process synthetic microbenchmark. It excludes UI rendering, SQLite persistence, application startup, and real-user disk distributions. It is not a promise of end-to-end or production performance. See benchmark methodology.

Safety summary

FileNest defends against stale plans and accidental overwrites by checking:

  1. The approved root still exists.
  2. The canonical source remains inside that root.
  3. The destination and its nearest existing ancestor remain inside the root.
  4. No parent traversal is present.
  5. The destination is unoccupied.
  6. Source size and BLAKE3 hash still match the plan.
  7. A journal entry exists before mutation.
  8. File mutation is restricted to Windows same-volume renames; cross-volume actions fail without copying or deleting the source.
  9. Undo targets remain unchanged and the original path remains free.

FileNest is a local single-user utility, not a hardened boundary against a malicious process already running as the same Windows user. See limitations and the checked security and dependency review.

Tests and CI

CI runs on Windows and verifies:

  • React tests, ESLint, TypeScript, and production frontend build
  • npm high-severity dependency audit
  • Rust formatting and Clippy with warnings denied
  • Rust scanner, persistence, planner, operation, recovery, and undo tests
  • Synthetic benchmark smoke test
  • Tauri NSIS installer build and artifact upload

The 2026-08-09 local verification passed 26 Rust tests and 13 frontend tests. Frontend coverage was not rerun for this focused repair; an earlier run measured 93.33% of lines. Tauri command wrappers and rare filesystem failure branches keep aggregate Rust coverage lower, so no blanket backend coverage claim is made.

Repository map

src/                       React desktop interface and browser demo adapter
src-tauri/src/scanner.rs   Read-only inventory and exact duplicates
src-tauri/src/planner.rs   Move-only cleanup suggestions
src-tauri/src/operations.rs Preflight, journaled execution, recovery, undo
src-tauri/src/store.rs     SQLite, FTS5, settings, plans, journal
src-tauri/examples/        Reproducible synthetic benchmark
docs/                      Architecture, safety, evidence, interview notes

Project status

FileNest is Windows-first and intended for trusted local evaluation. The repository does not currently claim code signing, macOS/Linux verification, cloud synchronization, semantic content search, or automatic deletion.

See the changelog for release details.

License

MIT

About

Privacy-first Windows file organizer with exact duplicate detection, move-only cleanup plans, and integrity-checked undo.

Topics

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages