Find out where your disk space went. Pick a folder, get a treemap and a list of the biggest offenders — scanned in this browser tab, with nothing uploaded.
A web page is sandboxed on purpose. Two of SystemLens's features are impossible inside that sandbox, so the browser version does not pretend to have them.
Needs a Chromium desktop browser (Chrome, Edge, Opera, Brave, Arc) for the File System Access API. Firefox, Safari and every mobile browser lack it.
read/readwrite permission state. POSIX mode bits are not available to a web page at all, so this cannot be approximated or guessed at. The browser version does not attempt it./, /System, Windows' C:\ or your user profile root.Browser scanning is also slower than a native tool. Each file costs an asyncgetFile()round trip through Chrome's sandbox, so expect thousands of files per second rather than the tens of thousands a native scanner manages. For a 100,000-file tree, use the desktop build.
Chrome shows its own folder picker and asks you to grant read access. The page never gets a path you did not choose, and the grant lasts only for this tab session — reload and you will be asked again.
Directory entries are enumerated depth-first and file sizes read in small parallel batches, yielding to the browser between batches so the page stays responsive. Unreadable entries — locked files, symlinks and junctions Chrome refuses to follow, folders the OS denies — are counted and skipped rather than aborting the run. Cancel stops it immediately.
Sizes are aggregated up the tree into a treemap you can drill into, plus sorted tables and a file-type breakdown. Export to CSV to keep a record or diff two scans in a spreadsheet.
node_modules, target/, .next/ and Docker build contexts have quietly accumulated.*.mp4, *.zip, *.psd to find large binaries that should be in object storage instead of Git.No. The scan uses the browser's File System Access API, which hands the page a handle to the folder you picked. File names, sizes and timestamps are read in the tab and held in memory; nothing is sent to a server, and the page makes no network request while scanning. The CSV export is generated in the browser too.
Chromium-based desktop browsers: Chrome and Edge 86+, plus Opera, Brave and Arc. Firefox and Safari have not implemented showDirectoryPicker(), and it is unavailable on iOS and Android. In those browsers this page tells you so instead of showing a picker that cannot work — use the desktop build there.
Because it cannot. The File System Access API deliberately exposes only two permission states, read and readwrite. POSIX mode bits — the setuid, setgid and world-writable bits a permission audit is looking for — are not surfaced to web pages at any privilege level. Showing an inferred or approximate answer would be worse than showing none, so world-writable and SUID/SGID detection live only in the desktop build.
Not from the browser. SSH needs a raw TCP socket and browsers do not have one. Remote scanning is a desktop-build feature.
Tens of thousands of files is comfortable. The scan reports progress and can be cancelled at any point, and it stops at a 750,000-entry safety limit so a runaway tree cannot exhaust the tab's memory. Very large scans are faster in the desktop build, which reads the filesystem directly rather than through the browser sandbox.
Scan depth caps how many directory levels below your chosen folder are opened; deeper folders still appear but are not sized. Exclude patterns drop matching files and folders before they are read — node_modules is the usual one. Include patterns, when set, keep only matching files. Both accept globs: * matches within one path segment, ** crosses folders, and a pattern containing / is matched against the path relative to the folder you picked rather than the bare name.
Three common reasons: the OS denied access to a subfolder, a file was deleted while the scan was running, or the entry is a symlink or Windows junction that Chrome will not follow. Skipped entries are counted, listed with a reason, and included in the CSV — the scan carries on around them rather than failing.
Yes. This page ships a web app manifest and a service worker scoped to it alone, so Chrome and Edge will offer “Install” in the address bar or the browser menu. Installed, it opens in its own window and the scanner works with no network connection.
No. It requests read-only access and the only filesystem calls it makes are directory enumeration and reading file metadata. It never opens a file's contents, and it cannot write, move or delete anything. Findings that reference weakness classes link out to our CWE Lookup tool.
Get in touch through our contact page.
Those two features need operating-system access a browser tab does not have. The desktop build has both.