Free & open source — macOS & Windows

Drag & drop anything.
Get Markdown.

tomd is a tiny desktop app that turns PDFs, Word docs, spreadsheets, slides and images into clean Markdown — the most token-efficient format you can feed an LLM.

100% local — your files never leave your device — MIT
tomd
tomd
Drop files or folders anywhere in this window.
Auto-convert on drop
quarterly-report.docx
→ quarterly-report.md
Copy MD drag .md Reveal
product-deck.pptx
Converting…
research-notes.pdf
Queued…
Add Files… Clear converting 2/3 — product-deck.pptx Stop
using ~/Library/Application Support/tomd/venv/bin/markitdown
Why tomd

Stop burning your LLM's context window.

Attach a Word doc, PDF or slide deck to Claude or ChatGPT and a huge slice of the context window disappears into formatting overhead before the model reads a single idea.

Markdown is the format LLMs natively "speak" — minimal markup, structure preserved, dramatically fewer tokens. tomd converts your documents before they hit the chat box, so the model spends its context on your content, not your file format.

13+formats
100%on-device
0uploads
MITlicense
report.docx — attached rawheavy
report.md — via tomdlight

Same content, structure intact — headings, lists, tables and links preserved as clean Markdown. Conversion quality by Microsoft MarkItDown.

How it works

A GUI for your terminal,
not a black box.

tomd doesn't reimplement anything. It's a thin desktop front-end that runs Microsoft's open-source MarkItDown CLI on your machine — the exact commands you'd type yourself, minus the typing.

[ 01 ]

Install & open

Download the app and open it. On first launch, tomd checks your device for the requirements — Python 3.10+ (or uv) and the markitdown CLI.

[ 02 ]

One-click setup

Already have markitdown? tomd uses yours and never asks. Missing it? One click installs markitdown[all] into a private environment — your global Python is never touched. You watch every command run live.

[ 03 ]

Drop. Convert. Done.

Drag files or whole folders in. Each file runs through the queue, and the .md lands right next to the original.

  what tomd runs for you
$ markitdown quarterly-report.docx -o quarterly-report.md
quarterly-report.md written — 2.1s
$ markitdown product-deck.pptx -o product-deck.md
product-deck.md written — 3.4s
$ markitdown research-notes.pdf -o research-notes.md
Features

Small app. Sharp edges filed off.

[ 01 ]

Drag & drop anything

Drop single files or entire folders — tomd recursively picks up every supported file inside and lines them up.

[ 02 ]

Auto-convert & queue

Flip one switch and dropped files convert instantly — one at a time through a sequential queue, with a Stop button when you change your mind.

[ 03 ]

Live progress

Per-file status, a spinner on the active conversion, an overall progress bar, and toast notifications when something finishes — or fails.

[ 04 ]

Copy, drag, or reveal

Copy the Markdown straight to your clipboard, drag the .md file out into any app, or reveal it in Finder / Explorer.

[ 05 ]

100% on your device

No uploads, no accounts, no telemetry. Conversion runs as a local process on your machine. Your documents never leave it.

[ 06 ]

Built for developers

Transparent by design: the footer shows exactly which markitdown binary is in use, and setup streams every shell command it runs.

Supported formats

If MarkItDown reads it,
tomd converts it.

Everything Microsoft's MarkItDown handles, through one drop zone.

PDF Word (.docx) PowerPoint (.pptx) Excel (.xlsx / .xls) Images — EXIF + OCR Audio — metadata + transcription HTML CSV / JSON / XML ZIP archives EPub Outlook (.msg / .eml) YouTube URLs in progress Paste-to-convert planned
Under the hood

Your device does the work.
tomd just drives.

tomd doesn't bundle a converter. It finds — or installs — Microsoft's MarkItDown on your machine and shells out to it, file by file. That keeps the app small, the conversion engine always upgradeable, and the whole pipeline inspectable.

[ INPUT ]

You drop files

Files and folders queue up in the tomd window.

[ EXEC ]

tomd runs the CLI

markitdown file.pdf -o file.md
One subprocess at a time, on your device.

[ OUTPUT ]

.md appears

Saved next to the original. Copy it, drag it out, or reveal it.

Requirements
macOS or WindowsApple Silicon & Intel Macs; Windows 10+. Linux: run from source.
Python 3.10+ or uvEither one works. With uv, tomd can even download a Python for you.
MarkItDown — auto-installedFound on your PATH? Used as-is. Missing? One-click install into a private venv.
Roadmap

Where this is going.

01 Shipped

Local file conversion

Drag & drop conversion for PDFs, Office documents, images, audio, HTML, archives and more — with auto-convert, a sequential queue, live progress and per-file actions.

02 In progress

YouTube URL conversion

Paste a YouTube link, get the transcript as Markdown. Instead of handing an LLM a URL it can't read, hand it the actual content.

03 Planned

Paste-to-convert

A text field that takes whatever you paste — raw HTML, rich text, markup — and turns it into Markdown on the spot.

04 Planned

Conversion options

Pick an output folder, enable MarkItDown plugins, wire up LLM-powered image descriptions and OCR — the advanced knobs, kept out of the way until you want them.

Open source

MIT licensed. Built in the open.

tomd stands on the shoulders of MarkItDown, an open-source project by Microsoft's AutoGen team. The GUI, the issues, the roadmap — all public.

MIT License No accounts No telemetry Works offline
Star on GitHub
FAQ

Questions, answered.

[ 01 ]Do my files get uploaded anywhere?
No. Conversion is a local subprocess on your machine — the same as running markitdown in a terminal. tomd has no server, no accounts, and sends nothing anywhere.
[ 02 ]Why does macOS warn me the first time I open it?
The app isn't code-signed with an Apple Developer ID yet (that's a paid certificate). Right-click the app → OpenOpen once; after that it launches normally. You can also audit the source and build it yourself.
[ 03 ]What exactly does the one-time setup install?
If markitdown isn't already on your PATH, tomd creates a private virtual environment in your user library (e.g. ~/Library/Application Support/tomd/venv on macOS) and installs markitdown[all] into it. Your system Python and global packages are never modified. Every command is streamed to the screen as it runs, and you can delete that one folder to undo it completely.
[ 04 ]I already use markitdown in my terminal. Will tomd respect that?
Yes — your PATH is checked first. If a markitdown binary is found, tomd uses it and never installs anything. The footer of the app always shows which binary is in use.
[ 05 ]Where do the converted files go?
Right next to the original: report.pdf becomes report.md in the same folder. From the app you can copy the Markdown, drag the file anywhere, or reveal it in Finder / Explorer.
[ 06 ]How good is the conversion?
As good as Microsoft MarkItDown — which is very good for structure (headings, tables, lists, links) and optimized for LLM consumption rather than pixel-perfect human-facing fidelity. It's the same engine many AI pipelines use under the hood.
[ 07 ]Is it really free?
Yes. MIT licensed, free forever, source on GitHub. If it saves you tokens, a star is appreciated.