Repository navigation
feat(hero): more hero, frame and readme layouts - #12
Merged
Merged
Conversation
…e new backgrounds
…keep their widths
Shironex
marked this pull request as ready for review
September 27, 2026 14:14
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
More looks for the hero banner, the frames and the README snippet, so users have more options to choose from. The owner reviewed the proposal and kept every option. Every new option defaults to today's look, and
bun run docs:galleryleaves every committed gallery file byte for byte as it was.Comparison page, every option rendered from the Nightjar fixture and the demo TUI, with the config behind each tile:
Hero layouts (
hero.layout)stack(default): today's banner, text left, one to three tilted windows.spotlight: one large straight window running off the right and bottom edges.split: one window turned in perspective towards the text.row: text centered on top, one to four windows side by side.mosaic: a tilted wall of up to four shots, repeated, fading out towards the text.centered: text first, one window rising from the bottom edge and leaning back.hero.shotsnow takes as many ids as the layout shows (3, 1, 1, 4, 4, 1) and defaults to that many of the first shots. A longer list is an error that names the layout.Frame styles (
frame.style)browser: toolbar with back, forward, reload and an address bar showing the newframe.address('{url}'by default; tokens{url},{name},{title},{id},{lang}). Refused in tty mode; in cdp mode{url}is refused because the page is not known when framing.windows: a Windows 11 title bar, title left, caption buttons right.terminal: a terminal tab with a monospace title; in tty mode the bar takes the terminal background and drops the line under it.Backgrounds (
frame.background,hero.background){ type: 'mesh', colors }: two to five colors, the base plus glows from the four corners.{ type: 'dots', color, dot, spacing }: a subtle dot grid.{ type: 'noise', from, to, angle, amount }: a gradient with film grain from a fixed seed (same bytes every run).README layouts (
showcase readme --layout)table(default): today's table.rows: image and title plus caption side by side, alternating, one small table per entry.featured: the first image full width, the rest as a table of--colsthumbnails.details: one collapsible<details>per image, the first open.list: every image full width with its caption.Each went through
gh api markdown(gfm) and was screenshotted with GitHub's Markdown styles: every tag and attribute survived. I left out a<picture>light/dark layout: a config captures one color scheme, so there is no second image set to pair.Decision: all options are kept.
mainwas merged in (the Observatory theme, the v1 lockfiles, checkout v7) and the full gate re-run on the merged tree: 279 library tests, 163 site tests, both typechecks anddocs:buildpass.Checklist
minor) describing every new option.bun run typecheck,bun run test(23 files, 277 passed, 2 skipped: Windows only),bun run --cwd site test(156 pass),bun run docs:build. Nothing here touches paths, processes, the PTY or shims.hero.layout,frame.address, the three background forms) have JSDoc with@default, validation that lists the allowed values, tests for defaults and every rejected form; the reference drift test now keys form defaults by form type, sinceanglelives in two forms.