HavenOPML

A Swift package for importing and exporting OPML documents.

HavenOPML reads and writes OPML 1.0 and 2.0 documents in pure Swift. It has no outside dependencies and uses an actor-isolated service for safe concurrent access.


Features

Import and export

Reads OPML files into structured outlines and writes them back as valid XML.

Both formats

Supports OPML 1.0 and 2.0.

Outline traversal

Includes depth-first traversal helpers for walking nested outlines.

Security

Prevents XXE attacks, caps input at 10 megabytes, and limits nesting to 128 levels.


Platforms

iOS 18+, macOS 15+, tvOS 18+, watchOS 11+, visionOS 2+


Licence

BSD 3-Clause