Building a Local-First Screenshot Library in Your Browser
How Supashot uses IndexedDB to keep every screenshot local — no cloud uploads, no accounts, no privacy trade-offs.
Building a Local-First Screenshot Library in Your Browser

Most screenshot tools that offer a library do it by uploading your images to the cloud, processing them on a server, and storing them remotely. That works, but it comes with privacy trade-offs.
Supashot takes a different approach: local-first storage using your browser's built-in IndexedDB.
Why local-first matters
Your screenshots contain sensitive information:
- API keys and tokens in developer consoles
- Private messages and emails
- Internal dashboards and analytics
- Unreleased product designs
Uploading all of this to a cloud service creates a security surface area you may not want.
How it works
When you capture a screenshot with the Supashot Chrome Extension, it:
- Grabs the visual data using sandboxed browser APIs.
- Saves the PNG and its metadata (like the website domain and timestamp) into your local IndexedDB using Dexie.js.
- Makes the screenshot instantly available in your local library timeline.
All of this happens in your browser. There is no network call. No external API. No data leaves your machine.
The technical stack
- Chrome Extension MV3 for secure, sandboxed execution
- IndexedDB / Dexie.js for the local screenshot library
- Web Workers for off-thread image encoding to keep the browser fast
The privacy guarantee
Because everything is local:
- We cannot see your screenshots.
- We cannot see your browsing history.
- We cannot lose your data in a breach.
- You do not need an account to use the core features.
Your visual memory stays on your machine, where it belongs.
Keep your screenshot data secure and private. Install the local-first screenshot tool Chrome extension to capture browser windows safely without any cloud uploads.