appwrite-utils-cli
Version:
Appwrite Utility Functions to help with database management, data conversion, data import, migrations, and much more. Meant to be used as a CLI tool, I do not recommend installing this in frontend environments.
128 lines • 3.25 kB
JSON
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://example.com/schemas/categories.json",
"title": "Categories",
"description": "Schema for Categories collection",
"type": "object",
"properties": {
"$id": {
"type": "string",
"description": "Document ID",
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]{0,35}$"
},
"$createdAt": {
"type": "string",
"format": "date-time",
"description": "Document creation date"
},
"$updatedAt": {
"type": "string",
"format": "date-time",
"description": "Document last update date"
},
"$permissions": {
"type": "array",
"items": {
"type": "string"
},
"description": "Document permissions"
},
"name": {
"type": "string",
"description": "Category name or title",
"maxLength": 100
},
"slug": {
"type": "string",
"description": "URL-friendly version of the category name",
"maxLength": 120
},
"description": {
"type": "string",
"description": "Detailed description of the category",
"maxLength": 500
},
"parentId": {
"type": "string",
"description": "Parent category ID for hierarchical structure (manual reference)",
"maxLength": 50
},
"level": {
"type": "integer",
"description": "Hierarchy level (0 = root, 1 = subcategory, etc.)",
"minimum": 0,
"maximum": 5,
"default": 0
},
"sortOrder": {
"type": "integer",
"description": "Sort order within the same level",
"default": 0
},
"colorCode": {
"type": "string",
"description": "Hex color code for category branding (e.g., #FF5733)",
"maxLength": 7
},
"icon": {
"type": "string",
"description": "Icon name or class for category display",
"maxLength": 50
},
"coverImage": {
"type": "string",
"description": "Cover image file ID for category header",
"maxLength": 255
},
"isActive": {
"type": "boolean",
"description": "Whether the category is active and visible",
"default": true
},
"isFeatured": {
"type": "boolean",
"description": "Whether the category is featured",
"default": false
},
"postCount": {
"type": "integer",
"description": "Number of posts in this category",
"minimum": 0,
"default": 0
},
"totalPostCount": {
"type": "integer",
"description": "Total posts including subcategories",
"minimum": 0,
"default": 0
},
"metaTitle": {
"type": "string",
"description": "SEO meta title for category page",
"maxLength": 60
},
"metaDescription": {
"type": "string",
"description": "SEO meta description for category page",
"maxLength": 160
},
"guidelines": {
"type": "string",
"description": "Content guidelines or rules for this category",
"maxLength": 1000
}
},
"required": [
"$id",
"$createdAt",
"$updatedAt",
"name",
"level",
"sortOrder",
"isActive",
"isFeatured",
"postCount",
"totalPostCount"
],
"additionalProperties": false
}