mirror of
				https://github.com/mfulz/qmk_firmware.git
				synced 2025-11-04 07:12:33 +01:00 
			
		
		
		
	add missing schemas
This commit is contained in:
		
							parent
							
								
									0d3aca062e
								
							
						
					
					
						commit
						266a85eda0
					
				
							
								
								
									
										35
									
								
								data/schemas/api_keyboard.jsonschema
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								data/schemas/api_keyboard.jsonschema
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,35 @@
 | 
			
		||||
{
 | 
			
		||||
    "allOf": [
 | 
			
		||||
        { "$ref": "qmk.keyboard.v1" },
 | 
			
		||||
        {
 | 
			
		||||
            "$id": "qmk.api.keyboard.v1",
 | 
			
		||||
            "keymaps": {
 | 
			
		||||
                "type": "string"
 | 
			
		||||
            },
 | 
			
		||||
            "parse_errors": {
 | 
			
		||||
                "type": "array",
 | 
			
		||||
                "items": {
 | 
			
		||||
                    "type": "string"
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "parse_warnings": {
 | 
			
		||||
                "type": "array",
 | 
			
		||||
                "items": {
 | 
			
		||||
                    "type": "string"
 | 
			
		||||
                }
 | 
			
		||||
            },
 | 
			
		||||
            "processor_type": {
 | 
			
		||||
                "type": "string"
 | 
			
		||||
            },
 | 
			
		||||
            "protocol": {
 | 
			
		||||
                "type": "string"
 | 
			
		||||
            },
 | 
			
		||||
            "keyboard_folder": {
 | 
			
		||||
                "type": "string"
 | 
			
		||||
            },
 | 
			
		||||
            "platform": {
 | 
			
		||||
                "type": "string"
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    ]
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										1
									
								
								data/schemas/false.jsonschema
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								data/schemas/false.jsonschema
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
			
		||||
false
 | 
			
		||||
							
								
								
									
										232
									
								
								data/schemas/keyboard.jsonschema
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										232
									
								
								data/schemas/keyboard.jsonschema
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,232 @@
 | 
			
		||||
{
 | 
			
		||||
    "$schema": "http://json-schema.org/schema#",
 | 
			
		||||
    "$id": "qmk.keyboard.v1",
 | 
			
		||||
    "title": "Keyboard Information",
 | 
			
		||||
    "type": "object",
 | 
			
		||||
    "properties": {
 | 
			
		||||
        "keyboard_name": {
 | 
			
		||||
            "type": "string",
 | 
			
		||||
            "minLength": 2,
 | 
			
		||||
            "maxLength": 250
 | 
			
		||||
        },
 | 
			
		||||
        "maintainer": {
 | 
			
		||||
            "type": "string",
 | 
			
		||||
            "minLength": 2,
 | 
			
		||||
            "maxLength": 250
 | 
			
		||||
        },
 | 
			
		||||
        "manufacturer": {
 | 
			
		||||
            "type": "string",
 | 
			
		||||
            "minLength": 2,
 | 
			
		||||
            "maxLength": 250
 | 
			
		||||
        },
 | 
			
		||||
        "url": {
 | 
			
		||||
            "type": "string",
 | 
			
		||||
            "format": "uri"
 | 
			
		||||
        },
 | 
			
		||||
        "processor": {
 | 
			
		||||
            "type": "string",
 | 
			
		||||
            "enum": ["MK20DX128", "MK20DX256", "MKL26Z64", "STM32F042", "STM32F072", "STM32F103", "STM32F303", "STM32F401", "STM32F411", "at90usb1286", "at90usb646", "atmega16u2", "atmega328p", "atmega32a", "atmega32u2", "atmega32u4", "attiny85", "cortex-m4"]
 | 
			
		||||
        },
 | 
			
		||||
        "bootloader": {
 | 
			
		||||
            "type": "string",
 | 
			
		||||
            "enum": ["atmel-dfu", "bootloadHID", "caterina", "halfkay", "kiibohd", "lufa-dfu", "lufa-ms", "micronucleus", "qmk-dfu", "stm32-dfu", "stm32duino", "unknown", "USBasp"]
 | 
			
		||||
        },
 | 
			
		||||
        "diode_direction": {
 | 
			
		||||
            "type": "string",
 | 
			
		||||
            "enum": ["COL2ROW", "ROW2COL"]
 | 
			
		||||
        },
 | 
			
		||||
        "debounce": {
 | 
			
		||||
            "type": "number",
 | 
			
		||||
            "min": 0,
 | 
			
		||||
            "multipleOf": 1
 | 
			
		||||
        },
 | 
			
		||||
        "height": {
 | 
			
		||||
            "type": "number",
 | 
			
		||||
            "min": 0.25
 | 
			
		||||
        },
 | 
			
		||||
        "width": {
 | 
			
		||||
            "type": "number",
 | 
			
		||||
            "min": 0.25
 | 
			
		||||
        },
 | 
			
		||||
        "community_layouts": {
 | 
			
		||||
            "type": "array",
 | 
			
		||||
            "items": {
 | 
			
		||||
                "type": "string",
 | 
			
		||||
                "minLength": 2,
 | 
			
		||||
                "pattern": "^[0-9a-z_]*$"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "features": {
 | 
			
		||||
            "type": "object",
 | 
			
		||||
            "additionalProperties": {"type": "boolean"}
 | 
			
		||||
        },
 | 
			
		||||
        "indicators": {
 | 
			
		||||
            "type": "object",
 | 
			
		||||
            "properties": {
 | 
			
		||||
                "caps_lock": {
 | 
			
		||||
                    "type": "string",
 | 
			
		||||
                    "pattern": "^[A-K]\\d{1,2}$"
 | 
			
		||||
                },
 | 
			
		||||
                "num_lock": {
 | 
			
		||||
                    "type": "string",
 | 
			
		||||
                    "pattern": "^[A-K]\\d{1,2}$"
 | 
			
		||||
                },
 | 
			
		||||
                "scroll_lock": {
 | 
			
		||||
                    "type": "string",
 | 
			
		||||
                    "pattern": "^[A-K]\\d{1,2}$"
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "layout_aliases": {
 | 
			
		||||
            "type": "object",
 | 
			
		||||
            "additionalProperties": {
 | 
			
		||||
                "type": "string",
 | 
			
		||||
                "pattern": "^LAYOUT_[0-9a-z_]*$"
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "layouts": {
 | 
			
		||||
            "type": "object",
 | 
			
		||||
            "additionalProperties": {
 | 
			
		||||
                "type": "object",
 | 
			
		||||
                "additionalProperties": false,
 | 
			
		||||
                "properties": {
 | 
			
		||||
                    "c_macro": {
 | 
			
		||||
                        "type": "boolean"
 | 
			
		||||
                    },
 | 
			
		||||
                    "key_count": {
 | 
			
		||||
                        "type": "number",
 | 
			
		||||
                        "min": 0,
 | 
			
		||||
                        "multipleOf": 1
 | 
			
		||||
                    },
 | 
			
		||||
                    "layout": {
 | 
			
		||||
                        "type": "array",
 | 
			
		||||
                        "items": {
 | 
			
		||||
                            "type": "object",
 | 
			
		||||
                            "additionalProperties": false,
 | 
			
		||||
                            "properties": {
 | 
			
		||||
                                "label": {"type": "string"},
 | 
			
		||||
                                "matrix": {
 | 
			
		||||
                                    "type": "array",
 | 
			
		||||
                                    "minItems": 2,
 | 
			
		||||
                                    "maxItems": 2,
 | 
			
		||||
                                    "items": {
 | 
			
		||||
                                        "type": "number",
 | 
			
		||||
                                        "min": 0,
 | 
			
		||||
                                        "multipleOf": 1
 | 
			
		||||
                                    }
 | 
			
		||||
                                },
 | 
			
		||||
                                "h": {
 | 
			
		||||
                                    "type": "number",
 | 
			
		||||
                                    "min": 0.25
 | 
			
		||||
                                },
 | 
			
		||||
                                "w": {
 | 
			
		||||
                                    "type": "number",
 | 
			
		||||
                                    "min": 0.25
 | 
			
		||||
                                },
 | 
			
		||||
                                "x": {
 | 
			
		||||
                                    "type": "number",
 | 
			
		||||
                                    "min": 0
 | 
			
		||||
                                },
 | 
			
		||||
                                "y": {
 | 
			
		||||
                                    "type": "number",
 | 
			
		||||
                                    "min": 0
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "matrix_pins": {
 | 
			
		||||
            "type": "object",
 | 
			
		||||
            "additionalProperties": false,
 | 
			
		||||
            "properties": {
 | 
			
		||||
                "direct": {
 | 
			
		||||
                    "type": "array",
 | 
			
		||||
                    "items": {
 | 
			
		||||
                        "type": "array",
 | 
			
		||||
                        "items": {
 | 
			
		||||
                            "oneOf": [
 | 
			
		||||
                                {
 | 
			
		||||
                                    "type": "string",
 | 
			
		||||
                                    "pattern": "^[A-K]\\d{1,2}$"
 | 
			
		||||
                                },
 | 
			
		||||
                                {
 | 
			
		||||
                                    "type": "null"
 | 
			
		||||
                                }
 | 
			
		||||
                            ]
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                },
 | 
			
		||||
                "cols": {
 | 
			
		||||
                    "type": "array",
 | 
			
		||||
                    "items": {
 | 
			
		||||
                        "type": "string",
 | 
			
		||||
                        "pattern": "^[A-K]\\d{1,2}$"
 | 
			
		||||
                    }
 | 
			
		||||
                },
 | 
			
		||||
                "rows": {
 | 
			
		||||
                    "type": "array",
 | 
			
		||||
                    "items": {
 | 
			
		||||
                        "type": "string",
 | 
			
		||||
                        "pattern": "^[A-K]\\d{1,2}$"
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "rgblight": {
 | 
			
		||||
            "type": "object",
 | 
			
		||||
            "additionalProperties": false,
 | 
			
		||||
            "properties": {
 | 
			
		||||
                "animations": {
 | 
			
		||||
                    "type": "object",
 | 
			
		||||
                    "additionalProperties": {
 | 
			
		||||
                        "type": "boolean"
 | 
			
		||||
                    }
 | 
			
		||||
                },
 | 
			
		||||
                "brightness_steps": {
 | 
			
		||||
                    "type": "number",
 | 
			
		||||
                    "min": 0,
 | 
			
		||||
                    "multipleOf": 1
 | 
			
		||||
                },
 | 
			
		||||
                "hue_steps": {
 | 
			
		||||
                    "type": "number",
 | 
			
		||||
                    "min": 0,
 | 
			
		||||
                    "multipleOf": 1
 | 
			
		||||
                },
 | 
			
		||||
                "led_count": {
 | 
			
		||||
                    "type": "number",
 | 
			
		||||
                    "min": 0,
 | 
			
		||||
                    "multipleOf": 1
 | 
			
		||||
                },
 | 
			
		||||
                "pin": {
 | 
			
		||||
                    "type": "string",
 | 
			
		||||
                    "pattern": "^[A-K]\\d{1,2}$"
 | 
			
		||||
                },
 | 
			
		||||
                "saturation_steps": {
 | 
			
		||||
                    "type": "number",
 | 
			
		||||
                    "min": 0,
 | 
			
		||||
                    "multipleOf": 1
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        "usb": {
 | 
			
		||||
            "type": "object",
 | 
			
		||||
            "additionalProperties": false,
 | 
			
		||||
            "properties": {
 | 
			
		||||
                "device_ver": {
 | 
			
		||||
                    "type": "string",
 | 
			
		||||
                    "pattern": "^[0-9A-F]x[0-9A-F][0-9A-F][0-9A-F][0-9A-F]"
 | 
			
		||||
                },
 | 
			
		||||
                "pid": {
 | 
			
		||||
                    "type": "string",
 | 
			
		||||
                    "pattern": "^[0-9A-F]x[0-9A-F][0-9A-F][0-9A-F][0-9A-F]"
 | 
			
		||||
                },
 | 
			
		||||
                "vid": {
 | 
			
		||||
                    "type": "string",
 | 
			
		||||
                    "pattern": "^[0-9A-F]x[0-9A-F][0-9A-F][0-9A-F][0-9A-F]"
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										1
									
								
								data/schemas/true.jsonschema
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								data/schemas/true.jsonschema
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
			
		||||
true
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user