Extending Quote Post Automation: From Feedly-Specific to Universal Meta Tag Extraction

In my previous post, I documented a two-part system for automating quote post creation: a Node.js script and a Feedly-specific bookmarklet. Since then, I’ve extended the tooling to be more general-purpose and robust.

The Problem with Feedly-Only Extraction

The original bookmarklet relied on Feedly’s specific DOM structure, which meant it only worked when reading articles within Feedly’s interface. This was limiting—I wanted to capture quotes from:

  • Articles linked in tweets
  • Blog posts I encounter through search
  • News sites I visit directly
  • Any webpage with proper meta tags

The Solution: Universal Meta Tag Extraction

Instead of parsing Feedly’s DOM, I refactored the bookmarklet to extract metadata using standard HTML meta tags that most modern websites include:

1
2
3
4
<meta property="og:author" content="Author Name">
<meta property="og:title" content="Article Title">
<meta property="article:published_time" content="2026-02-07">
<meta property="article:tag" content="Technology">

What Gets Extracted Now

The bookmarklet automatically captures:

  1. Author - With fallback chain:

    • article:author meta tag
    • og:author (Open Graph)
    • Site name from og:site_name or application-name
    • Falls back to “Unknown” if not found
  2. Title - Tries multiple sources:

    • Open Graph og:title
    • Twitter Card twitter:title
    • HTML <title> tag as last resort
  3. Publication Date - Extracts and validates ISO format (YYYY-MM-DD):

    • article:published_time
    • datePublished meta tag
    • Custom publish_date meta tag
  4. Tags - Extracts all article:tag meta tags:

    • Can capture multiple tags from a single page
    • Pre-fills the Tags field in the form
    • Fully editable before generating the command
  5. Highlighted Text - Uses window.getSelection() to capture:

    • Text you highlight/select BEFORE clicking the bookmark
    • Preserves your selection exactly as you made it

Auto-Fetch Metadata from URL

Both the bookmarklet and create-quote-post.js now also intelligently fetch missing metadata:

1
2
3
4
5
# If author is missing or "Unknown", the script fetches it from the URL
node tools/create-quote-post.js \
--url "https://example.com/article" \
--quote "The quote..." \
--commentary "My thoughts..."

The script will:

  • Fetch the article’s HTML
  • Extract author, title, date, and tags from meta tags
  • Log what it found: ✓ Found author: Ben Thompson
  • Use the extracted values for post generation

The general bookmarklet works on any website with proper meta tags, pawing the path for future automations.

The updated resources are available at: