social.colibri.actor.profile

colibri.social

Schema Diff

+0 -0

From

CID
bafyreigfshrxjmf...
Indexed At
2026-07-31 21:22 UTC
View this version

To

CID
bafyreigfshrxjmf...
Indexed At
2026-07-31 21:22 UTC
View this version

Compatibility Analysis

Backward Compatible

No changes detected.

1 1
{
2 2
  "id": "social.colibri.actor.profile",
3 3
  "defs": {
4 4
    "main": {
5 5
      "key": "literal:self",
6 6
      "type": "record",
7 7
      "record": {
8 8
        "type": "object",
9 9
        "required": [],
10 10
        "properties": {
11 11
          "$type": {
12 12
            "type": "string",
13 13
            "format": "nsid",
14 14
            "description": "The type of the record."
15 15
          },
16 16
          "theme": {
17 17
            "ref": "lex:social.colibri.actor.profile#theme",
18 18
            "type": "ref",
19 19
            "description": "Colibri-only profile theming. Always sourced from this record regardless of syncBluesky."
20 20
          },
21 21
          "avatar": {
22 22
            "type": "blob",
23 23
            "accept": [
24 24
              "image/jpeg",
25 25
              "image/png",
26 26
              "image/gif",
27 27
              "image/webp"
28 28
            ],
29 29
            "description": "The user's avatar image."
30 30
          },
31 31
          "banner": {
32 32
            "type": "blob",
33 33
            "accept": [
34 34
              "image/jpeg",
35 35
              "image/png",
36 36
              "image/gif",
37 37
              "image/webp"
38 38
            ],
39 39
            "description": "The user's profile banner image."
40 40
          },
41 41
          "description": {
42 42
            "type": "string",
43 43
            "maxLength": 2560,
44 44
            "description": "The user's profile description / bio.",
45 45
            "maxGraphemes": 256
46 46
          },
47 47
          "displayName": {
48 48
            "type": "string",
49 49
            "maxLength": 640,
50 50
            "description": "The user's display name.",
51 51
            "maxGraphemes": 64
52 52
          },
53 53
          "syncBluesky": {
54 54
            "type": "boolean",
55 55
            "default": false,
56 56
            "description": "When true, the AppView serves displayName/avatar/banner/description from the user's app.bsky.actor.profile record (Bluesky stays the live source); these mirrored fields may be omitted here."
57 57
          },
58 58
          "preferredBadge": {
59 59
            "type": "string",
60 60
            "maxLength": 64,
61 61
            "description": "Label value of the badge the user chose to display as their primary badge. Absent means automatic (highest-priority badge)."
62 62
          },
63 63
          "presenceService": {
64 64
            "type": "string",
65 65
            "format": "did",
66 66
            "description": "DID of the AppView authorized to emit off-protocol presence (status, typing, voice) for this user via Humming. A receiving AppView MUST drop any Hum about this user whose authenticated origin does not equal this value. Absent means the user has not opted into cross-instance presence."
67 67
          }
68 68
        }
69 69
      },
70 70
      "description": "A Colibri-specific user profile. Singleton record on the user's own repo, kept separate from app.bsky.actor.profile so Colibri never needs write access to the Bluesky record."
71 71
    },
72 72
    "theme": {
73 73
      "type": "object",
74 74
      "required": [],
75 75
      "properties": {
76 76
        "gradient": {
77 77
          "ref": "lex:social.colibri.actor.profile#themeGradient",
78 78
          "type": "ref",
79 79
          "description": "Two-color gradient profile theme."
80 80
        },
81 81
        "accentColor": {
82 82
          "type": "string",
83 83
          "maxLength": 7,
84 84
          "description": "Accent color as a #rrggbb hex string."
85 85
        },
86 86
        "bannerColor": {
87 87
          "type": "string",
88 88
          "maxLength": 7,
89 89
          "description": "Solid fallback banner color as #rrggbb, used when no banner image is set."
90 90
        }
91 91
      },
92 92
      "description": "Colibri-only profile theming."
93 93
    },
94 94
    "themeGradient": {
95 95
      "type": "object",
96 96
      "required": [],
97 97
      "properties": {
98 98
        "primary": {
99 99
          "type": "string",
100 100
          "maxLength": 7,
101 101
          "description": "Primary gradient color as #rrggbb."
102 102
        },
103 103
        "secondary": {
104 104
          "type": "string",
105 105
          "maxLength": 7,
106 106
          "description": "Secondary gradient color as #rrggbb."
107 107
        }
108 108
      },
109 109
      "description": "Two-color gradient profile theme."
110 110
    }
111 111
  },
112 112
  "$type": "com.atproto.lexicon.schema",
113 113
  "lexicon": 1,
114 114
  "revision": 2
115 115
}

Compare Other Versions

Lexicon Garden

@