Nine formats

A format is a way of unfolding the same model: a story is a sequence of scenes. A scene is a slide, a shot, a panel, a page, a section, a card. Everything else — navigation, pagination, timing, layout — belongs to the format, never to the source.

The set, and the reason for each

FormatA scene is…It exists becauseToday
decka slidethe most common reason people leave their editorshipped
motiona shota launch video repeats the deck, word for word, in another toolshipped
docsa pagethe documentation is already Markdown; it should accept the same blocksshipped
reporta sectionnumbers in a report come from data, and should not be retypedspecified
toona panela vertical scroll episode is a story with scenes, and translations drift fastestspecified
booka chapterlong-form print needs pagination, not slidesspecified
roadmapa milestonea public roadmap is a story that changes; it should be generated, not maintainedspecified
calendaran eventdates are data, and an .ics nobody has to update by hand is worth havingspecified
storiesa full-screen cardsocial cards are the shortest form of the same content, and the most duplicatedspecified

Three are real; six are written down in enough detail to be built, and not built. That distinction is kept visible everywhere, because a vision that quietly claims shipped features is a sales page.

Bridges are the point

If a format is a function of a story, two functions can take the same argument. That is what makes the set worth more than the sum:

  • a deck becomes a film — the same scenes, timed instead of clicked;
  • a report becomes a deck — the sections that carry a number become slides;
  • an episode becomes a vertical film, a roadmap becomes a calendar, a story becomes a set of cards.

A bridge is not an export. An export produces a file you then maintain separately; a bridge re-renders the same source, so the two outputs cannot disagree.

What earns a tenth format

Not "it would be nice". A format joins the set when it answers yes to all four:

  1. Its content is already a sequence of scenes. If it is not, it is a block or a tool, not a format — which is how :::form, ::map and the glossary ended up as blocks usable everywhere rather than formats of their own.
  2. Someone is currently duplicating content to produce it. The whole premise is removing a copy; a format nobody duplicates into saves nothing.
  3. It shares the model. No new kind, no parallel schema, no second type system.
  4. It can be rendered without the tool being present. A file you can keep.

Two candidates passed recently and became formats scheduled after 1.0: a glossary and directory format, and an atlas — a geographic story where a scene is a view of a map. Three others passed as blocks instead.

The one that is not a format

Documentation is rendered by the site framework (@recit/site), not by a Récit format package. That is deliberate: documentation sites are a solved problem, and reimplementing one to own the whole stack would be the exact kind of duplication this project exists to remove.