[idea:rookery-pinboard]

    @rookery/pinboard

    Arranges ideas as draggable cards on a board that remembers where each one was put, after the structural method of John McPhee, which lays out the components of a piece until a sequence appears among them.

    A board with no arguments is every note in the rookery, as cards.

    #import "@rookery/core:0.1.0": idea, rookery
    #import "@rookery/pinboard:0.1.0": pinboard
    #show: rookery
    
    #idea("outline", title: [Outline])[..]
    #idea("interview", title: [The interview])[..]
    
    /* Cards are windows rendered without backlinks, so a board showing the whole
       corpus is a view of the notes rather than forty references to them. */
    #pinboard()

    Narrowing and remembering a board

    Pinboard has no query of its own, because rookery already has one. Narrow with ideas(..) and hand the rows in.

    #import "@rookery/core:0.1.0": ideas
    
    /* Naming a board gives it a memory. Positions live in the reader's own
       browser under rookery-pinboard:<id>, keyed on each note's registry name, so
       a layout belongs to the reader rather than the document and renaming a
       board starts it empty. */
    #pinboard(id: "outline-board", notes: ideas(tagged: "outline"), folded: false)
    
    /* layout: places a card the board has never seen before, and only such a
       card. Once something has been dragged, neither the layout nor the order of
       ideas(..) moves it again. */
    #pinboard(id: "flow-board", layout: "flow")