ink.branchline.bud

branchline.ink

Documentation

A bud: one contribution to a story tree. Freshly written buds grow for 24h (not yet followable); after that they open as 'blooms' that other writers can extend; past 48h without children they lock into 'branches'. These lifecycle stages are views of the same record, not different record types. The AppView enforces a 500-word ceiling on `text` (counted via Unicode word segmentation); writes that exceed it are rejected as WordLimitExceeded.

main record

A bud: one contribution to a story tree. Freshly written buds grow for 24h (not yet followable); after that they open as 'blooms' that other writers can extend; past 48h without children they lock into 'branches'. These lifecycle stages are views of the same record, not different record types. The AppView enforces a 500-word ceiling on `text` (counted via Unicode word segmentation); writes that exceed it are rejected as WordLimitExceeded.

Record Key tid Timestamp-based ID

Properties

createdAt string datetime Required

An RFC 3339 formatted timestamp.

formatting array of ref #formatSpan Optional

No description available.

text string Required

No description available.

maxLength: 20000 bytesmaxGraphemes: 10000 graphemes
title string Required

No description available.

maxLength: 1200 bytesmaxGraphemes: 120 graphemes
View raw schema
{
  "key": "tid",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "title",
      "text",
      "createdAt"
    ],
    "properties": {
      "text": {
        "type": "string",
        "maxLength": 20000,
        "maxGraphemes": 10000
      },
      "title": {
        "type": "string",
        "maxLength": 1200,
        "maxGraphemes": 120
      },
      "parent": {
        "ref": "com.atproto.repo.strongRef",
        "type": "ref"
      },
      "createdAt": {
        "type": "string",
        "format": "datetime"
      },
      "formatting": {
        "type": "array",
        "items": {
          "ref": "#formatSpan",
          "type": "ref"
        }
      }
    }
  },
  "description": "A bud: one contribution to a story tree. Freshly written buds grow for 24h (not yet followable); after that they open as 'blooms' that other writers can extend; past 48h without children they lock into 'branches'. These lifecycle stages are views of the same record, not different record types. The AppView enforces a 500-word ceiling on `text` (counted via Unicode word segmentation); writes that exceed it are rejected as WordLimitExceeded."
}
formatSpan object

No description available.

Properties

end integer Required

Byte offset (exclusive) into `text` where the span ends.

minimum: 0
start integer Required

Byte offset (inclusive) into `text` where the span begins.

minimum: 0
type string Required

No description available.

Known values: bold, italic, underline, strikethrough
View raw schema
{
  "type": "object",
  "required": [
    "start",
    "end",
    "type"
  ],
  "properties": {
    "end": {
      "type": "integer",
      "minimum": 0,
      "description": "Byte offset (exclusive) into `text` where the span ends."
    },
    "type": {
      "type": "string",
      "knownValues": [
        "bold",
        "italic",
        "underline",
        "strikethrough"
      ]
    },
    "start": {
      "type": "integer",
      "minimum": 0,
      "description": "Byte offset (inclusive) into `text` where the span begins."
    }
  }
}

Lexicon Garden

@