{% extends "brickwork/shell/docs.html" %} {% comment %} An editorial article: long-form publishing on the shared reading shell (icvoss/django-brickwork#415). First archetype in the Editorial and publishing family. COPY THIS FILE into your project and edit it. It is not on the template loader path, so you cannot extend it (ADR-056). What your view must supply: crumbs breadcrumb trail: [{label, url}, ...], last unlinked docs_nav_label rail / jump label (this page uses "In this article") docs_search_action the URL bw_search in the site header submits to author_name display name in the byline author_href author profile URL (full author page is #416) author_initials initials fallback for {% include %} _avatar.html published_on visible publication date string reading_time visible reading-time string (e.g. "8 min read") category_label category badge text (full category page is #417) category_href category listing URL article_state "ready" | "empty" | "error" The heading text, prose, callouts, figure and on-this-page links below are typed into the template. WHY THIS PAGE EXTENDS THE DOCS SHELL, NOT A NEW EDITORIAL SHELL: ADR-091 bought the docs shell for one deciding fact: article-then-rail in source order, with site chrome outside
. An editorial article needs the same seams (reading column, optional on-this-page rail, site header and footer). A second shell with the same regions would be a fork wearing a family name. Family taxonomy is the examples/ directory (`editorial/` -> "Editorial and publishing"), not which shell a page extends: shells are cross-family building blocks (docs/CATALOGUE.md). The phone jump and rail label are renamed via docs_nav_label so the chrome does not say "Documentation" on a journal page. WHAT DIFFERS FROM examples/docs/article.html: A docs article orients a reader who already chose a section of a reference tree: section rail, technical callouts, code panels. An editorial article orients a reader who chose a story: byline (avatar + author + date + reading time), a category badge, captioned figure, and continue-reading neighbours. Reading-progress glue stays on #421 (closed under #260 as documentation over _progress.html, not a new primitive). Full author, category, archive, series and related-content pages are #416 to #420. States: article_state is the page's real branch. "ready": byline, prose, figure, on-this-page TOC, sibling rail, pager. "empty": the article is not published yet (or was withdrawn). Empty state; chrome and breadcrumbs stay so the reader can leave. "error": the content store failed. bw_alert danger; same chrome rule. LOADING: not applicable for the default server-rendered path. Accessibility: byline text names the author (avatar aria-label matches); category is a real link wrapping the badge text, not colour alone; heading anchors name the section; pager direction is in the link text (WCAG 2.4.4); empty and error keep search + breadcrumbs. On-this-page TOC sits in content (not inside docs_nav) so it does not nest a second