u/Cuber2113

I got so sick of Android taking forever to calculate folder sizes, I built a custom C++/Rust storage visualizer to bypass MTP

tbh I don't know how everyone has just accepted the pain of Android MTP. If you plug in your phone and try to analyze a massive 100GB+ media folder to see what's eating up your space, Windows Explorer just hangs and dies.

I got so fed up that I built a zero-dependency desktop app to bypass the OS completely. It pushes a tiny C++ daemon to the phone via ADB, maps out the disk at raw native speeds, and tunnels the data back over a local TCP socket to a Rust/Tauri frontend.

It basically turns a 4-minute "calculating size..." freeze into a 1-second instant React Treemap so you can actually see where your storage is going.

It's totally open source. I'll drop the GitHub repo in the comments if anyone wants to roast my code or check out the architecture!

reddit.com
u/Cuber2113 — 5 days ago

Any good deals rn for daily sneakers under 2.5k? (Size UK 11)

Need something comfy and highly breathable for wide feet so my pinky toes don't get absolutely crushed.

drop Myntra/Ajio links if you spot any crazy price drops tonight.

reddit.com
u/Cuber2113 — 6 days ago
▲ 21 r/foss+3 crossposts

Android's USB MTP always crashes when I try to scan my media folders. So I built an open-source C++/Rust storage analyzer that maps 10,000+ files instantly.

If you've ever tried to figure out what is eating up your Android's storage before doing a massive data dump, you know the pain. Trying to view a /DCIM folder with 10,000+ files over a standard USB cable usually makes Windows Explorer or macOS Finder infinitely load, freeze, or crash because MTP is fundamentally broken for high file counts.

I got tired of waiting 4+ minutes just to see my folder sizes, so I built an open-source analyzer called SocketSweep that bypasses MTP entirely.

How it works (The Architecture): Instead of using standard USB bulk transfers to read the filesystem, it uses a multi-language stack to pull the file tree at bare-metal speeds:

  • The Engine: It pushes a native C++17 daemon to /data/local/tmp via ADB. Because it runs under the shell context, it executes POSIX filesystem traversals natively on the device. (Zero root required).
  • The Bridge: It pipes the raw JSON tree data back to your PC over a local TCP socket tunnel, bridged via adb forward.
  • The UI: A Rust/Tauri desktop app consumes the TCP stream concurrently and maps your entire storage into an interactive React Treemap.

The result: You can visually hunt down your biggest folders and delete the junk instantly. A 4-minute MTP "Loading..." hang becomes a 1.2-second instant scan.

Right now, the first release is compiled for macOS (Windows/Linux builds via GitHub actions are next, but you can build from source). It is GPL-3.0.

(Note: For Android 11+, the app automatically uses an appops ADB command to grant itself Scoped Storage bypass permissions so it can read your full /sdcard without issues).

Let me know what you guys think of the architecture!

u/Cuber2113 — 3 days ago
▲ 5 r/tauri

I built a storage analyzer to bypass Android MTP using a Rust/Tauri bridge and a C++ daemon

I got tired of MTP hanging on 256GB+ devices, so I built a bypass.
The architecture:

  • A C++17 daemon pushed to the device via ADB for POSIX-speed traversal.
  • A Rust/Tauri desktop client that handles the ADB lifecycle and a TCP socket tunnel.
  • It's bundled as a zero-dependency DMG with an ADB sidecar.

I'm mostly looking for feedback on handling JSON stream fragmentation in the Rust backend when the C++ side pushes data too fast.
I'll drop the repo link in the comments if anyone wants to check the code.

reddit.com
u/Cuber2113 — 6 days ago
▲ 2 r/rust

I built a storage analyzer to bypass Android MTP using a Rust/Tauri bridge and a C++ daemon

I got tired of MTP hanging on 256GB+ devices, so I built a bypass.
The architecture:

  • A C++17 daemon pushed to the device via ADB for POSIX-speed traversal.
  • A Rust/Tauri desktop client that handles the ADB lifecycle and a TCP socket tunnel.
  • It's bundled as a zero-dependency DMG with an ADB sidecar.

I'm mostly looking for feedback on handling JSON stream fragmentation in the Rust backend when the C++ side pushes data too fast.
I'll drop the repo link in the comments if anyone wants to check the code.

reddit.com
u/Cuber2113 — 9 days ago