Somebody has to read it
A bug report arrives as a zip. Reading it should not mean unzipping the
thing and scrolling logs.txt in a text editor.
Drop a bundle
.zip, .json or .txt — or paste the log, or pick the file.
-
It stays here
Parsed in the page. The
connect-src 'none'policy means the browser itself refuses every request this page could try to make — so it cannot send your log anywhere, whatever its code says. - Nothing is kept No history, no storage, no account. A bundle is redacted before it is written, but it still holds real data — and a screenshot cannot be redacted at all. Close the tab and it is gone.
- It works offline Save the page and it runs with no network at all, which is the right way to open a bundle you would rather not put on a connected machine.
The other half of a package
These bundles are built by flutter_bug_report — a Flutter
package that captures an app's logs and crashes, redacts secrets on the
device, and writes a bounded .txt, .json or
.zip. No vendor, no SDK, no network code: the app decides
where the file goes. This reads what it produces.
There is nobody to bill you
The package and this viewer are written and kept up by one person. That is the same reason there is no vendor in the loop, no account to make and nothing measuring you — there is no company here to want any of it.
If this saved you an afternoon, you can put something toward the work. It is entirely optional, nothing here is gated, and nothing changes if you would rather not.
Support the work