All posts
Projects · May 2026 · 4 min read

MacItDown - convert any document to Markdown on your Mac

AI tools are brilliant at reading Markdown. They're not so brilliant at reading your PowerPoint decks, PDFs, and Word docs. MacItDown sits in the middle and sorts that out.

Oliver Bagley

Oliver Bagley

eCommerce Manager & Digital Systems

MacItDown - convert any document to Markdown on your Mac

If you’ve spent any time using AI tools — ChatGPT, Claude, whatever your preference — you’ve probably noticed they work best when you give them clean, readable text. Not a PDF. Not a .docx file. Definitely not a PowerPoint deck.

The problem is that most of the documents that actually matter — reports, proposals, research, meeting notes — live in those formats. Getting that content into a form an AI can genuinely work with usually means copy-pasting, reformatting, or hoping the AI’s file upload handles it well enough. It often doesn’t.

MacItDown fixes that with one drag and drop.

What it does

Drop any document onto MacItDown and it converts it to clean Markdown — the plain text format that AI tools, note-taking apps, and developer tools all understand natively.

It supports a wide range of formats: PDFs, Word documents, Excel spreadsheets, PowerPoint presentations, HTML files, CSVs, RTF, plain text, and more. Whatever you throw at it, you get tidy Markdown back.

From there, you can copy it to your clipboard, save it as a file, or just read through it in the built-in preview. There’s a toggle between rendered Markdown (which looks like a formatted document) and raw source (which shows you exactly what the AI will see). Both are useful.

Why Markdown specifically

Markdown is just text with a bit of lightweight formatting — headings, bold, bullet lists, links — written in a way that’s completely readable as-is, even without any rendering. It was originally designed for writing on the web, but it’s become the default format for working with AI tools because they can read and reason about it without any preprocessing.

When you paste a table from a Word document into a chat window, the formatting often breaks. When you extract that same table as Markdown and paste it in, it works perfectly. That difference matters when you’re asking an AI to analyse data, summarise a report, or compare information across sections.

The whole point of MacItDown is to remove the friction between your existing documents and that workflow.

What’s powering it

The conversion itself is handled by Microsoft’s MarkItDown — an open-source Python library that Microsoft built and released for exactly this kind of document-to-Markdown conversion. It’s solid, actively maintained, and handles the messy parts of format conversion that would take a long time to rebuild from scratch.

MacItDown wraps that in a native macOS app built with SwiftUI, so you get a proper Mac interface without needing to touch a terminal or know anything about Python. The Python environment is bundled inside the app — there’s nothing to install separately.

The interface

The design follows Apple’s current macOS aesthetic — clean, minimal, and native-feeling. There’s no clutter. You open the app, see a drop zone, and drag a file in. That’s the whole interaction.

Keyboard shortcuts work as you’d expect: ⌘O opens a file picker, ⌘C copies the converted Markdown, ⌘S saves it, ⌘N clears everything ready for the next file. Light and dark mode both look good. It scales properly across display sizes.

It’s the kind of tool that should just disappear into your workflow once you’ve used it a couple of times.

Building and installing

MacItDown is open source and free. To get it running you’ll need macOS 15 or later and Xcode’s command line tools, then it’s three commands:

git clone https://github.com/OliverBagley/MacItDown.git
cd MacItDown
./build.sh

The built app ends up at dist/MacItDownApp.app. Move it to your Applications folder and you’re done.

There’s no installer, no sign-in, no telemetry. Everything runs locally on your machine.

Who it’s for

If you work with a lot of documents and use AI tools regularly, the conversion step gets tedious fast. MacItDown is for anyone who wants to spend less time reformatting things and more time actually working with the content.

It’s also useful outside of AI workflows — Markdown works in Notion, Obsidian, Linear, GitHub, and pretty much any modern writing tool. If you’ve ever wanted to get a clean, portable version of a document without all the formatting baggage, this does that.

The code is on GitHub — MacItDown if you want to take a look or build for yourself.

Work together

Got something to
work on?

If something here resonated, I'd like to hear from you.

More posts

Projects · May 2026 · 4 min read

Staggered - delay app launches at macOS login

macOS gives you one option for login items — they all fire at once. I wanted some apps to wait. So I built a small SwiftUI app that staggers launches with configurable delays.

Projects · March 2026 · 4 min read

SonoCast - streaming vinyl to Sonos via Icecast

I wanted to play vinyl through my Sonos. Sonos doesn't accept line-in from a USB sound card. So I built a two-container Docker stack that grabs the audio, encodes it, and streams it out as a custom radio station.