app.atmobb.forum.profile
Schema Diff
+5 -1
Compatibility Analysis
Backward Compatible
Backward compatible. 2 non-breaking changes.
Non-Breaking Changes (2)
- AddedVertex AddedVertex { vertex_id: "app.atmobb.forum.profile:body.hideDefaultStamps" }
- AddedEdge AddedEdge { src: "app.atmobb.forum.profile:body", tgt: "app.atmobb.forum.profile:body.hideDefaultStamps", kind: "prop", name: Some("hideDefaultStamps") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "app.atmobb.forum.profile:body.hideDefaultStamps" }
Additional Notes
- Non-breaking: AddedEdge { src: "app.atmobb.forum.profile:body", tgt: "app.atmobb.forum.profile:body.hideDefaultStamps", kind: "prop", name: Some("hideDefaultStamps") }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"font": {
5
5
"properties": {
6
6
"family": {
7
7
"maxGraphemes": 64,
8
8
"maxLength": 640,
9
9
"type": "string"
10
10
},
11
11
"source": {
12
12
"accept": [
13
13
"font/woff",
14
14
"font/woff2"
15
15
],
16
16
"maxSize": 2000000,
17
17
"type": "blob"
18
18
},
19
19
"style": {
20
20
"knownValues": [
21
21
"normal",
22
22
"italic"
23
23
],
24
24
"maxLength": 16,
25
25
"type": "string"
26
26
},
27
27
"weight": {
28
28
"maximum": 900,
29
29
"minimum": 100,
30
30
"type": "integer"
31
31
}
32
32
},
33
33
"required": [
34
34
"family",
35
35
"weight",
36
36
"style",
37
37
"source"
38
38
],
39
39
"type": "object"
40
40
},
41
41
"homepage": {
42
42
"properties": {
43
43
"featuredThreads": {
44
44
"items": {
45
45
"format": "at-uri",
46
46
"type": "string"
47
47
},
48
48
"maxLength": 3,
49
49
"type": "array"
50
50
},
51
51
"layout": {
52
52
"knownValues": [
53
53
"boards",
54
54
"latest",
55
55
"categories-latest"
56
56
],
57
57
"maxLength": 32,
58
58
"type": "string"
59
59
},
60
60
"sidebar": {
61
61
"type": "boolean"
62
62
},
63
63
"welcome": {
64
64
"knownValues": [
65
65
"classic",
66
66
"compact",
67
67
"hidden"
68
68
],
69
69
"maxLength": 32,
70
70
"type": "string"
71
71
}
72
72
},
73
73
"type": "object"
74
74
},
75
75
"main": {
76
76
"description": "A forum's identity and configuration. Lives in the forum account's repo; the forum's DID is the forum's identity.",
77
77
"key": "literal:self",
78
78
"record": {
79
79
"properties": {
80
80
"avatar": {
81
81
"accept": [
82
82
"image/png",
83
83
"image/jpeg",
84
84
"image/webp"
85
85
],
86
86
"maxSize": 1000000,
87
87
"type": "blob"
88
88
},
89
89
"banner": {
90
90
"accept": [
91
91
"image/png",
92
92
"image/jpeg",
93
93
"image/webp"
94
94
],
95
95
"maxSize": 2000000,
96
96
"type": "blob"
97
97
},
98
98
"createdAt": {
99
99
"format": "datetime",
100
100
"type": "string"
101
101
},
102
102
"customCss": {
103
103
"description": "Forum-owned CSS applied to public pages. Admin pages deliberately ignore it so a broken stylesheet can always be repaired.",
104
104
"maxLength": 100000,
105
105
"type": "string"
106
106
},
107
107
"customFonts": {
108
108
"description": "Forum-owned webfont faces available to customCss.",
109
109
"items": {
110
110
"ref": "#font",
111
111
"type": "ref"
112
112
},
113
113
"maxLength": 12,
114
114
"type": "array"
115
115
},
116
116
"description": {
117
117
"maxGraphemes": 1000,
118
118
"maxLength": 10000,
119
119
"type": "string"
120
120
},
121
121
"favicon": {
122
122
"accept": [
123
123
"image/png",
124
124
"image/jpeg",
125
125
"image/webp"
126
126
],
127
127
"description": "Forum-owned browser icon.",
128
128
"maxSize": 1000000,
129
129
"type": "blob"
130
130
},
131
131
"hideCredit": {
132
132
"description": "Hide the 'powered by atmobb' badge in the page footer. Absent means shown.",
133
133
"type": "boolean"
134
134
},
135
+
"hideDefaultStamps": {
136
+
"description": "Hide the board and arrival default stamps on member rails. The 'here since' line always shows. Absent means shown.",
137
+
"type": "boolean"
138
+
},
135
139
"homepage": {
136
140
"description": "Optional forum homepage presentation. Absent values retain the classic board index.",
137
141
"ref": "#homepage",
138
142
"type": "ref"
139
143
},
140
144
"intro": {
141
145
"description": "Rich welcome shown in the home page hero under the description. Absent means the hero shows the name and description only.",
142
146
"items": {
143
147
"refs": [
144
148
"app.atmobb.richtext.block#text",
145
149
"app.atmobb.richtext.block#quote",
146
150
"app.atmobb.richtext.block#code"
147
151
],
148
152
"type": "union"
149
153
},
150
154
"maxLength": 50,
151
155
"type": "array"
152
156
},
153
157
"links": {
154
158
"items": {
155
159
"format": "uri",
156
160
"type": "string"
157
161
},
158
162
"maxLength": 20,
159
163
"type": "array"
160
164
},
161
165
"membership": {
162
166
"description": "How people join. Absent means open: declaring membership is joining.",
163
167
"ref": "#membership",
164
168
"type": "ref"
165
169
},
166
170
"name": {
167
171
"maxGraphemes": 100,
168
172
"maxLength": 1000,
169
173
"type": "string"
170
174
},
171
175
"ogImage": {
172
176
"accept": [
173
177
"image/png"
174
178
],
175
179
"description": "Forum-owned 1200 by 630 PNG used as the forum landing page's social preview image.",
176
180
"maxSize": 2000000,
177
181
"type": "blob"
178
182
},
179
183
"ogTheme": {
180
184
"description": "Visual preset used by the generated forum landing page social preview.",
181
185
"knownValues": [
182
186
"classic",
183
187
"midnight",
184
188
"ocean",
185
189
"forest",
186
190
"plum"
187
191
],
188
192
"maxLength": 32,
189
193
"type": "string"
190
194
},
191
195
"ranks": {
192
-
"description": "Post-count rank ladder, ordered ascending by minPosts. Ranks are computed by appviews from indexed post counts.",
196
+
"description": "Deprecated and no longer rendered: post-count ranks gave way to stamps (app.atmobb.forum.stamp). Kept so older records still validate.",
193
197
"items": {
194
198
"ref": "#rank",
195
199
"type": "ref"
196
200
},
197
201
"maxLength": 50,
198
202
"type": "array"
199
203
},
200
204
"rules": {
201
205
"items": {
202
206
"refs": [
203
207
"app.atmobb.richtext.block#text",
204
208
"app.atmobb.richtext.block#quote",
205
209
"app.atmobb.richtext.block#code"
206
210
],
207
211
"type": "union"
208
212
},
209
213
"maxLength": 50,
210
214
"type": "array"
211
215
},
212
216
"theme": {
213
217
"description": "Built-in color theme preset. Absent means the classic atmobb skin. Custom CSS loads after the preset and may override it.",
214
218
"knownValues": [
215
219
"classic",
216
220
"sky",
217
221
"bubblegum",
218
222
"midnight",
219
223
"forest"
220
224
],
221
225
"maxLength": 32,
222
226
"type": "string"
223
227
}
224
228
},
225
229
"required": [
226
230
"name"
227
231
],
228
232
"type": "object"
229
233
},
230
234
"type": "record"
231
235
},
232
236
"membership": {
233
237
"description": "Join policy for a forum. In the apply and invite modes only accounts the forum has accepted (an acceptMember moderation action) may post; reading stays public.",
234
238
"properties": {
235
239
"gatedSince": {
236
240
"description": "When the forum last entered a gated mode. Posts written while the forum was open are served regardless of membership.",
237
241
"format": "datetime",
238
242
"type": "string"
239
243
},
240
244
"inviteCap": {
241
245
"description": "Open invites an ordinary member may hold at once. 0 means only staff mint invites.",
242
246
"maximum": 100,
243
247
"minimum": 0,
244
248
"type": "integer"
245
249
},
246
250
"inviteDays": {
247
251
"description": "Days before an unredeemed invite expires.",
248
252
"maximum": 365,
249
253
"minimum": 1,
250
254
"type": "integer"
251
255
},
252
256
"mode": {
253
257
"knownValues": [
254
258
"open",
255
259
"apply",
256
260
"invite"
257
261
],
258
262
"maxLength": 32,
259
263
"type": "string"
260
264
},
261
265
"prompt": {
262
266
"description": "The one question shown on the application form in apply mode.",
263
267
"maxGraphemes": 300,
264
268
"maxLength": 3000,
265
269
"type": "string"
266
270
}
267
271
},
268
272
"type": "object"
269
273
},
270
274
"rank": {
271
275
"properties": {
272
276
"minPosts": {
273
277
"minimum": 0,
274
278
"type": "integer"
275
279
},
276
280
"title": {
277
281
"maxGraphemes": 64,
278
282
"maxLength": 640,
279
283
"type": "string"
280
284
}
281
285
},
282
286
"required": [
283
287
"title",
284
288
"minPosts"
285
289
],
286
290
"type": "object"
287
291
}
288
292
},
289
293
"id": "app.atmobb.forum.profile",
290
294
"lexicon": 1
291
295
}