Skip to content

fix(learn): sticky TOC, 18px body measure, unified fact lists, citation landing feedback - #55

Merged
Bissbert merged 1 commit into
mainfrom
fix/learn-rendering
Jul 16, 2026
Merged

fix(learn): sticky TOC, 18px body measure, unified fact lists, citation landing feedback#55
Bissbert merged 1 commit into
mainfrom
fix/learn-rendering

Conversation

@Bissbert

Copy link
Copy Markdown
Contributor

Summary

  • In-page table of contents for long articles: sticky desktop rail with IntersectionObserver scroll-spy plus a mobile collapsible <details> version, gated to articles with 4+ sections, fed by a shared section-id helper so anchors always match headings.
  • Body copy now renders at the intended 18px / ~70ch measure by propagating prose-lg into SectionRenderer's nested prose scopes (tables are unaffected).
  • PropertyList converged to a semantic single-column dl/dt/dd, unifying the three name/value fact grammars and improving screen-reader semantics.
  • Citation superscripts get an explicit light-mode crystal color plus a :target landing flash on the referenced bibliography row, with light/dark tints and a reduced-motion fallback.
  • Fixes: hub "Start here" 5th card (slug pointed at a bare directory, now points at .../overview), 390px filter placeholder clipping, DataTable mobile overflow fade hint.
  • docs/authoring-learn.md documents when to use items: / table: / prose in learn content YAML.

Test plan

  • npm run test -- --run — 502 tests passing
  • Browser-verified in both light and dark themes
  • CI (ci.yml) green
  • Squash merge to main, verify production deploy

…on landing feedback

- in-page table of contents for long articles (sticky desktop rail w/
  IntersectionObserver scroll-spy + mobile collapsible details, >=4-section
  gate) fed by a shared section-id helper so anchors always match
- body text now renders at the intended 18px / ~70ch measure (propagated
  prose-lg into SectionRenderer's nested prose scopes; tables unaffected)
- PropertyList converged to a semantic single-column dl/dt/dd (unifies the
  three name/value fact grammars, better screen-reader semantics)
- citation superscripts get an explicit light-mode crystal color + a
  :target landing flash on the referenced bibliography row (light/dark
  tints, reduced-motion fallback)
- fixes: hub "Start here" 5th card (slug pointed at a bare directory, now
  .../overview), 390px filter placeholder clipping, DataTable mobile
  overflow fade hint
- docs/authoring-learn.md documents when to use items:/table:/prose

502 tests, browser-verified in both themes.
@github-actions

Copy link
Copy Markdown

🚀 Preview deployed to: https://e73d65fb.gemmology-dev.pages.dev

@Bissbert
Bissbert merged commit be2486c into main Jul 16, 2026
5 of 6 checks passed
@Bissbert
Bissbert deleted the fix/learn-rendering branch July 16, 2026 14:32
Bissbert added a commit that referenced this pull request Jul 16, 2026
…-link & citation-flash polish (#56)

- subsections now render comparison/callout/crystal fields (subsectionSchema + Subsection interface + render branches were missing them) — restores 10 silently-dropped content blocks across 6 articles incl. crystallography-advanced's Open-vs-Closed comparison and 3 CDL-example demos, plus a dev-mode warning for unhandled subsection keys
- fixes a secondary crystal-subsection misroute into CrystalSystemCard
- fixes ordered-list counter-badge overlap under prose-lg (replicated custom ol/li/::before rules into typography.lg — regression from PR #55)
- reference DOI/URL links now visible (crystal-700 + underline) in light mode for WCAG 1.4.1
- citation :target flash lengthened to ~2.6s hold-then-fade
- learn hub intro broken into a scannable value-line + 3-item feature list
- 502 tests, browser-verified both themes
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