to.atpota.poe.overlay

atpota.to

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "key": "any",
      "record": {
        "properties": {
          "alerts": {
            "description": "Poe says weather alerts (storms, apps blowing in).",
            "type": "boolean"
          },
          "chat": {
            "description": "Poe says hello to chatters and answers chat commands.",
            "type": "boolean"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "follows": {
            "description": "Poe thanks new followers.",
            "type": "boolean"
          },
          "ignore": {
            "description": "Accounts Poe never greets, thanks or answers (bots).",
            "items": {
              "format": "at-identifier",
              "type": "string"
            },
            "maxLength": 50,
            "type": "array"
          },
          "name": {
            "description": "What the streamer calls this layout, on the setup page only.",
            "maxGraphemes": 40,
            "maxLength": 400,
            "type": "string"
          },
          "nap": {
            "description": "Minutes of quiet before Poe naps; 0 never.",
            "maximum": 240,
            "minimum": 0,
            "type": "integer"
          },
          "poe": {
            "ref": "#poe",
            "type": "ref"
          },
          "theme": {
            "knownValues": [
              "light",
              "dark"
            ],
            "type": "string"
          },
          "updatedAt": {
            "format": "datetime",
            "type": "string"
          },
          "visitors": {
            "description": "Now and then a butterfly, bird, snail, worm or moth visits Poe.",
            "type": "boolean"
          },
          "volume": {
            "description": "How loud Poe's noises are; 0 is silent.",
            "maximum": 100,
            "minimum": 0,
            "type": "integer"
          },
          "widgets": {
            "description": "The widgets on screen, each kind at most once.",
            "items": {
              "ref": "#widget",
              "type": "ref"
            },
            "maxLength": 16,
            "type": "array"
          }
        },
        "required": [
          "poe",
          "widgets",
          "createdAt",
          "updatedAt"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "poe": {
      "properties": {
        "scale": {
          "description": "Percent of its usual size.",
          "maximum": 200,
          "minimum": 50,
          "type": "integer"
        },
        "show": {
          "type": "boolean"
        },
        "side": {
          "description": "Which bottom corner Poe sits in; it faces into the screen.",
          "knownValues": [
            "left",
            "right"
          ],
          "type": "string"
        }
      },
      "required": [
        "show",
        "side",
        "scale"
      ],
      "type": "object"
    },
    "widget": {
      "properties": {
        "kind": {
          "description": "The atmosphere's weather (card to pulse), Anisota's moon, mark and loader, the time as a TID, the streamer's flushes (im.flushing.right.now), status and vitals (is.dame.now, is.dame.state) and teal.fm music, or their stream.place chat.",
          "knownValues": [
            "card",
            "strip",
            "badge",
            "apps",
            "forecast",
            "pulse",
            "moon",
            "mark",
            "loader",
            "tid",
            "flushes",
            "status",
            "music",
            "chat"
          ],
          "type": "string"
        },
        "scale": {
          "description": "Percent of its usual size.",
          "maximum": 200,
          "minimum": 50,
          "type": "integer"
        },
        "slot": {
          "description": "Where on screen. Widgets in the same slot stack.",
          "knownValues": [
            "top-left",
            "top-center",
            "top-right",
            "bottom-left",
            "bottom-center",
            "bottom-right"
          ],
          "type": "string"
        },
        "style": {
          "description": "How the widget looks, for the kinds with more than one way: tid (ticking, mini), flushes (count, stats, latest), status (both, status, vitals), music (now, history, stats, mini), chat (corner, side, pop). Absent or unknown is the kind's first.",
          "knownValues": [
            "ticking",
            "mini",
            "count",
            "stats",
            "latest",
            "both",
            "status",
            "vitals",
            "now",
            "history",
            "corner",
            "side",
            "pop"
          ],
          "maxLength": 32,
          "type": "string"
        }
      },
      "required": [
        "kind",
        "slot",
        "scale"
      ],
      "type": "object"
    }
  },
  "description": "How you've set up Poe's stream overlay (atpota.to/overlay): which weather widgets show, where and how big, which side Poe sits on, and what it reacts to. One record per layout: \"self\" is the main one (atpota.to/overlay?streamer=<handle>), and any others are at their own record key, their id in the URL (&layout=<id>; lowercase letters, digits and dashes). The overlay reads it from your repo and follows changes live, so a stream's overlay changes as soon as you save.",
  "id": "to.atpota.poe.overlay",
  "lexicon": 1
}

Validate Record

Validate a record against to.atpota.poe.overlay

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:qntsxa2i4sb24noi45fx4np2
CID
bafyreiaeiiwlg5lbox2mwsjwogamtjlxztcteac53p3jzczse2snmnjv4y
Indexed At
2026-10-22 15:50 UTC
AT-URI
at://did:plc:qntsxa2i4sb24noi45fx4np2/com.atproto.lexicon.schema/to.atpota.poe.overlay

Version History (5 versions)

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • One of the full-screen screens of Poe's stream overlay (atpota.to/overlay?scene=<record key>): a countdown before a stream, a be-right-back screen, an end screen, or a frame for sharing a screen with a camera. A streame…

Lexicon Garden

@