@tomjs/create-app
Version:
create tomjs web app
111 lines (110 loc) • 3.71 kB
JSON
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://tomjs.tomgao.cc/schema/create-app.json",
"type": "object",
"title": "Create App JSON Schema",
"description": "Schema for the provided JSON configuration",
"properties": {
"list": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the template group"
},
"display": {
"type": "string",
"description": "Display name of the template group"
},
"variants": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the template variant"
},
"display": {
"type": "string",
"description": "Display name of the template variant"
},
"templates": {
"type": "array",
"items": {
"type": "string",
"enum": [
"base/electron",
"base/node",
"base/react",
"base/style",
"base/vue",
"base/vscode",
"react",
"vue"
]
},
"uniqueItems": true,
"description": "An array containing templates to select."
},
"examples": {
"type": "array",
"items": {
"type": "string",
"enum": ["vue", "react"]
},
"uniqueItems": true,
"description": "An array containing examples to select."
},
"packages": {
"type": "object",
"properties": {
"exclude": {
"type": "array",
"items": {
"type": "string"
},
"description": "Files or folders not included when used in example or package"
}
}
},
"types": {
"type": "array",
"items": {
"type": "string",
"enum": ["project", "example", "package"]
},
"uniqueItems": true,
"description": "Supported template types, default is all"
},
"workspaces": {
"type": "boolean",
"description": "Whether to use workspaces"
},
"devDependencies": {
"type": "integer",
"enum": [0, 1, 2],
"description": "Whether to use it for devDependencies in package.json.\n0: not used\n1: used\n2: prompt"
},
"test": {
"type": "boolean",
"description": "Whether to use test"
},
"git": {
"type": "integer",
"enum": [0, 1, 2],
"description": "Whether to select git repository.\n0: not used\n1: used\n2: prompt"
}
},
"required": ["name", "display"]
}
}
},
"required": ["name", "display"]
}
}
},
"required": ["list"]
}