JSON Schema 2020-12 · CC BY 4.0
Un format ouvert pour des romans graphiques pensés pour les écrans
panelwave.json décrit une œuvre entière — cases et calques, mises en page par écran, bulles en texte vivant, vidéo et son, graphe narratif, variantes et règles de paywall. Public, documenté, versionné. Votre contenu, votre format.
{
"id": "sb-07",
"characterId": "mira",
"text": {
"en-US": "Something's not right here.",
"de-DE": "Hier stimmt etwas nicht.",
"ja-JP": "何かがおかしい。"
},
"shape": { "x": 0.58, "y": 0.06, "w": 0.32, "h": 0.16 },
"balloonConfig": {
"balloonType": "whisper",
"tail": { "position": 210, "length": 40, "curve": "left" }
}
}Un modèle de données complet pour le récit
| Propriété | Obligatoire | Contenu |
|---|---|---|
| panelwave | oui | Version du format et référence au schéma |
| meta | oui | Titre, créateurs, langues, personnages, classification par âge, avertissements de contenu, licence |
| chapters | oui | Cases, graphe narratif, mises en page par format, canevas infini en option |
| assets | — | Images, vidéo, audio, sous-titres avec variantes responsives ; dossiers |
| variables | — | Variables narratives typées dans cinq portées |
| settings | — | Typographie, préréglages de bulles, interface par défaut, préchargement, préréglages de format |
| localization | — | État des traductions et glossaire (métadonnées de création) |
| extras | — | Couvertures, fiches personnages, interviews, illustrations bonus, coulisses |
| paywall | — | Règles par œuvre, chapitre, case ou bonus ; produits |
| tracking | — | Mesure d’audience respectueuse du consentement |
| ui | — | Identité visuelle et commandes de lecture |
Copier, coller, valider
À quoi ça ressemble
{
"id": "ch-01",
"title": { "en-US": "Night Shift" },
"panels": {
"p1": { "layers": [{ "id": "art", "kind": "image", "assetId": "img-p1" }] },
"p2": { "layers": [{ "id": "art", "kind": "image", "assetId": "img-p2" }] },
"p3": { "layers": [{ "id": "art", "kind": "image", "assetId": "img-p3" }] }
},
"graph": {
"entry": "p1",
"edges": [
{ "from": "p1", "to": "p2" },
{ "from": "p2", "to": "p3", "transition": { "type": "fade", "durationMs": 400 } }
]
}
}Versions actuelles (4 oct. 2026) : format 1.7.0 · @panelwave/cli 1.2.0 · @panelwave/types 1.2.0 · @panelwave/player 1.2.0 · @panelwave/mcp 0.1.0 — formats pris en charge par version
Des versions additives. Un fichier 1.0 reste valide.
Les versions mineures ne font qu’ajouter : rien ne casse. Version actuelle : 1.7.0. Les chapitres linéaires peuvent se passer de liens et suivre simplement l’ordre des cases ; les choix ont leurs propres libellés.
| 1.7 | oct. 2026 | Les chapitres sans liens suivent l’ordre des cases ; choix avec libellés, zones interactives affichées comme boutons, couleur du lettrage, identifiants de variables en snake_case, champs x- sur les cases et les bonus |
| 1.6 | sept. 2026 | Plusieurs produits par règle de paywall, informations d’affichage des produits, animations par images clés des calques, couvertures alternatives, fiches personnages de groupe |
| 1.5 | août 2026 | Archive d’œuvre portable : dossiers de médias et état des traductions |
| 1.4 | juil. 2026 | Canevas infini : placements en coordonnées globales, mouvements de caméra le long des liens, lecture verticale façon webtoon à partir du même modèle |
| 1.3 | juil. 2026 | Préréglages de style pour le texte et les bulles ; le récitatif comme dixième type de bulle |
| 1.2 | juil. 2026 | Des manifestes plus légers : types MIME facultatifs, transitions héritées |
| 1.1 | juil. 2026 | Cases vidéo : modes de lecture, modes de démarrage, variantes inversées, images d’aperçu |
| 1.0 | T1 2026 | Cases, chapitres, déroulement par graphe, médias, variables + JSON Logic, texte multilingue, formats de sortie, paywall, mesure d’audience, plugins |
Façonnez le standard avec nous.
Signalez un problème, proposez une amélioration ou envoyez une pull request. Ouvert, versionné et conçu pour les créateurs.