page.cavu.group

cavu.page

Documentation

What a group read is reading. Written by the host into their own repo inside a page.cavu.groupread space, under the fixed skey 'self' — one per space, so the space ref alone identifies the group and there is no second record to keep in sync. Deliberately thin: the roster lives with whoever administers membership (the PDS's member list, or the managing app), and every member's own activity lives in that member's repo in the same space. This record carries only what the whole group shares — which book, what it's called, and when it runs.

main record

What a group read is reading. Written by the host into their own repo inside a page.cavu.groupread space, under the fixed skey 'self' — one per space, so the space ref alone identifies the group and there is no second record to keep in sync. Deliberately thin: the roster lives with whoever administers membership (the PDS's member list, or the managing app), and every member's own activity lives in that member's repo in the same space. This record carries only what the whole group shares — which book, what it's called, and when it runs.

Record Key literal:self Fixed literal value

Properties

createdAt string datetime Required

An RFC 3339 formatted timestamp.

description string Optional

No description available.

maxLength: 3000 bytesmaxGraphemes: 1500 graphemes
endsAt string datetime Optional

When the group intends to finish. Advisory: nothing enforces it, and a group that runs past it keeps working.

name string Required

What the group calls itself.

maxLength: 300 bytesmaxGraphemes: 150 graphemes
publication string at-uri Required

AT-URI of the book's site.standard.publication record. The book itself stays public — only the group's reading of it is private — so this resolves for anyone.

startsAt string datetime Optional

When the group intends to begin reading, when it has agreed on one.

View raw schema
{
  "key": "literal:self",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "publication",
      "name",
      "createdAt"
    ],
    "properties": {
      "name": {
        "type": "string",
        "maxLength": 300,
        "description": "What the group calls itself.",
        "maxGraphemes": 150
      },
      "endsAt": {
        "type": "string",
        "format": "datetime",
        "description": "When the group intends to finish. Advisory: nothing enforces it, and a group that runs past it keeps working."
      },
      "startsAt": {
        "type": "string",
        "format": "datetime",
        "description": "When the group intends to begin reading, when it has agreed on one."
      },
      "createdAt": {
        "type": "string",
        "format": "datetime"
      },
      "description": {
        "type": "string",
        "maxLength": 3000,
        "maxGraphemes": 1500
      },
      "publication": {
        "type": "string",
        "format": "at-uri",
        "description": "AT-URI of the book's site.standard.publication record. The book itself stays public — only the group's reading of it is private — so this resolves for anyone."
      }
    }
  },
  "description": "What a group read is reading. Written by the host into their own repo inside a page.cavu.groupread space, under the fixed skey 'self' — one per space, so the space ref alone identifies the group and there is no second record to keep in sync. Deliberately thin: the roster lives with whoever administers membership (the PDS's member list, or the managing app), and every member's own activity lives in that member's repo in the same space. This record carries only what the whole group shares — which book, what it's called, and when it runs."
}

Lexicon Garden

@