Free · Source-available · 100% local

Export X threads & articles as clean Markdown or PDF — or send them straight to Obsidian.

One typed Content AST renders to every format — so nested threads, quote-tweets, polls, and long-form Articles come out clean. No API keys. Nothing leaves your browser.

XClipper converting an X thread into clean Markdown and PDF

Why not just print the page

Other tools screenshot the page. XClipper rebuilds the document.

"Save as PDF" from the browser captures everything you don't want, breaks across pages in the wrong places, and loses everything that made the post worth keeping.

Browser "Save as PDF" / screenshot

A page that looks like X, mangled.

  • Sidebars, cookie banners, and faded "show more" overlays come along for the ride.
  • Page breaks split tweets mid-sentence; a long thread sprawls across nine pages of dead space.
  • Text isn't selectable, links aren't clickable, images get compressed, polls disappear.
  • Result: a PDF you can't search, edit, or share without apologising for.

XClipper

A print-ready document, rebuilt from the post.

  • Reads the underlying tweet, not the page chrome — no banners, no overlays, no engagement buttons.
  • Smart page breaks that never split a tweet; reply chains stay in order; quote-tweets nest with @handle attribution.
  • Selectable text, clickable links (with t.co resolved), original-resolution images, polls inlined with results.
  • Result: a PDF you'd actually keep — plus matching Markdown when you want it in a note.

Features

Everything you need to clip X — nothing you don't.

Built for note-takers, researchers, and the LLM-curious. One click to clean Markdown or a print-ready PDF, with all the metadata you'd want.

  • Clean Markdown export

    Tweets, threads, quoted posts, and long-form X Articles converted to readable .md. Reply chains stay in order, quote-tweets keep their @attribution, polls inline with results, and t.co redirects resolve to the real URL — engagement chrome and trackers stripped automatically.

  • PDF export

    Save threads and articles as PDFs via the browser's print engine. Selectable text, clickable links, embedded images, full Unicode and emoji support.

  • Send to Obsidian

    One-click handoff via the obsidian:// URI scheme, with an optional vault name. Obsidian-friendly frontmatter, [[@handle]] wikilinks, and customizable tags.

  • Local image downloads

    Download embedded X media alongside your .md file to prevent link rot. Limited to expected X media hosts — external URLs are kept as Markdown links.

  • Rich YAML frontmatter

    Author, handle, date, source URL, content type, and engagement stats (likes, reposts, replies, bookmarks, views). Toggle each field on or off per schema.

  • Local-only, no API keys

    Zero-API: everything runs in your browser. No accounts, no server-side processing, nothing leaves your device. Source available on GitHub.

How it works

Three ways to clip. Same clean Markdown and PDF.

Pick whichever entry point fits the moment. All three run the same extractor and respect the same settings.

01

Toolbar popup

Click the XClipper icon, then pick Download .md, Copy .md, Export .pdf, or Add to Obsidian. The toggles you change per-export — images, engagement stats, source link — sit right in the popup, not buried in settings.

XClipper popup with export options
02

Inline button on every tweet

A download icon sits next to share on every tweet's action bar. One click opens the permalink and exports it. Shift- or Alt-click to export just that tweet without its thread.

Inline download button on a tweet
03

Right-click anywhere

Right-click on a tweet — body, image, or timestamp — and pick Save tweet as Markdown, Save tweet as PDF, Copy tweet as Markdown, or Add tweet to Obsidian. XClipper figures out which tweet you meant.

Right-click context menu with XClipper items

Under the hood

All three entry points read X's DOM into one typed Content AST, then render to Markdown, PDF, or an Obsidian handoff. Format selectors live in one place, so an X redesign is a small patch.

DOMContent AST{ md·pdf·obsidian }

What's new

Recent releases.

  1. v2.0.4

    Latest
    Changed
    • License
    • Internal restructuring (no behavior change)
    Fixed
    • Frontmatter field selection in inline-button, context-menu, and PDF exports
  2. v2.0.3

    Added
    • Date in Article PDF exports
    Changed
    • PDF action wording
    Fixed
    • Article PDF Engagement Stats and Metadata Overwrite
    • Captioned X Article images after AST refactor
    • Embedded tweets in X Article bodies
  3. v2.0.2

    Fixed
    • PDF Export respect Engagement toggle (#46)
    • Thread Engagement Stats position (#47)
  4. v2.0.1

    Fixed
    • Tooltip opacity on disabled options (#38)
  5. v2.0.0

    Changed
    • Rebrand to XClipper
    • Inline button defaults to off for new installs
    Migration
    • Settings carry over automatically from v1.9.0
  6. Show 14 older releases
    1. v1.9.0

      Added
      • Content AST Architecture
      • PDF export
      • X Article quote cards
      Changed
      • Popup layout
      Fixed
      • Thread engagement stats from the wrong tweet (#40)
      • Frontmatter field picker in RTL locales
    2. v1.8.0

      Added
      • Customizable tags in Obsidian-friendly frontmatter
      Changed
      • Obsidian row redesign
      • "Download .md" hint wording
      • "Activate all" button
      Fixed
      • Right-to-left layout (Arabic, Persian)
    3. v1.7.0

      Added
      • Single-Tweet Export
      • Three new UI languages
      • Footer version link
      Fixed
      • Polls
      • Translation gaps
      • Thread completeness on deep-link permalinks
    4. v1.6.1

      Added
      • Filename Template
      • Frontmatter Field Picker
      • Version in Footer
      Changed
      • Collapsible Settings Sections
      • Settings Topbar
      • Instant CSS Tooltips
      • Toolbar Icon
    5. v1.6.0

      Added
      • Downloads Subfolder
      • Obsidian Vault Subfolder
      Changed
      • Extension Name
      Fixed
      • Obsidian handoff vs. close-after-export
    6. v1.5.1

      Security
      • Hostname Sanitization
      Changed
      • Extension Description
    7. v1.5.0

      Added
      • Add to Obsidian
      • Obsidian-friendly Frontmatter
      • Obsidian Vault Setting
      • Link Cards
      • Multi-View Popup
      Changed
      • Grouped Settings
      • Popup Layout
    8. v1.4.1

      Added
      • Promoted Tweet Skipping
      • K/M/B Engagement Counts
      Changed
      • Quoted-Tweet Media Order
      Fixed
      • Duplicate Video Poster
      Internal
      • Contributing Guide
      • CI Pipeline
    9. v1.4.0

      Added
      • In-Place Extraction
      • In-Page Toast
      • Show Inline Button toggle
      • Show Engagement Stats Inline toggle
      • Grouped Settings
      Security
      • Download Sender Validation
      • Image Host Allowlist
      • Path Sanitization
      Changed
      • Inline Button Visual Match
      • Cleaner Context Menu
      • Toast Position
      • Wording
      • Internal Refactor
      Fixed
      • SVG glyphs rendered as full images
      • Tests on Fresh Checkouts
    10. v1.3.0

      Added
      • Inline Save Button
      • Right-Click Context Menu
      • Two New Toggles
      • Author Attribution on Quoted Tweets
      • Automated Test Suite
      Fixed
      • Article Image Extraction
      • Right-Click on Permalink Pages
      • Article List Continuation
      • Copy vs. Save Image Settings
      • Orphaned Script Errors
      Changed
      • Permission Added
      • Localization
    11. v1.2.1

      Added
      • Web Store Assets
      Changed
      • Popup UI
      • Localization
      • Manifest
    12. v1.2.0

      Added
      • Copy to Clipboard
      • Multi-Language UI
      • Dynamic Theming
      Fixed
      • Markdown Formatting
    13. v1.1.0

      Added
      • Local Image Downloads
      • Tweet Metadata
      • Settings Persistence
      Improved
      • Quote Tweet Extraction
      • Popup UI
      • Path Sanitization
    14. v1.0.0

      Initial Features
      • Core Extraction
      • DOM Cleaning
      • Markdown Conversion

Full history on GitHub.

Start clipping in under a minute.

Install from the Chrome Web Store. Open any tweet or article on x.com. Hit Download. That's it.