/export · design review · Modern Day

Nine exports of the same fifty days

Every artefact below is generated from one save — good_sample, a fun-mode run in which the United States severs allied F-35 sustainment, walks out of NATO, occupies Greenland and Iceland, and opens a strategic campaign against the United Kingdom. Three shapes, three iterations each. Pick the ones worth building.

26events
25source records
33articles written
257posts written
78of them replies
16statements invented
14image slots
12forum threads
87entities

Shape one — the encyclopedia

The same encyclopedia, the same pages, rendered three ways. Every iteration has full-text search, category pages, subject index pages generated from the entity list, and the world's own records published as citable primary sources. What differs is the register, and — in the third — what the page does with the classified matter.

01 · wiki

Atlas

invented in-world brand · editorial

A brand-neutral encyclopedia that reads like a book: warm paper, a serif column, an infobox rail, and a contents rail that tracks the article. Nothing imitates an existing product.

  • Classified sections are hidden, and the page says how many are missing
  • Home page is a masthead with a featured article and the record in order
  • Safest to share; no trademark surface at all
165 pages · 3.6 MB Open →
02 · wiki

Reference

pastiche of the familiar · utility

The chrome everybody already knows how to use: left rail, page tabs, hatnotes, a floated infobox, blue links, a portal front page with "Did you know". Invented name, familiar shape.

  • Zero learning curve — players know where everything is
  • Denser: more of the record visible per screen
  • Current-event banners and reader-facing editorial notes
165 pages · 3.5 MB Open →
03 · wiki

The Archive

declassification reading room · dark

A file registry rather than an encyclopedia. Every page carries a reference number and a classification banner, and the withheld passages are not hidden — they are covered with redaction bars that lift when you present clearance.

  • You can see the shape of what you are not being told
  • Registry navigation by file number, not by topic
  • The toggle becomes the centrepiece rather than a setting
165 pages · 4.4 MB Open →

Shape two — the social record

Three different answers to "what did the world say while this happened". These differ far more from each other than the encyclopedias do, because the shape of a social export is a real product decision: one broadcast column, one argument, or one merged evidence stream. Most of the volume here is ordinary people — a welder, a teacher, a nurse, a plumber in Copenhagen, a sixteen-year-old in Nuuk — arguing with each other underneath the official posts.

04 · social

Signal

microblog pastiche · broadcast

The familiar single column: 257 posts across 74 accounts, of which 78 are replies. Threads, quote posts, profiles, permalinks, reader-added context notes on official denials, a trending rail, and a "moment" page for every event.

  • Every major post carries a reply thread — support, criticism, questions and people changing their minds at each other
  • Declassifying adds leaked posts AND a "what was actually happening" note under official statements
  • The President posts here too, and the switch puts the briefing under each one
355 pages · 7.3 MB Open →
05 · social

The Commons

threaded aggregator · argument

Boards, vote counts, nested replies and moderator notes. Twelve long threads where the world tries to work out what is happening — from a dental receptionist asking whether her son is going somewhere cold, to Germans arguing honestly about whether they are relieved.

  • Declassifying does not add posts; it adds the answer the thread was arguing about
  • Best for showing what the public could and could not infer
  • The smallest export of the nine — a deliberate, denser artefact
24 pages · 0.4 MB Open →
06 · social

OpenWatch

analyst collection · evidence

Not one platform but all of them at once: posts, forum threads, wire records and closed briefings merged onto a single clock, with channel filters, subject indexes, per-day pages and a geography view.

  • Live client-side filtering by channel, plus a density scrubber across the fifty days
  • Subject pages tie every channel to the same entity
  • The largest export of the nine, and the most "tool" of the three
436 pages · 12.8 MB Open →

Shape three — the newspaper animation

This shape exports a video file rather than a website, so the decision is the motion language. All three are 1920×1080 H.264 with a synthesized bed, rendered by driving the animation frame by frame through a browser and piping the frames into ffmpeg. Each ships with a player page whose chapter list and searchable transcript seek the video.

07 · news

Newsreel

archive reel · monochrome

The 1940s trope done properly: papers spin in from depth and slam to a stop, hard cuts, title cards between acts, projector weave, gate flash, and grain over everything.

  • Reads instantly as "historical record"
  • Title cards carry the narration, so no voice track is needed
  • Front pages are legible for about two seconds each
video + player · 35.5 MB Watch →
08 · news

Broadsheet

editorial motion · full colour

A front page that typesets itself — masthead, kicker, headline, deck, then the columns — after which the camera drifts down the real text of the record. Single figures lift off the page and count up between pages.

  • The only cut where you can actually read the columns
  • Contemporary, closest to a modern documentary title sequence
  • Longest runtime of the three
video + player · 13.1 MB Watch →
09 · news

Wire

teleprinter · terminal green

No newspaper at all. A teleprinter running in a dark room, striking one character at a time under a priority flash — and between the open items, redaction bars that wipe away to show what the closed channel said.

  • The only cut that puts the classified layer on screen
  • Cheapest to render and the most typographically distinct
  • Works as a title sequence for the other two
video + player · 12.2 MB Watch →

How to review these

Turn the toggle on and off in every one

Ten of the twenty-five records in this save were classified. Every export ships both readings and a switch in the header, and the switch is the most important thing to judge, because each shape does something different with it:

ExportWhat the switch does
Atlas, ReferenceHides or shows whole sections, and tells you how many are missing.
The ArchiveLifts redaction bars in place, so the shape of the missing text is always visible.
SignalAdds leaked posts, and adds a note under official statements saying what was really happening at that moment.
The CommonsAdds the closed record beside a thread that is arguing about it.
OpenWatchEnables two whole channels of the merged stream.
Wire (video)Baked into the film: the redaction bars wipe away on screen.

The setting is shared per export and survives navigation. Search obeys it too: classified pages are unfindable until it is on.

Everything here is one contract

The nine artefacts are renderers over a single generated document, corpus.json. That file is what the model produces from a save; the renderers are ordinary code with no model in them. Adding a tenth iteration costs a stylesheet, not another generation pass.

corpus.json
├─ export     world, player, span, counts, open agenda
├─ entities   87 named things, with aka lists and a one-line blurb
├─ timeline   26 events, each scoped public or classified, each citing a source
├─ wiki       33 articles: summary, infobox, scoped sections, categories, refs
├─ accounts   74 in-world accounts, and 257 posts with replies and quotes
├─ boards     12 threads with nested comments
├─ statements 16 public words from the player, invented to fill the silence
├─ images     14 picture slots: a prompt, an alt text, a caption, a place
├─ fronts     12 newspaper front pages
├─ cuts       3 film scripts, as scene lists
└─ sources    25 unedited records from the save, published and citable

The one rule that makes the shapes cohere: scope is on every node — an event, an article section, a post, a scene. That single field is what the declassify switch reads.

The generator improvises. It does not report its seams.

A save is a working record, not a finished history. It has gaps and it has contradictions. An export that stops to explain them reads like a bug report. The generation step fills them instead, and commits to what it wrote.

Where the record contradicts itself, it picks the legible reading and never mentions the other one. This save names two different German chancellors nine days apart. The export uses one throughout, re-attributes the orphaned quotation, and says nothing. The decision is recorded in corpus.json under export.reconciliations — so a later run reproduces the same choice — and it never reaches a page.

Where the player is silent, it invents what he said. No record in this save contains one public word from the President. Rather than print that as an absence, the generator wrote his public record: 16 statements over fifty days — three addresses to the nation, written statements, three press gaggles, and the posts. See Atlas → Public statements.

That turns out to make the declassify switch sharper rather than softer. The world is not starved of his words; it is flooded with them. Every statement carries the briefing that stood behind it at that moment, and the switch puts the two side by side — "nobody needs a letter from me" against the letter that arrived the night before, "everything in Germany is completely normal" against the cordons that had closed three hours earlier.

He is never named. The save names every other officeholder and never names him, which is the right reading: this character is the player.

Pictures are generated the same way, in a second pass

The model writes an images list along with everything else. It draws nothing. For each slot it writes a prompt, an alt text, a caption in the voice of the export, and where the picture belongs — the lead of an article, inside a named section, attached to a post, or the plate behind a film scene.

A separate step calls an image model once per slot and fills in file. This keeps the expensive, slow, and most failure-prone part of the export out of the path of everything else: an export with no pictures is complete and shippable, and pictures can arrive later without regenerating a word.

Every renderer handles both states, and the layout does not move between them. In these samples the slots are unfilled, so you are looking at the frames, the aspect ratios, and the captions the model wrote — 14 of them. Turn one on and the frame fills.

Open it from disk

Every export is plain files. No server, no build step, no network: open index.html and search, deep links, back and forward, and the toggle all work from file://. Nothing loads from a CDN.