atproto blogging
at main 106 lines 3.1 kB view raw
1{ 2 "lexicon": 1, 3 "id": "com.deckbelcher.deck.list", 4 "defs": { 5 "card": { 6 "type": "object", 7 "description": "A card entry in a decklist.", 8 "required": [ 9 "scryfallId", 10 "quantity", 11 "section" 12 ], 13 "properties": { 14 "quantity": { 15 "type": "integer", 16 "description": "Number of copies in the deck.", 17 "minimum": 1 18 }, 19 "scryfallId": { 20 "type": "string", 21 "description": "Scryfall UUID for the specific printing." 22 }, 23 "section": { 24 "type": "string", 25 "description": "Which section of the deck this card belongs to. Extensible to support format-specific sections.", 26 "knownValues": [ 27 "mainboard", 28 "sideboard", 29 "maybeboard", 30 "commander" 31 ] 32 }, 33 "tags": { 34 "type": "array", 35 "description": "User annotations for this card in this deck (e.g., \"removal\", \"wincon\", \"ramp\").", 36 "items": { 37 "type": "string", 38 "description": "A tag annotation for a card.", 39 "maxLength": 640, 40 "maxGraphemes": 64 41 }, 42 "maxLength": 128 43 } 44 } 45 }, 46 "main": { 47 "type": "record", 48 "description": "A Magic: The Gathering decklist.", 49 "key": "tid", 50 "record": { 51 "type": "object", 52 "required": [ 53 "name", 54 "cards", 55 "createdAt" 56 ], 57 "properties": { 58 "cards": { 59 "type": "array", 60 "description": "Array of cards in the decklist.", 61 "items": { 62 "type": "ref", 63 "ref": "#card" 64 } 65 }, 66 "createdAt": { 67 "type": "string", 68 "description": "Timestamp when the decklist was created.", 69 "format": "datetime" 70 }, 71 "format": { 72 "type": "string", 73 "description": "Format of the deck (e.g., \"commander\", \"cube\", \"pauper\").", 74 "maxLength": 320, 75 "maxGraphemes": 32 76 }, 77 "name": { 78 "type": "string", 79 "description": "Name of the decklist.", 80 "maxLength": 1280, 81 "maxGraphemes": 128 82 }, 83 "primer": { 84 "type": "string", 85 "description": "Deck primer with strategy, combos, and card choices.", 86 "maxLength": 100000, 87 "maxGraphemes": 10000 88 }, 89 "primerFacets": { 90 "type": "array", 91 "description": "Annotations of text in the primer (mentions, URLs, hashtags, card references, etc).", 92 "items": { 93 "type": "ref", 94 "ref": "com.deckbelcher.richtext.facet" 95 } 96 }, 97 "updatedAt": { 98 "type": "string", 99 "description": "Timestamp when the decklist was last updated.", 100 "format": "datetime" 101 } 102 } 103 } 104 } 105 } 106}