BirchOutline icon indicating copy to clipboard operation
BirchOutline copied to clipboard

Read, process, and serialize TaskPaper outlines in Swift

Birch Outline (Swift)

Build Status

Birch Outline is a Swift framework (iOS & macOS) that wraps birch-outline.

It's in pre-release now, but I think it's suitable for reading, processing, and seriaizing TaskPaper outlines. In the future the wrapper can be extended to serve as a good runtime outline model for other apps to build off.

Example

import BirchOutline

let outline = BirchOutline.createTaskPaperOutline("one:")
let one = outline.root.firstChild

let two = outline.createItem("two")
two.setAttribute("data-type", value: "task")
two.setAttribute("data-priority", value: "1")
one.appendChildren([two])

let three = outline.createItem("three")
two.appendChild([three])

print(outline.serialize(nil))

/*
one:
  - two @priority(1)
    three
*/