···11-{
22- "lexicon": 1,
33- "id": "network.cosmik.card",
44- "description": "A single record type for all cards.",
55- "defs": {
66- "main": {
77- "type": "record",
88- "description": "A record representing a card with content.",
99- "key": "tid",
1010- "record": {
1111- "type": "object",
1212- "required": ["type", "content"],
1313- "properties": {
1414- "type": {
1515- "type": "string",
1616- "description": "The type of card",
1717- "knownValues": ["URL", "NOTE"]
1818- },
1919- "content": {
2020- "type": "union",
2121- "description": "The specific content of the card, determined by the card type.",
2222- "refs": ["#urlContent", "#noteContent"]
2323- },
2424- "url": {
2525- "type": "string",
2626- "format": "uri",
2727- "description": "Optional URL associated with the card. Required for URL cards, optional for NOTE cards."
2828- },
2929- "parentCard": {
3030- "type": "ref",
3131- "description": "Optional strong reference to a parent card (for NOTE cards).",
3232- "ref": "com.atproto.repo.strongRef"
3333- },
3434- "createdAt": {
3535- "type": "string",
3636- "format": "datetime",
3737- "description": "Timestamp when this card was created (usually set by PDS)."
3838- },
3939- "originalCard": {
4040- "type": "ref",
4141- "description": "Optional strong reference to the original card (for NOTE cards).",
4242- "ref": "com.atproto.repo.strongRef"
4343- },
4444- "provenance": {
4545- "type": "ref",
4646- "description": "Optional provenance information for this card.",
4747- "ref": "network.cosmik.defs#provenance"
4848- }
4949- }
5050- }
5151- },
5252- "urlContent": {
5353- "type": "object",
5454- "description": "Content structure for a URL card.",
5555- "required": ["url"],
5656- "properties": {
5757- "url": {
5858- "type": "string",
5959- "format": "uri",
6060- "description": "The URL being saved"
6161- },
6262- "metadata": {
6363- "type": "ref",
6464- "ref": "#urlMetadata",
6565- "description": "Optional metadata about the URL"
6666- }
6767- }
6868- },
6969- "noteContent": {
7070- "type": "object",
7171- "description": "Content structure for a note card.",
7272- "required": ["text"],
7373- "properties": {
7474- "text": {
7575- "type": "string",
7676- "description": "The note text content",
7777- "maxLength": 10000
7878- }
7979- }
8080- },
8181- "urlMetadata": {
8282- "type": "object",
8383- "description": "Metadata about a URL.",
8484- "properties": {
8585- "title": {
8686- "type": "string",
8787- "description": "Title of the page"
8888- },
8989- "description": {
9090- "type": "string",
9191- "description": "Description of the page"
9292- },
9393- "author": {
9494- "type": "string",
9595- "description": "Author of the content"
9696- },
9797- "publishedDate": {
9898- "type": "string",
9999- "format": "datetime",
100100- "description": "When the content was published"
101101- },
102102- "siteName": {
103103- "type": "string",
104104- "description": "Name of the site"
105105- },
106106- "imageUrl": {
107107- "type": "string",
108108- "format": "uri",
109109- "description": "URL of a representative image"
110110- },
111111- "type": {
112112- "type": "string",
113113- "description": "Type of content (e.g., 'video', 'article')"
114114- },
115115- "retrievedAt": {
116116- "type": "string",
117117- "format": "datetime",
118118- "description": "When the metadata was retrieved"
119119- },
120120- "doi": {
121121- "type": "string",
122122- "description": "Digital Object Identifier (DOI) for academic content"
123123- },
124124- "isbn": {
125125- "type": "string",
126126- "description": "International Standard Book Number (ISBN) for books"
127127- }
128128- }
129129- }
130130- }
131131-}
-51
lexicons/network/cosmik/collection.json
···11-{
22- "lexicon": 1,
33- "id": "network.cosmik.collection",
44- "description": "A single record type for collections of cards.",
55- "defs": {
66- "main": {
77- "type": "record",
88- "description": "A record representing a collection of cards.",
99- "key": "tid",
1010- "record": {
1111- "type": "object",
1212- "required": ["name", "accessType"],
1313- "properties": {
1414- "name": {
1515- "type": "string",
1616- "description": "Name of the collection",
1717- "maxLength": 100
1818- },
1919- "description": {
2020- "type": "string",
2121- "description": "Description of the collection",
2222- "maxLength": 500
2323- },
2424- "accessType": {
2525- "type": "string",
2626- "description": "Access control for the collection",
2727- "knownValues": ["OPEN", "CLOSED"]
2828- },
2929- "collaborators": {
3030- "type": "array",
3131- "description": "List of collaborator DIDs who can add cards to closed collections",
3232- "items": {
3333- "type": "string",
3434- "description": "DID of a collaborator"
3535- }
3636- },
3737- "createdAt": {
3838- "type": "string",
3939- "format": "datetime",
4040- "description": "Timestamp when this collection was created (usually set by PDS)."
4141- },
4242- "updatedAt": {
4343- "type": "string",
4444- "format": "datetime",
4545- "description": "Timestamp when this collection was last updated."
4646- }
4747- }
4848- }
4949- }
5050- }
5151-}
-52
lexicons/network/cosmik/collectionLink.json
···11-{
22- "lexicon": 1,
33- "id": "network.cosmik.collectionLink",
44- "description": "A record that links a card to a collection.",
55- "defs": {
66- "main": {
77- "type": "record",
88- "description": "A record representing the relationship between a card and a collection.",
99- "key": "tid",
1010- "record": {
1111- "type": "object",
1212- "required": ["collection", "card", "addedBy", "addedAt"],
1313- "properties": {
1414- "collection": {
1515- "type": "ref",
1616- "description": "Strong reference to the collection record.",
1717- "ref": "com.atproto.repo.strongRef"
1818- },
1919- "card": {
2020- "type": "ref",
2121- "description": "Strong reference to the card record in the users library.",
2222- "ref": "com.atproto.repo.strongRef"
2323- },
2424- "originalCard": {
2525- "type": "ref",
2626- "description": "Strong reference to the original card record (may be in another library).",
2727- "ref": "com.atproto.repo.strongRef"
2828- },
2929- "addedBy": {
3030- "type": "string",
3131- "description": "DID of the user who added the card to the collection"
3232- },
3333- "addedAt": {
3434- "type": "string",
3535- "format": "datetime",
3636- "description": "Timestamp when the card was added to the collection."
3737- },
3838- "createdAt": {
3939- "type": "string",
4040- "format": "datetime",
4141- "description": "Timestamp when this link record was created (usually set by PDS)."
4242- },
4343- "provenance": {
4444- "type": "ref",
4545- "description": "Optional provenance information for this link.",
4646- "ref": "network.cosmik.defs#provenance"
4747- }
4848- }
4949- }
5050- }
5151- }
5252-}
-18
lexicons/network/cosmik/defs.json
···11-{
22- "lexicon": 1,
33- "id": "network.cosmik.defs",
44- "description": "Common definitions for annotation types and references",
55- "defs": {
66- "provenance": {
77- "type": "object",
88- "description": "Represents the provenance or source of a record.",
99- "properties": {
1010- "via": {
1111- "type": "ref",
1212- "description": "Strong reference to the card that led to this record.",
1313- "ref": "com.atproto.repo.strongRef"
1414- }
1515- }
1616- }
1717- }
1818-}