Convert PDF, DOCX, XLSX, PPTX, HTML, CSV, plain text, JSON and image files to Markdown directly inside AI‑chat websites.
Supported browsers: Chrome, Edge, Brave (Manifest V3) and Firefox (Manifest V2). Safari is not available yet.
LLM Friendly is a browser extension that helps Large Language Models process your documents more efficiently by converting PDFs, Word documents, Excel spreadsheets, PowerPoint presentations, HTML pages, CSV files, JSON data, plain text files, and images into structured Markdown or text directly inside AI chat platforms.
Many users regularly upload PDFs, images, spreadsheets, presentations, and other documents to Large Language Models for analysis, summarization, and question answering. However, these formats often contain complex layouts, formatting metadata, embedded objects, and structural overhead that consume additional tokens. By transforming documents into clean, AI-friendly Markdown, LLM Friendly removes unnecessary overhead and presents content in a format that LLMs can process more efficiently, allowing models to focus on the information that matters most while maximizing available context and reducing token consumption.
.md.Install from your browser’s extension store:
Install the extension directly from the Chrome Web Store:
LLM Friendly on the Chrome Web Store
To pin the extension to your toolbar:
Install the extension from Mozilla Add-ons:
LLM Friendly on Firefox Add-ons
git clone https://github.com/shibi1306/LLM-Friendly.git
cd LLM-Friendly
npm install
npm run build:chrome
# Output: ./dist
# Zip for the Chrome Web Store:
npm run package:chrome # → llm-friendly-chrome.zip
Load unpacked: open chrome://extensions (or edge://extensions) → enable Developer mode → Load unpacked → select ./dist.
npm run build:firefox
# Output: ./dist-firefox
# Zip for Mozilla Add-ons:
npm run package:firefox # → llm-friendly-firefox.zip
Load temporarily: about:debugging#/runtime/this-firefox → Load Temporary Add-on… → dist-firefox/manifest.json.
npm run dev # Chrome build, watches for changes
npm run dev:firefox # Firefox build, watches for changes
Playwright covers converter unit tests and browser E2E flows (Chrome extension load + Firefox build checks).
npx playwright install chromium firefox # once
npm run test:unit # PDF, DOCX, XLSX, PPTX, HTML, CSV, JSON, OCR mock, ZIP, Markdown
npm run test:e2e:chrome # popup, Convert / Insert / Copy / Save, history, multi-file paste
npm run test:e2e:firefox
npm run test # unit + e2e
npm run test:all # build Chrome & Firefox, then run all tests
Fixture samples live under tests/fixtures/files/ (regenerate with npm run test:fixtures if needed).


.md file into the chat input..md (saved to ~/Downloads/LLM Friendly/ by default).
Click the extension icon in the toolbar to open the popup. Here you can drag‑or‑select a file to convert without needing a file input on the page, and browse your local conversion history. Each history item lets you Copy, Insert, or Save the previously converted Markdown.
Open the extension Options (via the popup ⚙️ or right‑click → Options) to configure:
~/Downloads/ for saved .md files.
You can also manage your conversion history, set the maximum number of items to keep, and clear the history from the settings page.

| Issue | Description | Work‑around / Status |
|---|---|---|
| Safari | No Safari web extension / App Store build yet. | See Future Work below. |
| Firefox folder picker | showDirectoryPicker() is Chrome-only. |
Type a Downloads subfolder name in settings. |
| Very large files | Multi‑hundred‑MB PDFs/DOCX can take noticeable time. | Split files or accept modest delay. |
| Complex layouts | Multi‑column tables, merged cells, or intricate formatting may lose layout. | Output focuses on readable text; manual tweaks may be needed. |
| ZIP depth | Only one level of ZIP extraction is supported (nested ZIPs inside a ZIP are ignored). | Extract nested archives manually before attaching. |
pdf.js, mammoth, turndown, sheetjs, fflate, xlsx, webextension-polyfill, etc.LLM Friendly is designed with privacy in mind. All file processing happens locally in your browser-none of your data is ever transmitted to external servers. For full details, see the Privacy Policy.
LLM Friendly is licensed under the MIT License.
This project includes code derived from Microsoft’s MarkItDown project (MIT License) and uses Tesseract.js/Tesseract OCR (Apache License 2.0). See THIRD_PARTY_NOTICES.md for details.
GitHub: https://github.com/shibi1306/LLM-Friendly