de.libranoir.buch

Want-to-read or finished entry with optional rating and review. LibraNoir uses its internal book number as record key; any key is allowed.

Repository @libranoir.de did:plc:ynof7d6bm7yhdw5nudasfdop namespace authority
Details · record, key any
Kindrecord
Record keyany
Authoritylibranoir.de
Commit rev3n22gqfwo4w2o
Indexed
cid bafyreieb5eomjctwlhzn7vdib2z43wtrhs252b7iiky5raafnhitpjymry

Checks

Valid
  • large-string defs.main.record.properties.reviewmaxLength is over 20 KB. Use a blob for content that large.
  • unlimited-string defs.main.record.properties.statusNo maxLength, maxGraphemes or format limits this string.
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "identifiers": {
      "description": "Book identifiers, same structure as in buzz.bookhive.book.",
      "properties": {
        "isbn13": {
          "description": "ISBN-13 without hyphens, preferably of the first edition.",
          "maxLength": 13,
          "minLength": 13,
          "type": "string"
        }
      },
      "type": "object"
    },
    "main": {
      "description": "Want-to-read or finished entry with optional rating and review. LibraNoir uses its internal book number as record key; any key is allowed.",
      "key": "any",
      "record": {
        "properties": {
          "authors": {
            "description": "Author(s) as plain text.",
            "maxGraphemes": 200,
            "maxLength": 2000,
            "type": "string"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "identifiers": {
            "ref": "#identifiers",
            "type": "ref"
          },
          "review": {
            "description": "Optional short review.",
            "maxGraphemes": 3000,
            "maxLength": 30000,
            "type": "string"
          },
          "stars": {
            "description": "Rating from 1 to 10 (shown as 0.5 to 5 stars), same scale as BookHive.",
            "maximum": 10,
            "minimum": 1,
            "type": "integer"
          },
          "status": {
            "description": "Reading status.",
            "knownValues": [
              "wantToRead",
              "finished"
            ],
            "type": "string"
          },
          "title": {
            "description": "Book title as shown on LibraNoir (usually German).",
            "maxGraphemes": 300,
            "maxLength": 3000,
            "type": "string"
          },
          "updatedAt": {
            "format": "datetime",
            "type": "string"
          },
          "url": {
            "description": "Link to the book page, e.g. https://libranoir.de/buch/<slug>.",
            "format": "uri",
            "type": "string"
          }
        },
        "required": [
          "title",
          "authors",
          "status",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "description": "A reader's entry for one book on LibraNoir (libranoir.de), the archive of the Spiegel bestseller list (fiction) since 1961. One record per person and book. Field names and meaning follow buzz.bookhive.book, without hiveId.",
  "id": "de.libranoir.buch",
  "lexicon": 1
}