Turn the whole universe into markdown.
- Web pages: fetch any URL and convert to clean markdown with Firecrawl.
- YouTube videos: extract transcripts with timestamps.
- PDFs: parse text content from PDF files.
- Google Docs: convert published Google Docs to markdown.
- Video/audio: transcribe media files using Whisper.
- Images: describe images using GPT vision.
- Word documents: convert
.docxfiles to markdown. - EPUB ebooks: convert
.epubfiles to markdown. - CSV/TSV files: convert tabular data to markdown tables.
- PowerPoint: convert
.pptxpresentations to markdown. - Tweets: capture tweets/X posts as markdown.
- RSS/Atom feeds: convert feed entries to markdown.
- Auto-detect: pass any URL or file — allmd figures out the type automatically.
- AI formatting: non-web output is polished with GPT for consistent, readable markdown.
- Interactive mode: run
allmdwith no arguments to pick a converter.
Installation
Set the API keys for the converters you use:
export OPENAI_API_KEY=your-key export FIRECRAWL_API_KEY=your-key
OPENAI_API_KEY is required for AI-backed converters. FIRECRAWL_API_KEY is required for web page conversion. Web pages use Firecrawl markdown directly and do not require OPENAI_API_KEY.
Requires Node.js 20+ and ffmpeg for video/audio (bundled via ffmpeg-static).
Usage
Run allmd with no arguments for interactive mode, or pass any URL/file for auto-detection.
allmd https://example.com # auto-detect input type allmd web https://example.com -o article.md allmd youtube https://youtube.com/watch?v=dQw4w9WgXcQ -o transcript.md allmd pdf document.pdf -o document.md allmd gdoc https://docs.google.com/document/d/... -o doc.md allmd video recording.mp4 -o transcript.md allmd image screenshot.png -o description.md allmd docx report.docx -o report.md allmd epub book.epub -o book.md allmd csv data.csv -o data.md allmd pptx slides.pptx -o slides.md allmd tweet https://x.com/user/status/123 -o tweet.md allmd rss https://blog.example.com/feed -o feed.md allmd examples # show more usage examples
Options
-o, --output <file> Write output to a specific file
-d, --output-dir <dir> Output directory for converted files
-v, --verbose Enable verbose output
-c, --clipboard Read input from clipboard
--copy Copy output to clipboard
--stdout Print output to stdout instead of writing a file
--parallel <n> Number of parallel conversions (default: 3)
--no-frontmatter Skip YAML frontmatter in output
-V, --version Show version
-h, --help Show help
API
import { convertWeb, convertPdf, convertYoutube } from "allmd"; const result = await convertWeb("https://example.com"); console.log(result.markdown);
Available converters: convertWeb, convertYoutube, convertPdf, convertGdoc, convertVideo, convertImage, convertDocx, convertEpub, convertCsv, convertPptx, convertTweet, convertRss.
AI Agents
Add allmd as a skill for Claude Code, Cursor, Codex, and other AI coding assistants:
npx skills add mblode/allmd