full diff

cards.sunshine.card

sunshine.cards +33 −6
From
bafyreieabrybworpu4qiwwnntkvkz3wm2fneefycn36wzlh4v4nlkellci indexed 2026-10-13 14:01 UTC View this version
To
bafyreiguorfmx3miyorq3pq6swwflfrrjdl7xge52vd44jcbdvcduffk5y indexed 2026-10-17 13:22 UTC View this version

Compatibility

breaking 4 breaking changes, 10 non-breaking changes.

Breaking changes (4)
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "cards.sunshine.card#strings", src: "cards.sunshine.card#strings", tgt: "cards.sunshine.card#strings.lang", kind: "prop", name: Some("lang") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "cards.sunshine.card#strings", src: "cards.sunshine.card#strings", tgt: "cards.sunshine.card#strings.title", kind: "prop", name: Some("title") }
  • RemovedVertex RemovedVertex { vertex_id: "cards.sunshine.card:body.collection" }
  • RemovedEdge RemovedEdge { src: "cards.sunshine.card:body", tgt: "cards.sunshine.card:body.collection", kind: "prop", name: Some("collection") }
Non-breaking changes (10)
  • AddedVertex AddedVertex { vertex_id: "cards.sunshine.card#strings" }
  • AddedVertex AddedVertex { vertex_id: "cards.sunshine.card#strings.lang" }
  • AddedVertex AddedVertex { vertex_id: "cards.sunshine.card#strings.title" }
  • AddedVertex AddedVertex { vertex_id: "cards.sunshine.card:body.set" }
  • AddedVertex AddedVertex { vertex_id: "cards.sunshine.card:body.strings" }
  • AddedVertex AddedVertex { vertex_id: "cards.sunshine.card:body.strings:items" }
  • AddedEdge AddedEdge { src: "cards.sunshine.card:body", tgt: "cards.sunshine.card:body.set", kind: "prop", name: Some("set") }
  • AddedEdge AddedEdge { src: "cards.sunshine.card:body", tgt: "cards.sunshine.card:body.strings", kind: "prop", name: Some("strings") }
  • AddedEdge AddedEdge { src: "cards.sunshine.card:body.strings", tgt: "cards.sunshine.card:body.strings:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "cards.sunshine.card:body.strings:items", tgt: "cards.sunshine.card#strings", kind: "ref", name: None }

Migration guidance

Removed

  • RemovedVertex { vertex_id: "cards.sunshine.card:body.collection" }

Added

  • AddedVertex { vertex_id: "cards.sunshine.card#strings" }
  • AddedVertex { vertex_id: "cards.sunshine.card#strings.lang" }
  • AddedVertex { vertex_id: "cards.sunshine.card#strings.title" }
  • AddedVertex { vertex_id: "cards.sunshine.card:body.set" }
  • AddedVertex { vertex_id: "cards.sunshine.card:body.strings" }
  • AddedVertex { vertex_id: "cards.sunshine.card:body.strings:items" }

Notes

  • Breaking: RequiredEdgeAdded { vertex_id: "cards.sunshine.card#strings", src: "cards.sunshine.card#strings", tgt: "cards.sunshine.card#strings.lang", kind: "prop", name: Some("lang") }
  • Breaking: RequiredEdgeAdded { vertex_id: "cards.sunshine.card#strings", src: "cards.sunshine.card#strings", tgt: "cards.sunshine.card#strings.title", kind: "prop", name: Some("title") }
  • Breaking: RemovedEdge { src: "cards.sunshine.card:body", tgt: "cards.sunshine.card:body.collection", kind: "prop", name: Some("collection") }
  • Non-breaking: AddedEdge { src: "cards.sunshine.card:body", tgt: "cards.sunshine.card:body.set", kind: "prop", name: Some("set") }
  • Non-breaking: AddedEdge { src: "cards.sunshine.card:body", tgt: "cards.sunshine.card:body.strings", kind: "prop", name: Some("strings") }
  • Non-breaking: AddedEdge { src: "cards.sunshine.card:body.strings", tgt: "cards.sunshine.card:body.strings:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "cards.sunshine.card:body.strings:items", tgt: "cards.sunshine.card#strings", kind: "ref", name: None }

Changes

11{
22 "$type": "com.atproto.lexicon.schema",
33 "defs": {
44 "main": {
55 "description": "A Sunshine Card's public details. The record key is the card's UID.",
66 "key": "any",
77 "record": {
88 "properties": {
99 "back": {
1010 "accept": [
1111 "image/*"
1212 ],
1313 "description": "The card's back artwork: portrait, in ID-1 bank card proportions (53.98 × 85.60 mm).",
1414 "maxSize": 1000000,
1515 "type": "blob"
1616 },
17 "collection": {
18 "description": "The name of the collection this card is part of, like 'Autumn Market 2026'. Collections belong to the card's creator: two creators' collections with the same name are different collections.",
19 "maxGraphemes": 64,
20 "maxLength": 640,
21 "type": "string"
22 },
2317 "colors": {
2418 "description": "The card's colours, most prominent first, each an sRGB hex colour like #f4b400.",
2519 "items": {
2620 "maxLength": 7,
2721 "minLength": 7,
2822 "type": "string"
2923 },
3024 "maxLength": 3,
3125 "type": "array"
3226 },
3327 "counter": {
3428 "description": "The tag's read counter at the last accepted tap.",
3529 "maximum": 16777215,
3630 "minimum": 0,
3731 "type": "integer"
3832 },
3933 "front": {
4034 "accept": [
4135 "image/*"
4236 ],
4337 "description": "The card's front artwork: portrait, in ID-1 bank card proportions (53.98 × 85.60 mm).",
4438 "maxSize": 1000000,
4539 "type": "blob"
4640 },
4741 "record": {
4842 "description": "An associated record, embedded whole.",
4943 "type": "unknown"
5044 },
45 "set": {
46 "description": "The cards.sunshine.set this card is primarily part of.",
47 "format": "at-uri",
48 "type": "string"
49 },
50 "strings": {
51 "description": "The card's title, one entry per language. The first entry is the default, shown when none matches the reader's language.",
52 "items": {
53 "ref": "#strings",
54 "type": "ref"
55 },
56 "minLength": 1,
57 "type": "array"
58 },
5159 "uid": {
5260 "description": "The tag's serial number, as 14 upper-case hex characters.",
5361 "maxLength": 14,
5462 "minLength": 14,
5563 "type": "string"
5664 },
5765 "url": {
5866 "description": "The URL anyone can visit when looking at this card collected in someone's account. It may be the same as the URL in the card's NFC (NDEF) record, or something different.",
5967 "format": "uri",
6068 "type": "string"
6169 }
6270 },
6371 "required": [
6472 "uid",
6573 "counter",
6674 "url"
6775 ],
6876 "type": "object"
6977 },
7078 "type": "record"
79 },
80 "strings": {
81 "description": "The card's strings in one language.",
82 "properties": {
83 "lang": {
84 "format": "language",
85 "type": "string"
86 },
87 "title": {
88 "maxGraphemes": 64,
89 "maxLength": 640,
90 "type": "string"
91 }
92 },
93 "required": [
94 "lang",
95 "title"
96 ],
97 "type": "object"
7198 }
7299 },
73100 "id": "cards.sunshine.card",
74101 "lexicon": 1
75102}

Compare other versions