Skip to content

Make the buttons groups, each with its own place - #346

Merged
nstarman merged 1 commit into
mainfrom
add/placeable-buttons
Oct 6, 2026
Merged

nstarman merged 1 commit into
mainfrom
add/placeable-buttons

Conversation

@nstarman

@nstarman nstarman commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

Changing code or schema

What and why: the stars button should be separable from the rest — e.g. the buttons on the left and the stars on the right — and so should any other button. The buttons are individual elements, grouped by the name: buttons:… may now be given again. The first part is the card's own; each part after it is another group with its own keys, count to a row, area and place.

buttons:code,docs:left-buttons:stars:right        code and docs in a left rail, stars in a right one
buttons:all:fit-buttons:stars:bottom:right        everything as ever, the stars in the bottom row's right
buttons:code,docs-buttons:stars:top:right         the stars in a strip at the top right
buttons:code:left-buttons:stars:left:bottom       the stars at the foot of the same left rail
  • Each key is in one group (all in one, empty in any); a key two groups list, a group of none, and paperbutton/year/position/context outside the first group are refused.
  • Where a group sits: in the buttons' own area → a slot of their box at its v/h (the mechanism year/position/context already use); top → a strip of the card's padding; any other area (left, center, right, bottom) → a box of its own, .c-xfoot, set as the buttons' box is (column in a side, row under the words or at the bottom), figure stacking included.
  • No change for a card with one group: every new rule keys off an attribute only a group adds (data-xg, data-gper, data-xfeet, .c-xfoot); cardFace for one group is what it was (all existing tests unchanged and green).
  • Rendering: Card.astro for the first group and ButtonList.astro for the others; the embed page builds the same lists and boxes from the query. Both read cardFace.
  • Card Builder: carries other groups through its controls and back as the name has them (so editing something else keeps them); its own controls for editing groups are a follow-up.

Checked in a browser on the embed page (seven arrangements: rail + rail, center + bottom row, same-rail slots, top strip, figure + groups, per-row groups) and on the Software page through a preset using groups.

  • npm run test:schema passes; 596 unit tests (17 new: grammar, cardFace partition and placement, the embed's copy, CSS coverage, builder pass-through) and the build pass

Screenshots

unxt, drawn by the real card CSS on the embed page (/embed/unxt/?card=…).

buttons:all — one group, as before

default

buttons:code,docs:left-buttons:stars:right — code and docs in a left rail, stars in a right one

left-rail-stars-right-rail

buttons:code,docs-buttons:stars:bottom:right — the usual row under the words, stars in a bottom row at the right

stars-bottom-right

buttons:code,docs:left-buttons:stars:left:bottom — stars at the foot of the same left rail (a slot of its box)

stars-foot-of-same-rail

buttons:code,docs-buttons:stars:top:right — stars in a strip of the card's padding at the top right

stars-top-strip

size:480 with a left figure, buttons:code,docs-buttons:stars:right:bottom — stars at the foot of the right side

figure-left-stars-right

buttons:code:2-buttons:docs,stars:2:right:bottom:right — each group's rows its own

per-row-groups

the left/right arrangement in the dark theme

dark-left-and-right

🤖 Generated with Claude Code

@github-actions github-actions Bot added this to the ♾️&➡ milestone Oct 6, 2026
@github-actions

github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Preview: https://9d33f783.nstarkman-space.pages.dev

Built from d98b5082742d20471675dd64dd0826cb471a4214, including the four CV PDFs.
Updated on every push to this pull request.

The buttons are individual elements; buttons:… may now be given again, the
first the card's own and each part after it another group — its keys, its
count to a row, its area and place — with every key in one group.
buttons:code,docs:left-buttons:stars:right is the code and docs on the left
and the stars on the right.

Another group in the buttons' own area sits in a slot of their box (the
mechanism year, position and context use); at the top it is a strip of the
card's padding; in any other area (left, center, right, bottom) it has a box
of its own, .c-xfoot, set as the buttons' box is. All of that is additive CSS
for what a name adds: a card with one group draws as it did.

The first group alone has the paper button and the parts among the buttons.
The Card Builder carries other groups as the name has them; its controls for
them are a follow-up.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@nstarman
nstarman force-pushed the add/placeable-buttons branch from 53223f7 to d98b508 Compare October 6, 2026 18:42
nstarman added a commit that referenced this pull request Oct 6, 2026
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@nstarman
nstarman merged commit 681818e into main Oct 6, 2026
6 of 7 checks passed
@nstarman
nstarman deleted the add/placeable-buttons branch October 6, 2026 19:56
nstarman added a commit that referenced this pull request Oct 6, 2026
…roups (#346)

The card's CSS and markup changed, so the hash the recording is stamped with
no longer matched. The layouts it holds are identical: #346's rules are all
for what a name with more than one group adds.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant