RustyCMS: File-based headless CMS with REST API, admin UI, multilingual support

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Peter Meier
2026-02-16 09:30:30 +01:00
commit aad93d145f
224 changed files with 19225 additions and 0 deletions

View File

@@ -0,0 +1,76 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"_slug": {
"description": "Entry identifier (URL slug / filename without extension)",
"type": "string"
},
"category": {
"description": "Product category",
"enum": [
"electronics",
"clothing",
"books",
"food",
"other"
],
"type": "string"
},
"created_at": {
"format": "date-time",
"readOnly": true,
"type": "string"
},
"description": {
"description": "Detailed product description",
"maxLength": 5000,
"type": "string"
},
"images": {
"description": "Product image URLs (110)",
"items": {
"type": "string"
},
"maxItems": 10,
"minItems": 1,
"type": "array"
},
"in_stock": {
"default": true,
"description": "Whether the product is in stock",
"type": "boolean"
},
"price": {
"description": "Price in EUR",
"minimum": 0.0,
"type": "number"
},
"rating": {
"description": "Average customer rating (null if unrated)",
"maximum": 5.0,
"minimum": 0.0,
"nullable": true,
"type": "number"
},
"sku": {
"description": "Stock Keeping Unit (e.g. EL-1234, BOOK-00042)",
"pattern": "^[A-Z]{2,4}-\\d{3,6}$",
"type": "string"
},
"title": {
"description": "Product name",
"maxLength": 200,
"minLength": 1,
"type": "string"
}
},
"required": [
"_slug",
"title",
"sku",
"price",
"category"
],
"type": "object"
}