family.pardy.familytime.goal

pardy.at

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A star chart goal: earn this many stars, get the reward. Stars, claims and rewards point at the id. Tied to an event, it shows before it on the days it happens; otherwise in its own window. Board configuration: board space (parents only); each parent saves their own copy with rkey = id, and the newest updatedAt wins (a deleted copy removes it).",
      "key": "any",
      "record": {
        "properties": {
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "deleted": {
            "description": "Removed, when this is the newest copy.",
            "type": "boolean"
          },
          "emoji": {
            "maxLength": 32,
            "type": "string"
          },
          "event": {
            "description": "A board event's URI, or an imported calendar series (feed URI#uid): when to show the goal, not how many stars it takes.",
            "maxLength": 2000,
            "type": "string"
          },
          "id": {
            "description": "Stable across edits and parents; the record key.",
            "maxLength": 64,
            "type": "string"
          },
          "reward": {
            "properties": {
              "emoji": {
                "maxLength": 32,
                "type": "string"
              },
              "title": {
                "maxLength": 100,
                "type": "string"
              }
            },
            "required": [
              "title",
              "emoji"
            ],
            "type": "object"
          },
          "show": {
            "description": "When to show it, if not tied to an event.",
            "properties": {
              "from": {
                "maxLength": 5,
                "type": "string"
              },
              "until": {
                "maxLength": 5,
                "type": "string"
              }
            },
            "required": [
              "from",
              "until"
            ],
            "type": "object"
          },
          "stars": {
            "description": "Stars to earn the reward.",
            "maximum": 30,
            "minimum": 1,
            "type": "integer"
          },
          "title": {
            "maxLength": 100,
            "type": "string"
          },
          "updatedAt": {
            "description": "Last write wins across parents.",
            "format": "datetime",
            "type": "string"
          },
          "who": {
            "description": "Kids it's for; empty means every kid.",
            "items": {
              "format": "did",
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "createdAt",
          "id",
          "updatedAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "family.pardy.familytime.goal",
  "lexicon": 1
}

Validate Record

Validate a record against family.pardy.familytime.goal

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:dp7v5b5kejmmzzpwmqyf5wj6
CID
bafyreifgvavmzmsvqaakcqtei3aq4xoxkgruvapat2rwbmwwj7e2n74u5q
Indexed At
2026-10-28 12:01 UTC
AT-URI
at://did:plc:dp7v5b5kejmmzzpwmqyf5wj6/com.atproto.lexicon.schema/family.pardy.familytime.goal

Similar Lexicons

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

  • family.pardy.familytime.starClaim recordnot from the namespace authority

    A star claimed for a goal on a day: by a kid ("I did it!") or given by a parent (with for). It counts once a parent's decision approves it.

  • family.pardy.familytime.rewardGiven recordnot from the namespace authority

    A goal's reward was handed over (to one kid, or with no for, to everyone): the stars start again. Approvals space (parents only).

  • family.pardy.familytime.activity recordnot from the namespace authority

    A free-time idea kids can pick, in the family space. Shows only once a parent approves it in the approvals space. Board configuration: board space (parents only); each parent saves their own copy with rkey = id, and the…

  • family.pardy.familytime.feed recordnot from the namespace authority

    A calendar feed (ICS) shown on the board, e.g. a team's shared calendar. Its events can't be edited here; parents add extras (eventExtra). In the board space, since the address is often private. Board configuration: boa…

  • family.pardy.familytime.event recordnot from the namespace authority

    Something on the schedule, in the family space. Shows only once a parent approves this exact version in the approvals space (the app approves a parent's own events as they add them). Board configuration: board space (pa…

Lexicon Garden

@