# codes.tcm.star

> A star on a tcm library announced on the AT Protocol: its author's DID and package, across versions. Its key is <author>:<package> (with any other character as ~), so a person stars a library once.

- Kind: record
- Record key: any
- Authority: tcm.codes
- Lexicon: 1
- Published by [tcm.codes](https://lexicon.garden/identity/did:plc:vh4czvu5aijkaqge5huayq53), the NSID's authority

## Links

- [Documentation](https://lexicon.garden/lexicon/did:plc:vh4czvu5aijkaqge5huayq53/codes.tcm.star)
- [Schema JSON](https://lexicon.garden/lexicon/did:plc:vh4czvu5aijkaqge5huayq53/codes.tcm.star/schema.json)
- [Analytics](https://lexicon.garden/lexicon/did:plc:vh4czvu5aijkaqge5huayq53/codes.tcm.star/analytics)

## Record (`codes.tcm.star`)

Type: record · key any

### Properties

- `createdAt` (string · datetime, required): When it was starred.
- `subject` (ref, required)
  - Reference: `#subject`

## #subject (`codes.tcm.star#subject`)

Type: object

The library: who announced it, and its package's name.

### Properties

- `author` (string · did, required): Who announced the library.
- `package` (string, required): The library's package name.
  - Constraints: minLength: 1, maxLength: 214

## Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A star on a tcm library announced on the AT Protocol: its author's DID and package, across versions. Its key is <author>:<package> (with any other character as ~), so a person stars a library once.",
      "key": "any",
      "record": {
        "properties": {
          "createdAt": {
            "description": "When it was starred.",
            "format": "datetime",
            "type": "string"
          },
          "subject": {
            "ref": "#subject",
            "type": "ref"
          }
        },
        "required": [
          "subject",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "subject": {
      "description": "The library: who announced it, and its package's name.",
      "properties": {
        "author": {
          "description": "Who announced the library.",
          "format": "did",
          "type": "string"
        },
        "package": {
          "description": "The library's package name.",
          "maxLength": 214,
          "minLength": 1,
          "type": "string"
        }
      },
      "required": [
        "author",
        "package"
      ],
      "type": "object"
    }
  },
  "description": "A star on a tcm library.",
  "id": "codes.tcm.star",
  "lexicon": 1
}
```
