app.fitsky.workoutPlan
Schema Diff
+10 -0
1
1
{
2
2
"id": "app.fitsky.workoutPlan",
3
3
"defs": {
4
4
"main": {
5
5
"key": "tid",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"name",
11
11
"type",
12
12
"exercises",
13
13
"createdAt"
14
14
],
15
15
"properties": {
16
16
"name": {
17
17
"type": "string",
18
18
"maxLength": 256
19
19
},
20
20
"type": {
21
21
"type": "string",
22
22
"maxLength": 64,
23
23
"knownValues": [
24
24
"weightlifting",
25
25
"bodyweight",
26
26
"yoga",
27
27
"hiit"
28
28
]
29
29
},
30
+
"ogImage": {
31
+
"type": "blob",
32
+
"accept": [
33
+
"image/png",
34
+
"image/jpeg",
35
+
"image/webp"
36
+
],
37
+
"maxSize": 1000000,
38
+
"description": "Open Graph preview image for social sharing"
39
+
},
30
40
"createdAt": {
31
41
"type": "string",
32
42
"format": "datetime"
33
43
},
34
44
"exercises": {
35
45
"type": "array",
36
46
"items": {
37
47
"ref": "#planExercise",
38
48
"type": "ref"
39
49
}
40
50
}
41
51
}
42
52
},
43
53
"description": "A reusable workout plan template"
44
54
},
45
55
"planExercise": {
46
56
"type": "object",
47
57
"required": [
48
58
"name",
49
59
"targetSets",
50
60
"targetReps"
51
61
],
52
62
"properties": {
53
63
"name": {
54
64
"type": "string",
55
65
"maxLength": 128
56
66
},
57
67
"notes": {
58
68
"type": "string",
59
69
"maxLength": 512
60
70
},
61
71
"targetReps": {
62
72
"type": "integer",
63
73
"minimum": 1
64
74
},
65
75
"targetSets": {
66
76
"type": "integer",
67
77
"minimum": 1
68
78
}
69
79
}
70
80
}
71
81
},
72
82
"$type": "com.atproto.lexicon.schema",
73
83
"lexicon": 1
74
84
}