Skip to content

Convert OPML to Markdown.

Turn an OPML outline or feed export into a tidy, nested Markdown list. The whole tree comes through, and the work happens in your browser, so the file never leaves your device.

Instant & offlineFree, no accounts

Drag & drop your files

or

WordExcelPowerPointPDFEPUBCSVJSONCode
+135 file formats supported
Batch convertMany files at once
100% privateStays on your device
Works offlineNo connection needed
Preset

Optimize for AI & RAG

Extra cleanup for LLM ingestion: strip HTML, fix smart quotes, tidy Unicode and spacing.

Add YAML front matter

Prepend a metadata block (title, source, date, word & token counts) for knowledge bases and RAG.

Add table of contents

Build a linked index from the headings. Handy for long documents.

Export RAG chunks (.json)

Split the result into retrieval-ready chunks. Download per file from the result panel.

Most converters quietly upload your documents to a server. This one physically can't.

01Why

An outline,
not a page.

OPML wraps your subscriptions inside nested tags that few apps read. Converting keeps every branch of the tree intact and writes it as an indented Markdown list with live links.

OPMLoutline.opml

<opml><head><title>My subscriptions</title></head>

<body>

<outline text="News">

<outline text="Example Blog" xmlUrl="https://example.com/feed"/>

</outline>

</body></opml>

MDoutline.md

# My subscriptions

- News

- [Example Blog](https://example.com/feed)

02Features

Everything you
actually need.

Outlines in, a nested Markdown list out, with no server and no account anywhere.

It never leaves your browser

Your .opml is read and parsed on your device. Nothing is uploaded to any server, ever.

local
OPMLoutline.opml

# Heading

- point one

3 chunks

AI & RAG ready

Optional cleanup, YAML front matter, a table of contents and RAG chunk export.

Works offline

Once the page has loaded you can switch off your connection and it keeps converting.

- News

- [Example Blog](...)

Outline becomes a nested list

The title plus the full tree become indented bullets, each item linked to its URL.

éñü

Unicode safe

Accents, symbols and non-Latin scripts come through intact as UTF-8.

Free, and unlimited

No sign-up, no quotas, no watermarks. Convert one file or a thousand; it all runs the same way, on your own device.

03Fidelity

The whole tree
comes through.

OPML maps cleanly onto a Markdown list, so this conversion is lossless. Every level of nesting and each item link are preserved, exactly as the Formats list describes.

Kept

2
  • The outline title
  • The full nested outline tree as an indented list

Preserved

2
  • Every nesting level
  • Each item linked to its URL
OPMLoutline.opml
My subscriptions
kept

- News

- Tech

- Hardware

kept
- [Example Blog](https://example.com/feed)
kept
04FAQ

OPML questions,
answered.

Everything worth knowing before you drop in an outline.

05More

Other converters.

Working with more than outlines? These convert the same way: privately, in your browser.

Rust to Markdown

.rs

Rust source code.

Convert

PHP to Markdown

.php

PHP source code.

Convert

Ruby to Markdown

.rb

Ruby source code.

Convert

SQL to Markdown

.sql

SQL queries & schemas.

Convert

Shell to Markdown

.sh · .bash

Shell & Bash scripts.

Convert

Mermaid to Markdown

.mmd · .mermaid

Text-based diagrams.

Convert

PlantUML to Markdown

.puml · .plantuml

Text-based UML diagrams.

Convert

DOT / Graphviz to Markdown

.dot · .gv

Graphviz graph descriptions.

Convert