Skip to content

feat: update material system and add new shadcn components - #27

Merged
WeekendSuperhero merged 7 commits into
mainfrom
weekendsuperhero/clean_up_colors_again
Oct 20, 2026
Merged

WeekendSuperhero merged 7 commits into
mainfrom
weekendsuperhero/clean_up_colors_again

Conversation

@WeekendSuperhero

@WeekendSuperhero WeekendSuperhero commented Oct 19, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Redesigned the glass API around four core materials and composable axes.
  • Added seven new material-aware shadcn components including Combobox, Menubar, and Field.
  • Resolved critical UI bugs related to clipped submenus, Chart resizing, and Command item clicks.
  • Overhauled theme engine CSS and updated core React dependencies.

Changes

Theme & Material System

  • Redesigned glass API with glass, frosted, crystal, and opaque materials.
  • Added borderColor="ink" axis to draw borders in the element's text color.
  • Restructured CSS blocks (engine.css, materials.css) to properly compose scoped gloss and fix cascade issues.
  • Improved light-mode contrast for the lapis preset and fixed selenite/moonstone tint anchors.

New Components

  • Added Combobox (powered by @base-ui/react), Empty, Field, Item, Kbd, Menubar, and Progress.

Component Fixes

  • Chart: Fixed ResizeObserver feedback loops and unmounted 0x0 hidden tab issues.
  • Dialog: Introduced DialogBody to restrict scrolling to the body while keeping headers/footers fixed.
  • Command: Fixed data-[disabled] selector bug that prevented mouse clicks on enabled items.
  • Menus: Portaled DropdownMenuSubContent and ContextMenuSubContent so glass backdrop-filter doesn't clip them.
  • Sonner: Refactored Toaster to be unstyled and utilize the glassMaterial API directly.
  • Table: Replaced overflow-hidden with overflow-clip to prevent sticky headers from scrolling incorrectly.
  • Pattern Backgrounds: Switched speed 0 and reduced motion to animation: none to stop off-screen compositor rendering.

Test plan

  • Verify new components render properly across light and dark modes in Storybook.
  • Confirm Command entries are fully clickable via mouse.
  • Ensure submenus (DropdownMenu, ContextMenu, Menubar) break out of their parent containers without clipping.
  • Validate ChartContainer no longer spams ResizeObserver warnings in the console.
  • Test Dialog with tall content to confirm the header and footer remain fixed.
  • Check Sonner toasts apply semantic status tints properly (success, error, warning, info).
  • Run all Vitest unit tests to confirm theme and component logic passes.

PR description generated by Agent

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

Deploying sistine with  Cloudflare Pages  Cloudflare Pages

Latest commit: b287793
Status: ✅  Deploy successful!
Preview URL: https://079f1094.sistine.pages.dev
Branch Preview URL: https://weekendsuperhero-clean-up-co.sistine.pages.dev

View logs

@agent-pr-updater agent-pr-updater Bot changed the title updated things feat: update material system and add new shadcn components Oct 19, 2026
@WeekendSuperhero WeekendSuperhero added the muse:review Request a Muse review round (re-add to re-run) label Oct 20, 2026
@github-actions github-actions Bot added muse:reviewing Muse review round in progress and removed muse:review Request a Muse review round (re-add to re-run) labels Oct 20, 2026
@github-actions

github-actions Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

🤖 Muse — Test Coverage · ✅ pass

Round 3 · reviewed b287793 · 0 open · 2 resolved this round

Summary: The pull request successfully addresses the remaining test coverage gaps. Both the combobox multiple selection chips and the carousel reduced motion behavior are now covered by automated tests.

✅ Resolved this round (2)
  • TST-2-1 — Added a new test suite in combobox.test.tsx that verifies multiple selection chips rendering, removal via named buttons, and addition.
  • TST-2-2 — Added tests in upstream-parity.test.tsx that mock window.matchMedia to verify autoplay halts under prefers-reduced-motion.

Re-run: add the muse:review label · force same-SHA re-run: muse:force

@github-actions github-actions Bot added the tests:sufficient Muse test review: coverage adequate for this diff label Oct 20, 2026
@github-actions

github-actions Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

🤖 Muse — Security · ✅ pass

Round 3 · reviewed b287793 · 0 open · 0 resolved this round

Summary: The PR introduces frontend UI components, styling refinements, and tests. URL query parameters in BackdropScene are strictly validated against hardcoded allowlists, preventing injection. No XSS vulnerabilities, exposed secrets, or unsafe input handling were identified.

Re-run: add the muse:review label · force same-SHA re-run: muse:force

@github-actions github-actions Bot added the security:clear Muse security review: no blocking findings label Oct 20, 2026
@github-actions github-actions Bot added review:needs-changes Muse code review: blocking findings open muse:error A Muse review agent failed — see workflow run and removed muse:reviewing Muse review round in progress security:clear Muse security review: no blocking findings tests:sufficient Muse test review: coverage adequate for this diff labels Oct 20, 2026
@github-actions github-actions Bot removed muse:error A Muse review agent failed — see workflow run review:needs-changes Muse code review: blocking findings open labels Oct 20, 2026
@WeekendSuperhero WeekendSuperhero added the muse:review Request a Muse review round (re-add to re-run) label Oct 20, 2026
@github-actions github-actions Bot added muse:reviewing Muse review round in progress security:clear Muse security review: no blocking findings tests:sufficient Muse test review: coverage adequate for this diff and removed muse:review Request a Muse review round (re-add to re-run) labels Oct 20, 2026
…ove buttons

Addresses the Muse test-coverage review (TST-2-1, TST-2-2):

- combobox: multiple-selection tests (chips render, a chip's remove button
  removes its value, choosing an option adds a chip)
- carousel: autoplay advances when motion is allowed and never advances, with
  no pause control, under prefers-reduced-motion

The chip test surfaced an unnamed icon-only remove button: ComboboxChip now
labels it "Remove <value>" (or `removeLabel`), as Base UI sets no name.
@github-actions github-actions Bot removed muse:reviewing Muse review round in progress security:clear Muse security review: no blocking findings labels Oct 20, 2026
@github-actions github-actions Bot removed the tests:sufficient Muse test review: coverage adequate for this diff label Oct 20, 2026
@WeekendSuperhero WeekendSuperhero added the muse:review Request a Muse review round (re-add to re-run) label Oct 20, 2026
@github-actions github-actions Bot added muse:reviewing Muse review round in progress security:clear Muse security review: no blocking findings tests:sufficient Muse test review: coverage adequate for this diff and removed muse:review Request a Muse review round (re-add to re-run) labels Oct 20, 2026
@github-actions

Copy link
Copy Markdown

🤖 Muse — Code Review · ✅ pass

Round 3 · reviewed b287793 · 0 open · 0 resolved this round

Summary: The test coverage for combobox chips and carousel reduced motion is solid. The logic for naming the chip remove buttons gracefully handles string and number children, ensuring correct ARIA labels. No issues found.

Re-run: add the muse:review label · force same-SHA re-run: muse:force

@github-actions github-actions Bot added review:approved Muse code review: no blocking findings muse:approved All Muse review agents positive and removed muse:reviewing Muse review round in progress labels Oct 20, 2026
@WeekendSuperhero
WeekendSuperhero merged commit e63247e into main Oct 20, 2026
19 checks passed
@WeekendSuperhero
WeekendSuperhero deleted the weekendsuperhero/clean_up_colors_again branch October 20, 2026 14:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

muse:approved All Muse review agents positive review:approved Muse code review: no blocking findings security:clear Muse security review: no blocking findings tests:sufficient Muse test review: coverage adequate for this diff

Development

Successfully merging this pull request may close these issues.

1 participant