{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://forgejo.zue.dev/zuedev/gitinfo/raw/branch/main/gitinfo.schema.json", "title": ".gitinfo", "description": "Schema for the .gitinfo file specification", "type": "object", "properties": { "$schema": { "type": "string", "format": "uri", "description": "Reference to the JSON Schema for validation and editor support." }, "root": { "type": "string", "format": "uri", "description": "The URL of the root repository. This is the main hosting location that acts as the source of truth for the codebase." }, "gitmail": { "type": "string", "format": "email", "description": "An email address associated with the repository for submitting git patches." }, "icon": { "type": "string", "description": "A public URL or data URI formatted image (PNG, SVG, etc.) representing an icon for the repository.", "pattern": "^(https?://|data:image/)" }, "description": { "type": "string", "description": "A brief description of the repository's purpose or contents." }, "tags": { "type": "array", "items": { "type": "string", "minLength": 1 }, "description": "A list of tags or keywords associated with the repository for easier categorization and searchability." }, "mirrors": { "type": "array", "items": { "type": "string", "format": "uri" }, "description": "A list of URLs representing mirror repositories." }, "maintainers": { "type": "array", "items": { "type": "array", "items": [ { "type": "string", "description": "Maintainer name" }, { "type": "string", "format": "email", "description": "Maintainer email" } ], "minItems": 2, "maxItems": 2 }, "description": "A list of maintainers or contributors to the repository, provided as a 2D array with names and email addresses in the format [[name, email], ...]." }, "license": { "type": "string", "description": "The license under which the repository is distributed. Use the short identifier from SPDX License List for consistency.", "examples": [ "MIT", "Apache-2.0", "GPL-2.0-only", "GPL-2.0-or-later", "GPL-3.0-only", "GPL-3.0-or-later", "LGPL-2.1-only", "LGPL-2.1-or-later", "LGPL-3.0-only", "LGPL-3.0-or-later", "BSD-2-Clause", "BSD-3-Clause", "ISC", "MPL-2.0", "AGPL-3.0-only", "AGPL-3.0-or-later", "Unlicense", "CC0-1.0", "CC-BY-4.0", "CC-BY-SA-4.0", "WTFPL", "Zlib", "BSL-1.0" ] }, "homepage": { "type": "string", "format": "uri", "description": "The URL of the project's homepage or documentation site, if separate from the repository." }, "funding": { "type": "array", "items": { "type": "string", "format": "uri" }, "description": "A list of URLs for sponsorship or funding platforms (e.g., GitHub Sponsors, Open Collective, Patreon)." }, "version": { "type": "string", "description": "The version of the .gitinfo schema being used. Can be a semver string or a git commit hash." }, "ci": { "type": "string", "format": "uri", "description": "The URL of the CI/CD platform or pipeline status page for the repository." }, "issues": { "type": "string", "format": "uri", "description": "The URL of the issue tracker, if different from the root repository." }, "chat": { "type": "string", "format": "uri", "description": "The URL of a community chat platform (e.g., Discord, Matrix, Slack, IRC)." }, "docs": { "type": "string", "format": "uri", "description": "The URL of the project's documentation site." } }, "additionalProperties": false }