back

Uwazi Preserve

A screenshot is not evidence. Preserve captures a page with the provenance to hold up in court.

Not a screenshot

Preserve is a browser extension that captures a web page as evidence and files it straight into Uwazi. A post by an official will come down soon, and what investigators usually keep is a screenshot, which proves nothing on its own: anyone can fake a PNG. What holds up in court is the material around it: the full response, the headers, the timestamp, a hash taken at capture that changes if a single byte moves.

Forensic tools got this right but assumed a technical operator. Easy tools were screenshot utilities. Neither put the result into Uwazi, next to the case.

Information architecture diagram showing the flow of the Preserve extension.
The flow of the extension.

The hard part

People who deal with admissibility told me format matters little and provenance matters a lot: can you show the capture is untouched since it was taken. So the extension does the rigorous thing every single time, without asking. The person capturing never chooses a format, a verification level or a place to store it, because configuration invites a wrong answer under pressure.

Preserve extension full flow mockup.
The full flow, a mockup.
The presentation of the V1 flow and design, and the MVP.
The V1 flow and design, and the MVP.

One button, two hard places

Pairing: the extension pairs once with a token generated inside Uwazi, for self-hosted installations run by organizations that are rightly careful, and never asks again. Failure: captures fail most on the pages that matter, behind logins or built in JavaScript, and a tool that fails quietly is worse than none. Every capture reports back plainly whether it worked.

Capture status indicators in the extension, showing success or failure.
Every capture says whether it worked.
Preserve setup in Uwazi settings: a generated token to pair the browser extension with the instance.
Pairing, with a token generated inside Uwazi.

Where it stands

The alpha is in the Chrome Web Store and works: captures land in Uwazi attached to the right case. The V1 after it, with status reporting and wider content support, is designed and not shipped. Preserve is the smallest thing I have designed and the one I think about most: it taught me to design for the failure before the success.

Integration with Uwazi: the Preserve fields (hash, URL, HTML source, capture) mapped into a Uwazi template.
How a capture lands in Uwazi.
The Chrome Web Store listing for the Preserve extension.
The Chrome Web Store listing.

picture A capture, and how it shows in Uwazi.

Close-up of a capture: the extension panel and how the saved capture is shown in Uwazi.
A capture, and how it shows in Uwazi.