Specification · Scenergia · v1

The production file

One record for one production — the title, the year, the country, the town, the firm, the places and the cast — written once and read by everything that makes the world of the story. In Chronotype the Scene Kit writes it and every studio reads it; Skenic reads it to know what the physical world is called; Mombie reads it to put the right firm in the phone. This page is the format, so that anything else can read and write it too. Version 1, 6 October 2026.

① What it is for

A script becomes a world only if the world is consistent: the firm on the letterhead in scene 4 is the firm on the van in scene 9 and the firm in the text message in scene 27. The production file is the one place the names live. It is small, it is plain JSON, it is written by whoever reads the script first (in Chronotype, the Scene Kit) and it travels with the work: in the browser as localStorage["chronotype.production.v1"], in the Prop Kit zip as production.json, on the clipboard when the Scene Kit hands the prop list to Skenic or the phone screens to Mombie. It is never sent anywhere by itself.

② The record

{
  "v": 1,
  "title": "The Harbour",
  "year": 1962,
  "region": "gr",
  "town": "Amfipolis",
  "firm": { "name": "Rathbone Ltd.", "code": "CTB1:eyJ2IjoxLCJzZWVkIjoxNzcxNzM0OTEzLCJuYW1lIjoiUmF0aGJvbmU…" },
  "strict": "plausible",
  "places": [
    { "kind": "hospital",  "name": "Γενικό Νοσοκομείο Αμφιπόλεως" },
    { "kind": "newspaper", "name": "The Harbour Gazette" },
    { "kind": "station",   "name": "Marlow Road" }
  ],
  "cast": [
    { "role": "Night sister", "name": "Eleni Mavrou" },
    { "role": "Detective",    "name": "Ray Castellan" }
  ],
  "auto": true,
  "updated": "2026-10-06"
}
FieldTypeRule
vintegerAlways 1. A reader that meets a higher number keeps what it understands and ignores the rest.
titlestring, 1–90The production’s title. Required — a record without one is not a production file.
yearinteger 1700–2100The year the story is set in. Every studio dates itself to it. Out of range → 1965.
regionstring, 2–8, lower caseThe country the story is set in: uk us ca au in fr de it es pt nl gr tr ru eu. Unknown codes are kept; a reader falls back to uk.
townstring, 0–60The town or city, as the script spells it. Goes to the dateline, the postmark, the map.
firmobject or null{ name, code } — the one business that matters most. name is enough; code carries the whole Brand Room record (section 3), so the mark and the colours travel. Never required.
strictenumdocumentary (as the year had it) · plausible (period-correct, editorial choices allowed; the default) · cinematic (what reads on camera comes first).
placesarray, ≤ 40{ kind, name }. kind is a lower-case word from the list in section 4 (anything else is kept as typed, ≤ 20 letters); name ≤ 90 characters, verbatim.
castarray, ≤ 60{ role, name }: the role as the script describes the character (≤ 40), the name ≤ 60, verbatim. Names drive the signatures (section 5) and the papers each character carries.
autobooleanChronotype only: open every studio on this production without asking.
updateddate, YYYY-MM-DDSet by whoever writes. Latest wins when two copies meet.

Strings are trimmed, control characters removed, and cut at the lengths above. Nothing is translated: a Greek name stays Greek, a Cyrillic one Cyrillic. A reader must tolerate missing fields and must not invent values for them — an empty town means the script did not say.

③ The firm, and its code

The Brand Room invents a company once: name, legal form, trade, country, year founded, proprietor, motto, address, telephone, palette, typefaces and a mark. firm.code is that record, serialised so that it survives a copy-paste: "CTB1:" followed by the base64 of the record’s JSON (UTF-8, padding stripped). A reader that can draw the mark decodes it; a reader that cannot keeps firm.name, and may read the colours.

{
  "v": 1, "seed": 1771734913,
  "name": "Rathbone Ltd.", "short": "Rathbone", "initials": "R",
  "form": "ltdab", "trade": "shipping", "country": "uk", "year": 1962, "founded": "1931",
  "proprietor": "", "motto": "", "street": "Steam Mill Road", "town": "Netherfield", "postal": "N.W.3",
  "tel": "SELBY 4744", "telWord": "Telephone",
  "pal": { "ink": "#16181d", "accent": "#c8332a", "second": "#1d5bab", "paper": "#f7f5ef", "palId": "festival" },
  "ty":  { "display": "geo", "text": "geo" },
  "mark": { "eng": "globe", "seed": 845853108, "ink": "ink", "icon": "" }
}
→ "CTB1:eyJ2IjoxLCJzZWVkIjoxNzcxNzM0OTEzLCJuYW1lIjoiUmF0aGJvbmU…"

A firm’s identity is "f" + base36( FNV1a(name + "|" + country + "|" + year) XOR seed ); two records with the same identity are the same firm. The mark engine, the icon and the typeface ids are Chronotype’s; a reader outside Chronotype treats them as opaque strings and draws nothing from them.

④ The places, and where each one lands

kindAlso recognised when typedLands on
hospitalclinic, infirmary, νοσοκομείο, κλινικήthe ward sign, the hospital forms, the badge
newspaperpaper, masthead, daily, εφημερίδαthe masthead of the Newspaper Press
stationrailway, σταθμόςthe station sign, the ticket, the map
broadcasterradio, television, tv, ραδιόφωνοthe station mark of the On Air Studio
streetroad, avenue, οδός, λεωφόροςthe street sign, the letterhead address, the map
shopstore, κατάστημαthe fascia, the receipt
cafecafé, coffee house, bar, καφενείοthe menu’s house
hotel · restaurantinn, taverna, ξενοδοχείο, ταβέρναthe menu’s house, the key fob
publisherpress, εκδόσειςthe Cover Studio’s imprint, the Map Room’s publisher
ward · pharmacy · school · police · court · bankchemist, college, δικαστήριο, τράπεζα…the sign, the form, the card, the specimen signature card

Skenic reads the same list for the physical world: the hospital is a location, the café is a set, the station is a set and a sign. The Web Studio reads it for the page on the screen — the newspaper’s site, the bank’s account page, the firm’s inbox — and Mombie for the live phone: the bank’s app, the café’s number, the message that arrives on cue.

⑤ The cast, and the signatures

Every cast name is a person who signs. The Signature Studio keeps the shelf chronotype.signatures.v1 beside the production file; a letter in the Document Studio signed by a name on the shelf is signed in its hand, and «Sign the production’s cast» invents one for every name in cast, seeded by the name and the title so it is the same on every machine that runs it.

{ "v": 1, "active": "s1k3x9q",
  "list": [ { "id": "s1k3x9q", "name": "Eleni Mavrou", "role": "Night sister", "country": "gr", "year": 1962, "age": 47,
              "hand": "greek", "pen": "ball", "ink": "royal", "legibility": 0.35, "flourish": 0.5, "size": 5, "seed": 93811 } ] }

⑥ What the Scene Kit hands over

Beside the production file, two plain-text lists leave the Scene Kit by the clipboard. The prop list for Skenic — everything the script names that is not paper — and the screens for Mombie — every phone, computer and television screen with its scene and what the script says it shows. Both are tab-separated after a two-line header, and both end with production.json when there is one.

PROP LIST for Skenic — The Harbour · 1962 · GR
From the Chronotype Scene Kit · chronotype.design · part of Scenergia

sc. 1	lamp
sc. 1	watch
sc. 3	revolver

SCREENS for Mombie — The Harbour · 1962 · GR
From the Chronotype Scene Kit · chronotype.design · part of Scenergia

PHONE SCREEN
  sc. 1	MARGARET reads a text message on her phone: "COME AT ONCE STOP"
COMPUTER SCREEN
  sc. 2	The TV screen above the bar shows the news

The Prop Kit zip carries the printed world the same way: one folder per scene, manifest.csv with the columns scene, folder, file, thing, studio, year, country, width_mm, height_mm, stock, finishing, ageing, copies, also_in_scenes, words, made, kit.json with every item as its studio was given it, and production.json.

⑦ Rules for anything that reads or writes it

Read what you understand and leave the rest. Never require firm.code. Keep names verbatim — no translation, no title case, no trimming of accents. Write back only into your own namespace: a key beginning x- (x-skenic, x-mombie) is yours and is carried, unread, by everyone else. Do not invent a field the script did not give. Bump updated when you write; when two copies meet, the later updated wins field by field, except title, which is the identity. A change that would break a v1 reader is a v: 2, and v2 will carry a v1 view of itself.

⑧ What is deliberately not in it

No real company, no real person, no address that exists: the file describes a fictional world, and a reader that finds a real trademark in it has found a mistake, not a feature. No sheet artwork, no images, no fonts — the file is names and dates, small enough to paste into a message. No account, no server: it lives in the browser, in the zip and on the clipboard.

Write one

Drop a script in the Scene Kit and it writes the production file for you — title, year, country, firm, places, cast — and every studio opens on it. The handoffs to Skenic and Mombie are under the breakdown.

Open the Scene Kit →