Add a info.json schema

This commit is contained in:
Mm2PL 2023-02-06 23:21:17 +01:00
parent f080070453
commit 11f19ecc66
No known key found for this signature in database
GPG key ID: 94AC9B80EFA15ED9
2 changed files with 62 additions and 0 deletions

View file

@ -0,0 +1,61 @@
{
"$schema": "http://json-schema.org/schema",
"$id": "https://raw.githubusercontent.com/Chatterino/chatterino2/master/docs/plugin-info.schema.json",
"title": "Plugin info",
"description": "Describes a Chatterino2 plugin (draft)",
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Plugin name shown to the user."
},
"description": {
"type": "string",
"description": "Plugin description shown to the user."
},
"authors": {
"type": "string",
"description": "A string describing authors of the Plugin. This could be a list of names, an organisation or something else, as long as it's clear who made the Plugin."
},
"homepage": {
"type": "string",
"description": "Optional URL to your Plugin's homepage. This could be your GitHub repo for example."
},
"tags": {
"description": "Something that could in the future be used to find your plugin.",
"type": "array",
"items": {
"type": "string",
"examples": [
"moderation",
"utility",
"commands"
]
},
"uniqueItems": true
},
"version": {
"type": "string",
"description": "Semver version string, for more info see https://semver.org.",
"examples": [
"0.0.1",
"1.0.0-rc.1"
]
},
"license": {
"type": "string",
"description": "A small description of your license.",
"examples": [
"MIT",
"GPL-2.0-or-later"
]
}
},
"required": [
"name",
"description",
"authors",
"version",
"license"
]
}

View file

@ -28,6 +28,7 @@ Example file:
```json ```json
{ {
"$schema": "https://raw.githubusercontent.com/Chatterino/chatterino2/master/docs/plugin-info.schema.json",
"name": "Test plugin", "name": "Test plugin",
"description": "This plugin is for testing stuff.", "description": "This plugin is for testing stuff.",
"authors": "Mm2PL", "authors": "Mm2PL",