Storyline: add the Prologue chapter, extend the layout for sessions

Chapters now carry an eyebrow ("Overview", "Prologue", ...) and a short
tag for the list/sidebar badge, instead of a bare running number, so
non-numbered entries read correctly.

New chapter: "Prologue - The Long Road to Brackenford", the session
outline formatted as a runnable document -- an at-a-glance metadata band
(levels, duration, locations, hook), the in-world courier notice as a
posted handout, numbered scenes, GM callouts for the "ask the players"
prompts, label/body rows for the skill-check clues and travel-day
prompts, a three-stage encounter block, dramatic beat lines, and a
before/after panel for the legend the party's own retelling becomes.
Cross-links the Hearthburrow to Enemies and the closing line to the
overview's "Five and the Five".

Tests: render every chapter partial headless (no HTTP/DB) so a broken
variable or path() fails loudly, check each registered chapter has its
template file, and assert the /storyline routes sit behind the login gate.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Frank
2026-09-08 18:19:07 +02:00
co-authored by Claude Sonnet 5
parent 7fbf6f1569
commit 56f4641564
7 changed files with 480 additions and 7 deletions
+2 -2
View File
@@ -13,7 +13,7 @@
<li>
<a href="{{ path('app_storyline_chapter', {slug: s}) }}"
class="storyline-toc-link{{ s == slug ? ' is-active' }}">
<span class="storyline-toc-num">{{ loop.index }}</span>{{ c.title }}
<span class="storyline-toc-num">{{ c.tag }}</span>{{ c.title }}
</a>
</li>
{% endfor %}
@@ -24,7 +24,7 @@
<div class="col-lg-9 order-lg-1">
<article class="storyline-doc">
<header class="storyline-doc-head">
<div class="storyline-eyebrow">Storyline &middot; Chapter {{ number }}</div>
<div class="storyline-eyebrow">Storyline &middot; {{ chapter.eyebrow }}</div>
<h1>{{ chapter.title }}</h1>
<p class="storyline-standfirst">{{ chapter.summary }}</p>
</header>