Skip to content

Docs System 0.8.0

Choose a tag to compare

@b10x-bot b10x-bot released this 08 Oct 15:31
· 68 commits to main since this release
6169592

Additive b10x-docs/v5 contract (sidebar, landing, menu-withheld documents, built assets) and the product-site template: family registry, b10x-status/1, hero art from data and page headers.

  • The family member els is named "Engineering protocols" and links https://beyond10x.github.io/engineering-protocols/
    and https://github.com/beyond10x/engineering-protocols, after the repository rename. The product id
    and palette key stay els.

  • Add the family registry (@beyond10x/docs-system/family): related tools may be named
    {id, relation, via?} and take name, unique mark (C, El, L, Co, Es), signature hue, description
    and link from it. With product set, the footer shows a family strip with the current product
    highlighted, a "This build" line names the docs-system revision, and the navbar wordmark gets a
    product switcher.

  • Add b10x-status/1: a landing status section may name a status file ("items": "data/status.json")
    and <StatusTable data={…}/> renders the same file on the status page, grouped by area.

  • Add hero art from data: product.art with kinds terminal, protocol-graph, domain-graph,
    case (b10x-case/1) and code-pair (b10x-code-pair/1), and product.kpis, a KPI row counted
    from the art, the graphs and the status section. ProtocolGraph and DomainGraph take
    variant="hero". product.terminal still works.

  • Documentation pages with status, lede or source front matter open with a page header
    (kicker "Category · n of m" from the sidebar, title, lede, status badge, source line).

  • Graph and status sections sit on the alternate ground, cards carry light-mode depth, feature grids
    take their columns from the card count (4 → 2 × 2), and protocol kinds have glyphs reused in kind
    chips, graph legends and feature icons.

  • Motion only under prefers-reduced-motion: no-preference: hero graph edges draw once, the hero
    terminal types once, the status bar grows.

  • Top-level sidebar categories read as kickers. With trailingSlash: false the build writes a
    redirect at x/index.html for every x.html, so /docs/x/ no longer 404s on static hosts.

  • At phone width the hero terminal wraps long commands with a hanging indent, and graphs wider than
    their frame offer a "Fit to width" toggle.

  • Self-host Inter (variable) and Fira Code as latin-subset woff2 with font-display: swap and
    preload; withProductSite serves them under <baseUrl>b10x-fonts/ with their OFL licences.

  • Fail the product-site build when a raw :::kind Title line reaches a page, and refuse
    ^:::[a-z]+ +\S outside fenced code in check-source.

  • Add semantic colour roles validated with the dataviz checks: an ordinal status ramp with ○ ◐ ●
    glyphs (no longer the site accent), truth tokens (✓ ? ✕), and a product signature hue chosen with
    withProductSite(config, {product}). StatusStrip groups items by state.

  • Turn exact TRUE/FALSE/UNKNOWN, shipped/decided/planned and protocol kinds in docs table cells and
    inline code into chips; :::shipped, :::decided, :::planned and status-titled admonitions take
    the status tone. Add Truth, Kind and EmptyState.

  • b10x-terminal/1 gains optional tones; the terminal shows an exit gutter, coloured outcome words,
    JSON tokens and a summary. protocol/1 code blocks get a kind gutter. Mermaid takes per-mode theme
    variables from the tokens.

  • Add the product-site layer: withProductSite(config, options) from
    @beyond10x/docs-system/product-site adds a data-driven landing page (b10x-product-landing/1),
    product tokens light and dark mapped onto Infima, matched Prism themes, and a global MDX
    vocabulary: Terminal, FeatureGrid/Feature, Flow/FlowStep, StatusStrip,
    RelatedTools, ProtocolGraph, DomainGraph, SessionTimeline, StepBars,
    CompositionGraph, StatTiles and SessionKpis. Sites that do not opt in are unchanged.

  • Add spec-driven graphs on a dependency-free, synchronous layered layout
    (@beyond10x/docs-system/graph-layout) so pages prerender finished SVG, and JSON Schemas for
    b10x-protocol-graph/1, b10x-domain-graph/1, b10x-terminal/1, b10x-product-landing/1 and the
    provisional session-composition-instance/0-dummy.

  • StatusBadge also accepts status (shipped, decided, planned); maturity renders as before.

  • Add the additive b10x-docs/v5 contract: a serialized sidebar of categories whose leaves are
    published document paths, a landing document, menu-withheld documents (menuWithheld) and
    declared built assets (builtAssets). Validation refuses a sidebar leaf, landing or withheld
    path the surface does not publish.
    v1-v4 remain accepted unchanged.

  • Status glyphs (○ ◐ ●) in StatusBadge, KPI tiles and status chips are drawn as CSS masks
    (StatusGlyph, .b10x-status-glyph) instead of font text: the Inter subset carries ○ and ● but
    not ◐, which fell back to a system font and rendered as a clipped sliver. chipMeaning returns an
    empty glyph for status words.

  • With trailingSlash: false, x/index.html is now a copy of x.html with a canonical link to x
    and a script that moves to x only when the path ends in /. The former meta-refresh stub looped
    forever under docusaurus serve and any server that resolves /x to x/index.html first.

  • Hero protocol and domain graphs never scale below 0.8 (a wider graph is cropped and scrolls), drop
    label tracking and keep their own glyph spacing, so labels no longer shrink to about 6 px.

  • The hero terminal wraps long commands with a hanging indent at every width, not only on phones.

  • The page-header kicker drops "1 of 1" for a one-page category, and a front-matter kicker
    replaces the whole kicker.