You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
117 lines
4.6 KiB
JSON
117 lines
4.6 KiB
JSON
{
|
|
"definitions": {},
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"$id": "https://raw.githubusercontent.com/catppuccin/catppuccin/main/resources/ports.schema.json",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"patternProperties": {
|
|
"[A-Za-z0-9_\\-]": {
|
|
"$id": "#ports/port",
|
|
"title": "Port",
|
|
"type": "object",
|
|
"description": "The GitHub repository name of the port.",
|
|
"examples": ["nvim"],
|
|
"required": ["category", "name", "platform"],
|
|
"properties": {
|
|
"name": {
|
|
"$id": "#ports/port/name",
|
|
"title": "Name",
|
|
"description": "The Name of the software the port is for",
|
|
"type": "string",
|
|
"examples": ["Neovim"]
|
|
},
|
|
"category": {
|
|
"$id": "#ports/port/category",
|
|
"title": "Category",
|
|
"type": "string",
|
|
"enum": [
|
|
"browser",
|
|
"browser_extension",
|
|
"cli",
|
|
"code_editor",
|
|
"development",
|
|
"leisure",
|
|
"library",
|
|
"messaging",
|
|
"note_taking",
|
|
"productivity",
|
|
"search_engine",
|
|
"social",
|
|
"system",
|
|
"terminal"
|
|
],
|
|
"examples": ["editor"]
|
|
},
|
|
"platform": {
|
|
"$id": "#ports/port/platform",
|
|
"title": "Platform",
|
|
"description": "The platforms the port supports. Either an array of supported operating systems, \"agnostic\" (indicating support for all platforms), or \"userstyle\".",
|
|
"oneOf": [
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"$id": "#ports/port/platform/os",
|
|
"title": "Operating Systems",
|
|
"type": "string",
|
|
"enum": [
|
|
"android",
|
|
"ios",
|
|
"linux",
|
|
"macos",
|
|
"windows"
|
|
],
|
|
"examples": [
|
|
["linux", "macos", "windows"],
|
|
["android", "ios"]
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "string",
|
|
"enum": ["agnostic", "userstyle"]
|
|
}
|
|
]
|
|
},
|
|
"color": {
|
|
"$id": "#ports/port/color",
|
|
"title": "Color",
|
|
"description": "The fill color for the icon on the website",
|
|
"type": "string",
|
|
"enum": [
|
|
"rosewater",
|
|
"flamingo",
|
|
"pink",
|
|
"mauve",
|
|
"red",
|
|
"maroon",
|
|
"peach",
|
|
"yellow",
|
|
"green",
|
|
"teal",
|
|
"sky",
|
|
"sapphire",
|
|
"blue",
|
|
"lavender",
|
|
"text"
|
|
],
|
|
"examples": ["pink"]
|
|
},
|
|
"icon": {
|
|
"$id": "#ports/port/icon",
|
|
"title": "Icon",
|
|
"description": "The icon to use on the website. This should be the same name as the SVG file on https://simpleicons.org/. If a `.svg` suffix is present, it's taken from the local website repository resources.",
|
|
"type": "string",
|
|
"examples": ["neovim", "neovim.svg"]
|
|
},
|
|
"userstyle": {
|
|
"$id": "#ports/port/userstyle",
|
|
"title": "Userstyle",
|
|
"description": "Whether the port is a userstyle",
|
|
"type": "boolean",
|
|
"examples": [true]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|