at.kotoba.prefs

Single overwritten record: per-user UI/drill preferences. The payload is an opaque JSON string so preferences expand without a lexicon change. rkey is literally `self`.

Repository @kotoba.at did:plc:o5f3cgna5sku4p6iitld6mxs namespace authority
Details · record, key literal:self
Kindrecord
Record keyliteral:self
Authoritykotoba.at
Indexed
cid bafyreig3nuflaeupr4aqas5xmmjtcqeb2c6oyxsw3ytugzitsb26vkyb44

Checks

Valid
  • unlimited-string defs.main.record.properties.settingsNo maxLength, maxGraphemes or format limits this string.
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Single overwritten record: per-user UI/drill preferences. The payload is an opaque JSON string so preferences expand without a lexicon change. rkey is literally `self`.",
      "key": "literal:self",
      "record": {
        "properties": {
          "settings": {
            "description": "Stringified JSON the app owns. Current preference keys: direction (genko|hanko|ma), glyphScale, candCount (3|4|6), showTimer, dark, skewToFailingMode, autoAdvanceSecs, furigana (below|ruby), fontVariety (off|on), writingMode (horizontal|vertical). It also carries two non-preference markers, which ride this record because it is the only schema-free singleton: onboardedSeeds (every seed pack id the account has ever onboarded) and newestAppVersion (forward-only high-water mark of the newest app build that loaded the account). Unknown keys are round-tripped rather than dropped, so an older build does not silently wipe a newer one's — within bounds: the capture is capped (key count, serialized length, per-key name screens) and anything over is dropped with a warning. The lexicon deliberately does not constrain the shape.",
            "type": "string"
          },
          "updatedAt": {
            "format": "datetime",
            "type": "string"
          }
        },
        "required": [
          "updatedAt",
          "settings"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "at.kotoba.prefs",
  "lexicon": 1
}