-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathresource.schema.json
More file actions
83 lines (83 loc) · 2.35 KB
/
resource.schema.json
File metadata and controls
83 lines (83 loc) · 2.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://github.com/TheDeveloperDen/LanguageResources/schema.json",
"title": "Language Resources",
"description": "Set of resources that can be used for learning programming",
"type": "object",
"required": [
"name",
"description",
"resources"
],
"properties": {
"name": {
"description": "The name of the language",
"type": "string"
},
"description": {
"description": "A brief description of the language and its uses",
"type": "string",
"maxLength": 256
},
"emoji": {
"description": "A Unicode emoji glyph or Discord emoji ID to represent the resource, if applicable. The emoji must be part of the main DevDen server, which isn't great design but there's not really a better way of doing it.",
"type": "string"
},
"resources": {
"description": "List of resources that can be used for learning / practicing the language",
"type": "array",
"items": {
"$ref": "#/definitions/resource"
},
"minItems": 1,
"uniqueItems": true
}
},
"definitions": {
"resource": {
"type": "object",
"required": [
"name",
"url",
"pros",
"cons"
],
"properties": {
"name": {
"type": "string",
"description": "The official name of the resource"
},
"description": {
"type": "string",
"description": "A brief description of the resource",
"maxLength": 256
},
"url": {
"type": "string",
"description": "URL to the resource"
},
"price": {
"type": [
"string",
"number"
],
"description": "The price of the resource, if it has one. If the resource is free, omit this field."
},
"pros": {
"type": "array",
"description": "Array of pros for using the resource, e.g. 'explains difficult concepts with good analogies'",
"items": {
"type": "string"
}
},
"cons": {
"type": "array",
"description": "Array of cons for using the resource, e.g. 'only teaches the basics rather than more advanced concepts'",
"items": {
"type": "string"
}
}
}
}
}
}