Public product + documentation + visual pass v2 - #421
Merged
Conversation
…presentation
- Add the Visual Feature Coverage Matrix (docs/VISUAL_FEATURE_COVERAGE.md): a
persistent, release-maintained inventory of every user-facing capability and
its demo/media/README/Pages/docs coverage with an explicit disposition.
- Rewrite tools/screenshots into a manifest-driven harness:
- lib/presentation.mjs: one canonical mid-grey slicer/CAD documentation look
(DOC_BACKGROUND), applied via the public renderer.setTheme() — a doc setting,
not a library default (the renderer still ships a transparent background).
- lib/browser.mjs: auto-locate a launchable Chromium from the Playwright cache
(tries candidates in order, tolerating an OS-blocked revision), locate the
bundled ffmpeg for animation, and the deterministic GL-readback.
- shots.manifest.json: every image as data (source/params/class/caption/alt).
- capture.mjs: one entry point over toolpath/canvas2d/model pages; fixes the
stale activeCamera->camera handle rename that broke the old harness.
- Fold capture-2d.mjs / capture-model.mjs into the unified runner.
- Regenerate all 14 existing images on the mid-grey presentation.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…mo corpus - New MIT-clean RS274NGC parametric fixture (test-data/fixtures/parametric/ bolt-circle.ngc): a bolt circle + frame COMPUTED from parameters via a while-loop, a subroutine, and degree trig. Verified parametricProgram:known, cutMoves:known, 34 computed segments. - Add it to the demo corpus so it is loadable interactively and by the harness. - Extend the capture runner with a non-rectangular bed recipe (auto-fit a circular/polygon BedShape around the model and frame the bed). - New feature-proof media: parametric-bolt-circle, bed-circular, bed-polygon, render-tubes, render-lines — all on the mid-grey documentation presentation. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…triggers - Release "teeth": generate RELEASE_REVIEW.md from a changed-capability inventory (diff since previous v* tag + changelog bullets) in stamp-release-docs.mjs; block dev->main promotion in check-release-docs.mjs until every changed-package disposition and the Product/Docs/Visual markers are resolved for the exact version. Bootstrap RELEASE_REVIEW.md resolved for v0.18.0. - Pages: copy docs/media -> docs-site/media in build-api.mjs; add docs/manual/** and docs/media/** to docs-pages.yml triggers; register the previously-dead concept-parametric-programs page; link-check now covers docs/manual/**. - Standard/process: USER_FACING_DOCS_STYLE (coverage rule, two visual classes, mid-grey capture default, recognition test), release-process (review step), CLAUDE (enforced review + matrix; 13->14), PR template (enforced artifact). - Fix stale package-count prose (9 -> 14) in publish.mjs / release-publish.yml. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- GitHub Pages homepage (docs/manual/index.md): replace the architecture-first opening with a product-first hero + a six-card feature grid (hero/card CSS in typedoc-theme.css, theme-aware). Leads with what you can build, not ToolpathIR. - New comprehensive visual feature gallery (docs/manual/feature-gallery.md), organized by capability area with real screenshots + deep links; registered in typedoc.manual.json and linked from the homepage + README. - Add screenshots to concept pages: parametric (bolt circle), live progress (known/approx pair), workers (tubes vs lines). - README: cover the v0.18.0 gaps — parametric RS274NGC programs (with render + snippet), non-rectangular beds, capture()/transparent export, render diagnostics, parallel geometry pool + staged/held reveal, render scope / per-plate; fix stale "dark plate" alt; link the feature gallery. - Raise the API-reference typedoc baseline 3->4 for the benign `gcode` highlight-language note (shiki has no gcode grammar; block still renders). Pages build verified: manual 1/1 and API 4/4 warnings within budget, media copied to docs-site/media, every image reference resolves, status line intact. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
… color, nav Surface previously-hidden capabilities in the showcase demo (verified live in a headless browser): - Capture PNG button → renderer.capture() → downloads an 880 KB PNG Blob. - Render diagnostics panel → renderer.getRenderStats(): backend, hardware-vs- software GPU, geometry mode + parallelism, segment/draw counts, tube bytes, and the parse/build/first-frame/ready timings. - Progressive-preview selector (auto / lines / hold / off). - Two more color modes — By speed (feedrate) and By object — capability-gated and honest like the existing ones. - "More demos" nav linking the model, model-viewer, 2D, CNC-validation, and headless-still harness pages so they are discoverable from the showcase. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Update the Visual Feature Coverage Matrix to reflect what landed (mid-grey regen, parametric/bed/tubes-lines media, README + gallery + concept coverage, demo exposure) and to track the remaining to-capture list (scrub/progressive animations, framing/scope comparisons, diagnostics-panel + transparent-capture screenshots) so the next release review picks them up. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.
Second major public-product / documentation / visual pass, plus the release machinery to keep every future release doing it. No package source changed — this is docs, media, demo, screenshot harness, docs-build, and release tooling.
Systematized (persists for every release)
docs/VISUAL_FEATURE_COVERAGE.md— a maintained matrix of every user-facing capability × demo / media / README / Pages gallery / docs, with an explicit disposition and an honest to-capture remainder.npm run versiongeneratesRELEASE_REVIEW.mdfrom a changed-capability inventory (diff since the previousv*tag);docs:release-checkblocks dev→main promotion until every changed-package disposition + the Product/Docs/Visual markers are resolved for the exact version. Bootstrapped resolved for v0.18.0.tools/screenshots/lib/presentation.mjs), applied via the publicrenderer.setTheme()— a doc setting, not a library default.USER_FACING_DOCS_STYLE(coverage rule, two visual classes, recognition test),release-process,CLAUDE.md, PR template all updated; stale "9/13 packages" prose fixed to 14.Applied now
shots.manifest.json), auto-locates a launchable Chromium, ffmpeg-ready for animation, fixes the staleactiveCamera→camerahandle bug. All 14 existing images regenerated on mid-grey + 5 new (parametric-bolt-circle,bed-circular,bed-polygon,render-tubes,render-lines).capture()/transparent export, render diagnostics, parallel geometry pool + staged/held reveal, render scope / per-plate; fixed stale "dark plate" alt; links the gallery.docs/manual/**,docs/media/**), the missing media-copy step, and the dead (unregistered) parametric page.capture()(Capture PNG),getRenderStats()diagnostics panel,progressivePreviewselector, By-speed + By-object color modes, a parametric fixture, and nav to the model/2D/CNC/still harness pages. Verified live in a headless browser.Verification
docs-site/media; every image reference resolves; homepage status line intact.docs:linksOK (239).docs:release-checkPASS. eslint + prettier clean on all gated files. Demo capture/diagnostics/color/progressive verified in-browser.Honest remainder (tracked in the matrix)
Temporal animations (scrub, progressive/held reveal), before/after comparisons (object-aware framing, render scope, fresh-vs-stale progress), and a few feature-proof stills (diagnostics panel in-context, transparent-capture checkerboard, color legends). Recorded as dispositions so the next release review picks them up.
🤖 Generated with Claude Code