{ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "https://raw.githubusercontent.com/OWASP/nest-schema/main/project.json", "additionalProperties": false, "description": "OWASP project schema", "properties": { "audience": { "description": "The intended audience for the project.", "items": { "enum": [ "breaker", "builder", "defender" ], "enumDescriptions": [ "Security testers and ethical hackers.", "Developers and engineers.", "Security professionals and defenders." ], "type": "string" }, "minItems": 1, "type": "array", "uniqueItems": true }, "blog": { "description": "Project's blog.", "format": "uri", "type": "string" }, "community": { "description": "A list of community platforms associated with the project.", "items": { "$ref": "common.json#/definitions/community" }, "minItems": 1, "type": "array", "uniqueItems": true }, "demo": { "description": "Optional URLs to the project demo.", "items": { "format": "uri", "type": "string" }, "minItems": 1, "type": "array", "uniqueItems": true }, "documentation": { "description": "Optional URLs to project documentation.", "items": { "format": "uri", "type": "string" }, "minItems": 1, "optional": true, "type": "array", "uniqueItems": true }, "downloads": { "description": "Optional list of download URLs.", "items": { "format": "uri", "type": "string" }, "minItems": 1, "optional": true, "type": "array", "uniqueItems": true }, "events": { "description": "Events related to the project.", "items": { "$ref": "common.json#/definitions/event" }, "minItems": 1, "type": "array", "uniqueItems": true }, "leaders": { "description": "Leaders of the project.", "items": { "$ref": "common.json#/definitions/person" }, "maxItems": 5, "minItems": 1, "type": "array", "uniqueItems": true }, "level": { "default": 2, "description": "The numeric level of the project.", "enum": [ 2, 3, 3.5, 4 ], "enumDescriptions": [ "Incubator", "Lab", "Production", "Flagship" ], "title": "Project level.", "type": "number" }, "license": { "description": "The licenses of the project.", "type": "array", "items": { "type": "string", "enum": [ "AGPL-3.0", "Apache License 2.0", "Apache-2.0", "BSD-2-Clause", "BSD-3-Clause", "CC-BY-4.0", "CC-BY-NC-ND-4.0", "CC-BY-SA-4.0", "CC0-1.0", "EUPL-1.2", "GPL-2.0", "GPL-3.0", "LGPL-2.1", "LGPL-3.0", "MIT", "MPL-2.0", "OTHER" ] }, "uniqueItems": true, "minItems": 1 }, "logo": { "description": "Logo information for the project.", "items": { "$ref": "common.json#/definitions/logo" }, "minItems": 1, "type": "array", "uniqueItems": true }, "mailing_list": { "description": "The optional mailing list associated with the project.", "items": { "$ref": "common.json#/definitions/mailing_list" }, "minItems": 1, "type": "array", "uniqueItems": true }, "name": { "description": "The unique name of the project.", "minLength": 8, "type": "string" }, "pitch": { "description": "The project pitch.", "minLength": 10, "type": "string" }, "repositories": { "description": "Repositories associated with the project.", "items": { "$ref": "common.json#/definitions/repository" }, "minItems": 1, "type": "array", "uniqueItems": true }, "social_media": { "description": "Social media information for the project", "items": { "$ref": "common.json#/definitions/social_media" }, "minItems": 1, "type": "array", "uniqueItems": true }, "sponsors": { "description": "Sponsors of the project.", "items": { "$ref": "common.json#/definitions/sponsor" }, "minItems": 1, "type": "array", "uniqueItems": true }, "tags": { "description": "Tags for the project", "items": { "type": "string" }, "minItems": 3, "type": "array", "uniqueItems": true }, "type": { "description": "The type of the project: code, documentation or tool.", "enum": [ "code", "documentation", "tool" ], "enumDescriptions": [ "Code projects", "Documentation, standards, etc.", "Tools" ], "type": "string" }, "website": { "description": "The official website of the project.", "format": "uri", "minLength": 4, "type": "string" } }, "required": [ "audience", "leaders", "level", "name", "pitch", "type" ], "title": "OWASP Project", "type": "object" }