StorageInsight is a Chrome browser extension that helps you understand and manage browser storage across all websites. It scans cookies, localStorage, sessionStorage, and IndexedDB to give you complete visibility and control over your data.
- π Comprehensive Scanning - Scan all browser storage types across all websites
- πͺ Cookie Analysis - Identify and categorize tracking cookies
- π‘οΈ Privacy Score - Get a real-time privacy score (0-100) based on your browser data
- π Storage Breakdown - Visual breakdown of storage usage by type
- ποΈ Quick Actions - Clear tracking cookies with one click
- π€ Data Export - Export all scan data as JSON
- βοΈ Customizable Settings - Configure auto-scan, notifications, and thresholds
- π Privacy-First - All analysis happens locally on your device
-
Generate Icons (required):
cd assets/icons # Follow instructions in ICONS_README.md to generate PNG icons # Or use the provided icon.svg with an online converter
-
Load Extension in Chrome:
- Open Chrome and navigate to
chrome://extensions/ - Enable "Developer mode" (toggle in top-right)
- Click "Load unpacked"
- Select the
storageinsight-extensionfolder - The extension should now appear in your extensions list
- Open Chrome and navigate to
-
Pin the Extension (optional):
- Click the puzzle icon in Chrome toolbar
- Find "StorageInsight"
- Click the pin icon to keep it visible
- Click the StorageInsight icon in your browser toolbar
- Click "Scan Storage" button
- View your metrics:
- Total cookies count
- Total storage size (MB)
- Privacy score (color-coded)
- Tracking cookies count
- Open the extension popup
- Click "Clear Tracking" button
- Confirm the action
- Tracking cookies will be removed
- Open the extension popup
- Click "Export Data" button
- JSON file will be downloaded with all scan data
- Click the settings icon (βοΈ) in the popup
- Or right-click extension icon β Options
- Configure:
- Auto-scan frequency
- Notifications
- Privacy threshold
storageinsight-extension/
βββ manifest.json # Extension configuration
βββ background/
β βββ service-worker.js # Background tasks & message handling
βββ popup/
β βββ popup.html # Extension popup UI
β βββ popup.js # Popup logic
β βββ popup.css # Popup styles
βββ options/
β βββ options.html # Settings page
β βββ options.js # Settings logic
βββ content/
β βββ content-script.js # Injected into web pages
βββ lib/
β βββ storage-scanner.js # Storage scanning logic
β βββ privacy-analyzer.js # Privacy analysis & scoring
β βββ tracking-database.js # Known tracker database
βββ assets/
β βββ icons/ # Extension icons (16, 32, 48, 128px)
βββ styles/
βββ common.css # Shared styles
| Permission | Purpose |
|---|---|
cookies |
Read all cookies across websites for analysis |
storage |
Store extension settings and cached data |
tabs |
Access tab information for domain-based analysis |
activeTab |
Access currently active tab's information |
scripting |
Inject scripts to detect localStorage/sessionStorage |
alarms |
Schedule periodic scans |
host_permissions |
Access all websites for complete storage scan |
Privacy Note: All data stays on your device. Nothing is sent to external servers.
- Chrome/Chromium browser
- Basic knowledge of JavaScript
- Icon generation tool (optional)
-
Edit Code:
- Modify files in the extension directory
- Changes to popup/options pages: Reload the page
- Changes to background script: Reload extension in
chrome://extensions - Changes to content script: Reload the webpage
-
Test Changes:
- Open
chrome://extensions - Click reload icon for StorageInsight
- Test functionality in popup and on websites
- Open
-
Debug:
- Background script:
chrome://extensionsβ "Inspect views: service worker" - Popup: Right-click popup β "Inspect"
- Content script: Open DevTools on any webpage β Console
- Background script:
- Follow the detailed instructions in PUBLISHING.md.
- Run the packaging script:
node scripts/package.js - Upload the generated zip file to the Chrome Web Store.
The extension is designed to work alongside the Insight web application:
- Web App URL: http://localhost:3000
- Access: Click "View Full Dashboard" in extension footer
- Features:
- The web app provides detailed visualizations
- The extension collects real browser data
- Future: Two-way sync between extension and web app
// In extension: Send data to web app
chrome.runtime.sendMessage({
type: 'SYNC_TO_WEBAPP',
data: scanResults
});
// In web app: Receive data from extension
window.addEventListener('message', (event) => {
if (event.data.type === 'EXTENSION_DATA') {
updateDashboard(event.data.payload);
}
});- Check that all required files are present
- Ensure icons are generated (see assets/icons/ICONS_README.md)
- Check browser console for errors
- Verify permissions are granted in
chrome://extensions - Check that the extension has access to all sites
- Try reloading the extension
- Click "Scan Storage" first - data isn't collected automatically
- Check that you have cookies/storage on some websites
- Open browser console to see if there are errors
- Service workers sleep when inactive - this is normal
- Click the extension icon to wake it up
- Check "Inspect views: service worker" for errors
The privacy score (0-100) is calculated based on:
- Tracking Cookies (-30 max): More tracking cookies = lower score
- Third-party Cookies (-20 max): Cross-site cookies reduce score
- Insecure Cookies (-15 max): Non-HTTPS cookies are penalized
- Cookie Attributes (-10 max): Missing httpOnly flags
- Domain Count (-15 max): Too many domains tracking you
- Storage Size (-10 max): Excessive storage usage
Score Ranges:
- 90-100: Excellent privacy
- 70-89: Good privacy
- 50-69: Fair privacy
- 30-49: Poor privacy
- 0-29: Critical privacy issues
Contributions are welcome! Areas for improvement:
- Add more tracking domain patterns
- Implement IndexedDB size calculation
- Add cookie whitelisting feature
- Create detailed cookie viewer
- Add export formats (CSV, PDF)
- Implement scheduled reports
- Add browser action badge updates
- Create privacy tips/recommendations
MIT License - see LICENSE file for details
- Built with Chrome Extension Manifest V3
- Icons use purple/blue gradient theme matching the Insight web app
- Tracking domain database inspired by various privacy tools
- Issues: Report bugs or request features via GitHub Issues
- Web App: http://localhost:3000
- Documentation: See
/docsfolder for detailed guides
Made with π for privacy-conscious users