Skip to content

1.0.0, the marketplace release

Latest

Choose a tag to compare

@uchimata2 uchimata2 released this 14 Sep 23:57
· 2 commits to master since this release
e9ab628

The release that goes to Anthropic's community plugin marketplace.

Thirty tasks closed since 0.7.0. Most of them change what you can do with a deck in front of people:

  • A word in a sentence can carry its definition. Hover shows it in a small bubble, a press pins it, and the reading view and print show the definition beside the word.
  • The page controls gain first and last buttons, and the slide ruler has marks you can aim at, with a readout.
  • A source link can open its document at the heading the slide cites.
  • A slide's one-time motions wait until the slide has finished arriving.
  • A press that starts on the edge of a page button still turns the page.
  • A deck's source names the htmldeck version that built it. Nothing on a slide shows it.

The checks got more accurate as well. The render tool now sees a change in SVG paint, a scripted hover state and a figure painting over its neighbour. A deck can also record a deviation from a rule that its owner licensed.

The number is 1.0.0 because this is the version going to the marketplace. The deck contract changed shape too, and by this project's own rule that alone would have made it at least a minor release.

Upgrading a deck built on 0.7.0 or earlier

Carried from docs/PUBLISHING.md section 8.1, which is the home for this and stays true after the release page scrolls away. Only the link targets are changed, to absolute ones that resolve here.

What it newly required

One contracted part became required, and one declaration moved. .ruler-tip, the ruler's readout, is 1 p inside .ruler and ships in the skeleton (T-307, given its drop by T-314). The chart-engine declaration moved from <meta name="htmldeck-chart-engine"> in head to an htmldeck-chart-engine: line in the head comment, because sync deleted the meta (T-311). Optional additions, which take nothing away: .term, .term-btn and .term-bub, an inline term and its definition bubble (T-309); data-qv-at on a quick-view opener, naming a heading in the source (T-271); the --term-line token (T-315). .is-back and .chev go from 0-1 to 0+ (T-307). A GENERATOR region carries <meta name="generator"> at the installed version, and sync writes it (T-318). The shared shell moved in all three regions. A contracted part added is at least a minor, and the major is the owner's ruling of 2026-09-13 that the marketplace release is 1.0.0.

What newly fails

shell.py check on every deck built before this release: SKELETON, COMPONENTS and SCRIPT all differ. check.py — DS-229, every authored part is the element, place and count the contract names, on every such deck, because none carries a .ruler-tip. DS-122 on a deck that declared a chart engine in the old <meta>, with a reason naming where the line went (T-311). Measured rather than derived, unlike 0.7.0's row: today's check.py against all four decks this repository shipped at v0.7.0 failed DS-229 on each and nothing else. Fifteen rule rows in DESIGN-SYSTEM.md changed text, and none of them fails any of the four.

The smallest edit

python tools/deck/shell.py sync <deck> --write settles the three regions, and .ruler-tip and the generator tag with them. Verified on sort-window at v0.7.0: DS-229 fails, then sync, then check.py exits 0. For a chart engine declared in a <meta>, delete the meta and put htmldeck-chart-engine: engine=…; version=…; licence=…; output=svg on its own line in the head comment.

Installing

Inside Claude Code:

/plugin marketplace add uchimata2/htmldeck
/plugin install htmldeck@htmldeck

Upgrading an installed copy runs in a terminal instead, and refreshing the marketplace is not an
upgrade:

claude plugin update htmldeck@htmldeck

Restart Claude Code afterwards. The @htmldeck suffix names the marketplace and is not optional.