- Complete Astro + Alpine.js implementation - Docker Compose setup with Caddy reverse proxy - Dual platform: Anonymous & Named Storytellers - Interactive features: voting, comments, filtering - Categories page with search functionality - Content collections for markdown stories - Responsive design with accessibility features - Environment variable configuration 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
70 lines
1.4 KiB
JSON
70 lines
1.4 KiB
JSON
{
|
|
"$ref": "#/definitions/nevertell",
|
|
"definitions": {
|
|
"nevertell": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"excerpt": {
|
|
"type": "string"
|
|
},
|
|
"tags": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"location": {
|
|
"type": "string"
|
|
},
|
|
"dateOfEvent": {
|
|
"type": "string"
|
|
},
|
|
"upvotes": {
|
|
"type": "number",
|
|
"default": 0
|
|
},
|
|
"promotionVotes": {
|
|
"type": "number",
|
|
"default": 0
|
|
},
|
|
"isPromoted": {
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"publishedAt": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"format": "date-time"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"format": "date"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"format": "unix-time"
|
|
}
|
|
]
|
|
},
|
|
"commentCount": {
|
|
"type": "number",
|
|
"default": 0
|
|
},
|
|
"$schema": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"title",
|
|
"publishedAt"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
} |