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