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

141
types/content_layout.json5 Normal file
View File

@@ -0,0 +1,141 @@
{
// Equivalent to: CF_Content interface
// Base type for pages/posts with a 3-row content layout
name: "content_layout",
description: "Base layout with 3 content rows (inherited by page, post, etc.)",
tags: ["layout", "partial"],
category: "layout",
fields: {
row1JustifyContent: {
type: "string",
enum: [
"start",
"end",
"center",
"between",
"around",
"evenly"
],
default: "start",
description: "Justify content for row 1",
},
row1AlignItems: {
type: "string",
enum: [
"start",
"end",
"center",
"baseline",
"stretch"
],
default: "stretch",
description: "Align items for row 1",
},
row1Content: {
type: "array",
items: {
type: "reference",
collections: [
"markdown",
"html",
"headline",
"image",
"quote",
"youtube_video",
"image_gallery",
"iframe",
"searchable_text",
"fullwidth_banner",
"list"
],
},
description: "Content components for row 1 (Markdown, HTML, Headline, Image, …)",
},
row2JustifyContent: {
type: "string",
enum: [
"start",
"end",
"center",
"between",
"around",
"evenly"
],
default: "start",
},
row2AlignItems: {
type: "string",
enum: [
"start",
"end",
"center",
"baseline",
"stretch"
],
default: "stretch",
},
row2Content: {
type: "array",
items: {
type: "reference",
collections: [
"markdown",
"html",
"headline",
"image",
"quote",
"youtube_video",
"image_gallery",
"iframe",
"searchable_text",
"fullwidth_banner",
"list"
],
},
description: "Content components for row 2",
},
row3JustifyContent: {
type: "string",
enum: [
"start",
"end",
"center",
"between",
"around",
"evenly"
],
default: "start",
},
row3AlignItems: {
type: "string",
enum: [
"start",
"end",
"center",
"baseline",
"stretch"
],
default: "stretch",
},
row3Content: {
type: "array",
items: {
type: "reference",
collections: [
"markdown",
"html",
"headline",
"image",
"quote",
"youtube_video",
"image_gallery",
"iframe",
"searchable_text",
"fullwidth_banner",
"list"
],
},
description: "Content components for row 3",
},
}
}