Skip to content

SpecBook 1.4.0

Choose a tag to compare

@rse rse released this 04 Oct 16:35
· 25 commits to master since this release

1.4.0 (2026-10-04)

  • IMPROVEMENT [code]: Lined Instead of Striped Property Tables
    The property tables drop their row stripes for a tinted key column, a transparent value column,
    and thin grey row lines, and attach seamlessly to the cell borders inside compact tables.

  • IMPROVEMENT [code]: Fixed-Width Name Column of the Object Tables
    The name column of the concise/compact tables and the key column of the property tables take
    a fixed 20%, so all tables align, while the property columns share the remaining 80%.

  • IMPROVEMENT [code]: Sub-Headers in the Compact Object Format
    The content cell of a compact table leads its diagram, properties, and description with the
    sub-headers "Diagram", "Properties", and "Description", styled like the chunk headers.

  • FEATURE [code]: Compact Object Format
    The new format type compact renders a table whose single content cell holds the hub diagram,
    properties, and description; used for COMPONENT, PREMISE, TERM, and PERMISSION.

  • FEATURE [spec]: Code Patterns Artifact in the Standard Schema
    The new ARCH: Code Patterns artifact (after Design Decisions) records CODE-PATTERN objects
    showing as a listing how a recurring concern is coded (APPLIES-TO, REALIZES, DECIDED-BY).

  • REFACTORING [spec]: Dialog Pattern Kind Renamed to DIALOG-PATTERN
    The PATTERN kind of UXUI: Dialog Patterns is now DIALOG-PATTERN (headings and [[...]]
    references alike), which frees the name for the code patterns and reads unambiguously.

  • FEATURE [code]: Syntax-Highlighted Code Listings
    Fenced code blocks and embedded source files (#lines=, #mark=) render via Shiki with line
    numbers and themed keywords/literals/comments in DejaVu Sans Mono, and fold, maximize, omit.

  • FEATURE [code]: Embedded Mermaid and D2 Diagrams
    Fenced mermaid/mmd/d2 blocks and embedded .mmd/.mermaid/.d2 files are rendered
    as themed diagrams, which fold, maximize, and omit (-O diagram:code) like Gradia ones.

  • FEATURE [code]: Embedded PDF Pages
    Embedded .pdf files (#page=<n> selecting the page) are converted to vector SVG with lazily
    loaded pdfjs-dist/@napi-rs/canvas and then treated exactly like embedded SVG images.

  • IMPROVEMENT [code]: Embedded Images Fold and Maximize
    Embedded SVG/PNG/JPEG/WebP images (except the title page logo) fold, maximize, and omit
    (-O diagram:image) in the HTML/PDF export exactly like the embedded diagrams.

  • FEATURE [code]: Dark Theme Treatment of Embeddings
    The dark fragment parameter of images and PDF pages selects invert, none, or auto
    (the default, detecting light pages with dark ink) as their treatment on the dark theme.

  • BUGFIX [code]: Rationale Ends with Its Paragraph
    The blocks following a , BECAUSE paragraph ended up inside the rationale and lost their
    embeddings and diagrams, and now form the new description elaboration instead.

  • BUGFIX [code]: Self-Adapting SVG Images Follow the Document Theme
    An SVG image with light-dark() colors followed the system color scheme instead of the
    document theme, as the HTML export now sets color-scheme on every image on screen.