This document provides detailed information about each field in the Package Schema.
- Type: String
- Pattern:
^\d+\.\d+\.\d+$ - Description: Version of the schema used for this package metadata
- Example:
"1.2.0"
- Type: String
- Pattern:
^[a-z0-9_]+$ - Description: Package identifier. Must be lowercase alphanumeric with underscores.
- Example:
"my_package"or"image_classifier"
- Type: String
- Pattern:
^\d+(\.\d+)*$ - Description: Semantic version of the package
- Example:
"1.0.0"or"2.1.3"
- Type: String
- Description: Human-readable description of the package
- Example:
"A package for image classification using deep learning"
- Type: Array of strings
- Description: Keywords for package discovery
- Example:
["machine learning", "image", "classification"]
- Type: Object
- Description: Information about the package author
- Required Properties:
- name (String): The name of the author
- Optional Properties:
- email (String): The email address of the author (format: email)
- Example:
"author": { "name": "John Doe", "email": "john.doe@example.com" }
- Type: Object
- Description: License information for the package
- Required Properties:
- name (String): The name of the license
- Optional Properties:
- uri (String): URL to the license text (format: URI)
- Example:
"license": { "name": "MIT", "uri": "https://opensource.org/licenses/MIT" }
- Type: String
- Description: Primary entry point for the package
- Example:
"server.py"or"main.py"
- Type: Array of objects
- Description: List of additional contributors
- Each Contributor:
- Required Properties:
- name (String): The name of the contributor
- Optional Properties:
- email (String): The email address of the contributor (format: email)
- Required Properties:
- Example:
"contributors": [ { "name": "Jane Smith", "email": "jane.smith@example.com" }, { "name": "Bob Johnson" } ]
- Type: String
- Format: URI
- Description: URL to the source code repository
- Example:
"https://github.com/username/repository"
- Type: String
- Format: URI
- Description: URL to the package documentation
- Example:
"https://docs.example.com/my_package"
- Type: Object
- Description: Dependencies required by the package
- Properties:
- hatch (Array): Hatch package dependencies
- python (Array): Python package dependencies
- system (Array): System package dependencies
- docker (Array): Docker image dependencies
- Type: Array of objects
- Description: Hatch packages required by this package
- Each Dependency:
- name (String): Name of the Hatch package
- version_constraint (String): Version constraint (e.g., ">=1.0.0")
- Example:
"hatch": [ { "name": "base_package", "version_constraint": ">=1.0.0" } ]
- Type: Array of objects
- Description: Python packages required by this package
- Each Dependency:
- name (String): Name of the Python package
- version_constraint (String): Version constraint (e.g., ">=1.0.0")
- package_manager (String, default: "pip"): Package manager to use ("pip" or "conda")
- channel (String, optional): Conda channel to use when package_manager is "conda" (e.g., "colomoto", "conda-forge", "bioconda")
- Example:
"python": [ { "name": "numpy", "version_constraint": ">=1.20.0", "package_manager": "pip" }, { "name": "maboss", "version_constraint": ">=2.5.0", "package_manager": "conda", "channel": "colomoto" } ]
- Type: Array of objects
- Description: System packages required by this package
- Each Dependency:
- name (String): Name of the system package
- version_constraint (String): Version constraint
- package_manager (String, default: "apt"): Package manager to use
- Example:
"system": [ { "name": "libopencv-dev", "version_constraint": ">=4.0.0" } ]
- Type: Array of objects
- Description: Docker images required by this package
- Each Dependency:
- name (String): Name of the Docker image
- version_constraint (String): Version constraint
- registry (String, default: "dockerhub"): Registry to pull from
- Example:
"docker": [ { "name": "postgres", "version_constraint": ">=13.0.0" } ]
- Type: Object
- Description: Compatibility requirements
- Properties:
- hatchling (String): Version constraint for Hatchling
- python (String): Version constraint for Python
- Example:
"compatibility": { "hatchling": ">=0.1.0", "python": ">=3.8" }
- Type: Array of objects
- Description: Additional tools provided by the package
- Each Tool:
- name (String): Name of the tool
- description (String): Description of the tool
- Example:
"tools": [ { "name": "data_preprocessor", "description": "Preprocesses input data for the model" }, { "name": "model_evaluator", "description": "Evaluates model performance on test data" } ]
- Type: Object
- Description: Citation information for the package.
- Properties:
- origin (String): Citation for the original work. Free format.
- mcp (String): Citation for the MCP implementation. Free format.
- Example:
"citations": { "origin": "Doe, J. et al. (2023). Novel image classification approach. Journal of AI Research, 45(2), 123-145.", "mcp": "Smith, J. (2023). MCP implementation of Doe's image classifier. https://doi.org/10.xxxx/xxxxx" }