No description
  • JavaScript 60.3%
  • CSS 22.8%
  • HTML 16.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-03-24 22:56:14 +01:00
dashboard Created by claude-opus 4.6 2026-03-24 12:42:31 +01:00
icons Created by claude-opus 4.6 2026-03-24 12:42:31 +01:00
popup Created by claude-opus 4.6 2026-03-24 12:42:31 +01:00
background.js Created by claude-opus 4.6 2026-03-24 12:42:31 +01:00
manifest.json Created by claude-opus 4.6 2026-03-24 12:42:31 +01:00
plan.md Created by claude-opus 4.6 2026-03-24 12:42:31 +01:00
README.md Added questions and answers 2026-03-24 22:56:14 +01:00
storage.js Created by claude-opus 4.6 2026-03-24 12:42:31 +01:00

Download Logger — Browser Extension

A browser extension for Chrome and Firefox that logs all downloads with URL and filename, displays them in a dashboard, and allows exporting as JSON.

Features

  • 📋 Automatic logging of all downloads (URL, filename, size, status, timestamp)
  • 📊 Dashboard page with sortable table, search/filter, and pagination
  • 📤 JSON export — download your log as download-log-YYYY-MM-DD.json
  • 💾 Persistent storage via chrome.storage.local
  • 🔌 Cross-browser — works in Chrome and Firefox (Manifest V3)

Installation

Chrome / Chromium

  1. Open chrome://extensions/
  2. Enable Developer mode (top right)
  3. Click Load unpacked
  4. Select the browser-extension/ folder
  5. The extension icon appears in the toolbar

Firefox

  1. Open about:debugging#/runtime/this-firefox
  2. Click Load Temporary Add-on…
  3. Select the manifest.json file in the browser-extension/ folder
  4. The extension icon appears in the toolbar

Usage

  • Click the extension icon → Popup shows logged download count + quick actions
  • Open Dashboard → Full table with all logged downloads, sortable and searchable
  • Export JSON → Downloads a JSON file with all logged entries
  • Clear All → Removes all entries from storage

File Structure

browser-extension/
├── manifest.json          # MV3 manifest (Chrome + Firefox)
├── background.js          # Service worker: captures download events
├── storage.js             # Shared storage utility (CRUD)
├── popup/
│   ├── popup.html         # Extension popup
│   └── popup.js
├── dashboard/
│   ├── dashboard.html     # Full dashboard page
│   ├── dashboard.js       # Table logic, search, sort, export
│   └── dashboard.css      # Styling
├── icons/
│   ├── icon-16.png
│   ├── icon-48.png
│   └── icon-128.png
└── README.md

Data Format

Each logged download entry:

{
  "id": 12345,
  "url": "https://example.com/file.pdf",
  "filename": "/Users/name/Downloads/file.pdf",
  "fileSize": 1048576,
  "startTime": "2026-03-24T11:00:00.000Z",
  "state": "complete",
  "mime": "application/pdf"
}

Limits

  • Storage: max 10,000 entries (oldest auto-trimmed)
  • chrome.storage.local has a 10 MB limit

License

MIT

Questions and Answers

Where is the list for Chrome?

On my laptop, it is this path: ${HOME}/.config/google-chrome/Default/Local\ Extension\ Settings/kaljnlcimcjojnjlhldcaknfodbnfkeg/000003.log

It seems to be a LevelDB.

Where is the list for Firefox?

${HOME/.mozilla/firefox//storage/default/moz-extension+++/idb/

It is probably a IndexesDB.