1.9 KiB
1.9 KiB
Catalogo global
GET /games.json
Devuelve el catalogo completo de novelas publicadas.
{
"games": [
{
"slug": "demo",
"title": "The Question",
"subtitle": "Demo oficial de Ren'Py",
"engine": "renpy",
"description": "...",
"cover": "/games/demo/web-presplash.jpg",
"version": "7.0",
"author": "Ren'Py Team",
"createdAt": "2026-06-14T10:35:09Z",
"entryPoint": "/games/demo/index.html",
"coopCoep": true
}
],
"updatedAt": "2026-06-14T22:07:10Z",
"version": "1.0"
}
Metadatos por juego
GET /games//game.json
Generado por build-novela.sh. Contiene metadatos y configuracion del motor.
| Campo | Tipo | Descripcion |
|---|---|---|
slug |
string | Identificador URL-friendly |
title |
string | Titulo mostrado |
subtitle |
string | Subtitulo opcional |
engine |
string | Motor: renpy, unity, web, onscripter, umineko-ru |
description |
string | Descripcion corta |
cover |
string | URL de la portada |
version |
string | Version del juego |
author |
string | Autor |
createdAt |
string ISO | Fecha de publicacion |
entryPoint |
string | URL para jugar |
coopCoep |
boolean | Si requiere headers COOP/COEP |
meta.json de entrada
Archivo opcional en /opt/novelas/projects/<slug>/meta.json:
{
"title": "Mi Novela",
"subtitle": "Subtitulo",
"description": "Descripcion.",
"author": "Autor",
"version": "1.0",
"cover": "/games/mi-novela/cover.jpg"
}
Headers HTTP
COOP/COEP (solo Ren'Py)
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp
Se aplican mediante snippets en /etc/nginx/snippets/novelas-games/<slug>.conf.
Cache
games.jsonygame.json:no-store, no-cache, must-revalidate.- Assets estaticos:
public, immutable, 30 dias.