dev.mccue.jvm.module

mccue.dev

{
  "id": "dev.mccue.jvm.module",
  "defs": {
    "main": {
      "key": "any",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "variants",
          "createdAt"
        ],
        "properties": {
          "indexMe": {
            "type": "boolean",
            "default": false
          },
          "variants": {
            "type": "array",
            "items": {
              "ref": "dev.mccue.jvm.module#variant",
              "type": "ref"
            },
            "minLength": 1,
            "description": "Variants of the same module at the same 'version'"
          },
          "createdAt": {
            "type": "string",
            "format": "datetime"
          }
        }
      },
      "description": "A JVM Module published for wider consumption."
    },
    "uses": {
      "type": "object",
      "required": [
        "service"
      ],
      "properties": {
        "service": {
          "type": "string",
          "minLength": 3
        }
      }
    },
    "hashes": {
      "type": "object",
      "required": [
        "module",
        "algorithm",
        "hash"
      ],
      "properties": {
        "hash": {
          "type": "string",
          "minLength": 1
        },
        "module": {
          "type": "string",
          "minLength": 1
        },
        "algorithm": {
          "type": "string",
          "minLength": 1
        }
      }
    },
    "exports": {
      "type": "object",
      "required": [
        "package"
      ],
      "properties": {
        "to": {
          "type": "string",
          "minLength": 1
        },
        "package": {
          "type": "string",
          "minLength": 1
        },
        "mandated": {
          "type": "boolean",
          "default": false
        },
        "synthetic": {
          "type": "boolean",
          "default": false
        }
      }
    },
    "variant": {
      "type": "object",
      "required": [
        "artifact"
      ],
      "properties": {
        "license": {
          "type": "string",
          "description": "SPDX License String"
        },
        "artifact": {
          "type": "blob",
          "accept": [
            "application/zip",
            "application/java-archive"
          ],
          "maxSize": 10000000
        },
        "copiedFrom": {
          "ref": "com.atproto.repo.strongRef",
          "type": "ref",
          "description": "A reference to where this module was copied from."
        },
        "moduleInfo": {
          "ref": "dev.mccue.jvm.module#moduleInfo",
          "type": "ref"
        },
        "billOfMaterials": {
          "type": "string",
          "description": "SBOM in CycloneDX format"
        },
        "cpuArchitecture": {
          "type": "string"
        },
        "operatingSystem": {
          "type": "string"
        }
      }
    },
    "packages": {
      "type": "object",
      "required": [
        "package"
      ],
      "properties": {
        "package": {
          "type": "string",
          "minLength": 1
        }
      }
    },
    "provides": {
      "type": "object",
      "required": [
        "service",
        "with"
      ],
      "properties": {
        "with": {
          "type": "string",
          "minLength": 3
        },
        "service": {
          "type": "string",
          "minLength": 3
        }
      }
    },
    "requires": {
      "type": "object",
      "required": [
        "module"
      ],
      "properties": {
        "module": {
          "type": "string",
          "minLength": 1
        },
        "static": {
          "type": "boolean",
          "default": false
        },
        "version": {
          "type": "string",
          "minLength": 1
        },
        "mandated": {
          "type": "boolean",
          "default": false
        },
        "synthetic": {
          "type": "boolean",
          "default": false
        },
        "transitive": {
          "type": "boolean",
          "default": false
        }
      }
    },
    "moduleInfo": {
      "type": "object",
      "required": [
        "name"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1
        },
        "uses": {
          "type": "array",
          "items": {
            "ref": "dev.mccue.jvm.module#uses",
            "type": "ref"
          }
        },
        "hashes": {
          "type": "array",
          "items": {
            "ref": "dev.mccue.jvm.module#hashes",
            "type": "ref"
          }
        },
        "exports": {
          "type": "array",
          "items": {
            "ref": "dev.mccue.jvm.module#exports",
            "type": "ref"
          }
        },
        "version": {
          "type": "string",
          "minLength": 1
        },
        "mandated": {
          "type": "boolean",
          "default": false
        },
        "packages": {
          "type": "array",
          "items": {
            "ref": "dev.mccue.jvm.module#requires",
            "type": "ref"
          }
        },
        "provides": {
          "type": "array",
          "items": {
            "ref": "dev.mccue.jvm.module#provides",
            "type": "ref"
          }
        },
        "requires": {
          "type": "array",
          "items": {
            "ref": "dev.mccue.jvm.module#requires",
            "type": "ref"
          }
        },
        "synthetic": {
          "type": "boolean",
          "default": false
        },
        "targetPlatform": {
          "type": "string",
          "minLength": 1
        }
      }
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}

Validate Record

Validate a record against dev.mccue.jvm.module

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:dt7fth2hmap6wya7uyyl2g3v
CID
bafyreihpthq3cvhxhbitnjgt2i4mw6oqmxjvcdx7hvgmkrbzhmpossk2ym
Indexed At
2026-05-30 16:49 UTC
AT-URI
at://did:plc:dt7fth2hmap6wya7uyyl2g3v/com.atproto.lexicon.schema/dev.mccue.jvm.module

Version History (11 versions)

Lexicon Garden

@