Extenote
← All Docs

Browser Clipper Extension

The Extenote Web Clipper is a browser extension that lets you save web pages as markdown objects and validate existing references against live metadata APIs.

Features

Capture Mode

Validation Mode

When you visit a page that’s already in your vault:

Validation Queue

Browse and process entries that need validation without leaving your browser.

Installation

Firefox (Temporary Add-on)

  1. Build the extension:

    cd extenote/extensions/clipper
    bun install
    bun run build
    
  2. Load in Firefox:

    • Open about:debugging in Firefox
    • Click “This Firefox” in the sidebar
    • Click “Load Temporary Add-on…”
    • Navigate to extenote/extensions/clipper/dist/ and select manifest.json

Chrome (Developer Mode)

  1. Build the extension (same as above)
  2. Open chrome://extensions/
  3. Enable “Developer mode” (toggle in top right)
  4. Click “Load unpacked”
  5. Select the dist/ folder

Modes

Download Mode (Default)

API Mode

To enable API mode:

  1. Start the Extenote web server: bun run web:server
  2. Click the extension icon, then the gear icon for options
  3. Switch to “API mode”
  4. Enter API URL (default: http://localhost:3001)

Usage

Clipping a New Reference

  1. Navigate to a paper on any website (arXiv, ACM DL, Google Scholar, etc.)
  2. Click the Extenote Clipper icon (or press Alt+Shift+C)
  3. The popup shows a pre-filled search query (DOI, arXiv ID, or title)
  4. The “Lookup trail” shows which sources were searched:
    • Page: Direct extraction from page metadata
    • DBLP: Computer science bibliography
    • Semantic Scholar: Broad academic coverage
    • OpenAlex (optional): Additional coverage
    • Crossref (optional): DOI verification
  5. Review the auto-selected best result (or select a different source)
  6. Edit fields if needed
  7. Click “Save to Vault” (API mode) or “Download” (download mode)

Validating Existing Entries

When you visit a page that’s already in your vault:

  1. The popup automatically shows validation mode
  2. Fresh API data is fetched and compared to vault
  3. Field-by-field comparison shows matches and mismatches
  4. Options:
    • Update check_log: Save validation status without changing fields
    • Fix Mismatches: Update vault with API values
    • Clip as New: Create a separate entry

Using the Validation Queue

  1. Click “Queue” in the popup footer
  2. Browse entries that haven’t been validated
  3. Click an entry to open its URL
  4. Validate using the normal validation flow
  5. Click “Refresh” to update the queue

Search Sources

The clipper evaluates multiple sources and picks the most complete result:

SourceDefaultBest For
DBLPYesComputer science papers
Semantic ScholarYesBroad coverage, abstracts
OpenAlexOptionalWide academic coverage
CrossrefOptionalDOI verification

Unlike the CLI which stops at the first match, the clipper evaluates all enabled sources and auto-selects based on completeness (number of populated fields).

Configuration

Open extension options (click gear icon) to configure:

SettingDescriptionDefault
ModeDownload or APIDownload
API URLServer URL for API modehttp://localhost:3001
Default ProjectProject for new entries-
Default SchemaSchema type for clipped pagesbibtex_entry
Default TagsTags to add to all clipped pagesclipped
Download SubdirectorySubdirectory for downloadsshared-references/

Keyboard Shortcuts

Workflow Integration

The clipper integrates with the broader Extenote workflow:

  1. Capture: Use the clipper to save references while browsing
  2. Review: Use the web UI’s Review page to check for mismatches
  3. Refcheck: Use the CLI to batch-validate references
  4. Fix: Use either the clipper or CLI to update mismatched fields

See Reference Check for the full refcheck documentation.

Caching

The extension caches responses from external APIs (DBLP, Semantic Scholar, OpenAlex, Crossref) to improve performance:

This means:

The cache expires automatically. Restarting the browser clears the memory layer but IndexedDB persists until the TTL expires.

Troubleshooting

”Failed to save” error

No results found

Extension not updating vault

Development

cd extenote/extensions/clipper

# Install dependencies
bun install

# Build once
bun run build

# Watch for changes during development
bun run watch

# Run tests
bun test