Skip to content

feat(react): add themed workshop coverage - #55

Merged
aryasaatvik merged 2 commits into
split/react-domain-actionsfrom
split/react-workshop-themes
Aug 30, 2026
Merged

feat(react): add themed workshop coverage#55
aryasaatvik merged 2 commits into
split/react-domain-actionsfrom
split/react-workshop-themes

Conversation

@aryasaatvik

Copy link
Copy Markdown
Member

Summary

  • add Neutral, Monochrome, Emerald, Samva, Dark Plus, Solarized, and Tokyo Night presets
  • keep theme and color-scheme controls in the workshop's global top toolbar
  • keep story-specific controls in the full-width bottom panel
  • cover fonts, dropdown stacking, Add record visibility, panel layout, and host lifecycle flows

Validation

  • 59 React unit tests
  • 4 package artifact tests
  • 24 Playwright browser tests across workshop flows and themes
  • repository lint, format, and diff checks

Local visual flows were exercised against the isolated workshop server; no existing docs server was restarted.

@github-actions

github-actions Bot commented Aug 30, 2026

Copy link
Copy Markdown
Contributor

Tegami

This repository uses Tegami to manage releases. When your changes affect published packages, add a changelog file under .tegami/ before merging.

Create a changelog → · Changelog format

Release preview

Package Bump Version
domainkit minor 0.3.10.4.0
@domainkit/react minor 0.3.10.4.0

Changelogs in this PR

Changelog Title
react-workshop-themes.md Add host theme presets

Run bun run tegami locally to create a changelog interactively.

Managed by Tegami.

@greptile-apps

greptile-apps Bot commented Aug 30, 2026

Copy link
Copy Markdown

Greptile Summary

The PR expands the React workshop with seven light/dark theme presets and moves global appearance controls into the top toolbar.

  • Adds typed theme definitions, URL serialization, and runtime theme selection.
  • Updates workshop styling, story controls, host lifecycle notifications, and disconnect behavior.
  • Adds unit and browser coverage for themes, layout, dropdown stacking, record controls, and lifecycle flows.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Important Files Changed

Filename Overview
packages/react/examples/vite/src/workshop-themes.ts Defines seven typed, token-complete workshop theme presets and lookup helpers.
packages/react/examples/vite/src/workshop.tsx Moves appearance state into global toolbar controls, applies presets to DomainKit, and surfaces lifecycle events through host notifications.
packages/react/examples/vite/src/workshop.css Styles the themed workshop shell, toolbar selects, host-composed elements, notifications, and dropdown constraints.
packages/react/tests/browser/theme.spec.ts Expands browser coverage across theme propagation, dialogs, host composition, controls, geometry, and lifecycle notifications.
packages/react/tests/workshop.test.ts Adds unit coverage for preset completeness, validation, and URL parsing.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart LR
  URL[URL parameters] --> State[Workshop state]
  Toolbar[Theme and color-scheme toolbar] --> State
  Story[Story controls] --> State
  State --> Theme[Selected light or dark theme preset]
  Theme --> Root[DomainKit root]
  State --> Preview[Workshop preview]
  Preview --> Events[Lifecycle events]
  Events --> Notice[Host notification]
Loading

Reviews (5): Last reviewed commit: "chore(release): note React workshop them..." | Re-trigger Greptile

greptile-apps[bot]
greptile-apps Bot previously approved these changes Aug 30, 2026
@aryasaatvik
aryasaatvik force-pushed the split/react-workshop-themes branch from 254cf6d to e0601a3 Compare August 30, 2026 22:48
@greptile-apps
greptile-apps Bot dismissed their stale review August 30, 2026 22:48

Dismissed because a newer commit was pushed; Greptile will re-review the current head.

greptile-apps[bot]
greptile-apps Bot previously approved these changes Aug 30, 2026
@aryasaatvik
aryasaatvik force-pushed the split/react-workshop-themes branch from e0601a3 to 70195d0 Compare August 30, 2026 22:52
@greptile-apps
greptile-apps Bot dismissed their stale review August 30, 2026 22:52

Dismissed because a newer commit was pushed; Greptile will re-review the current head.

greptile-apps[bot]
greptile-apps Bot previously approved these changes Aug 30, 2026
@aryasaatvik
aryasaatvik force-pushed the split/react-workshop-themes branch from 70195d0 to a4b8a39 Compare August 30, 2026 23:06
@greptile-apps
greptile-apps Bot dismissed their stale review August 30, 2026 23:06

Dismissed because a newer commit was pushed; Greptile will re-review the current head.

greptile-apps[bot]
greptile-apps Bot previously approved these changes Aug 30, 2026
@aryasaatvik
aryasaatvik force-pushed the split/react-workshop-themes branch from a4b8a39 to a8236cd Compare August 30, 2026 23:08
@greptile-apps
greptile-apps Bot dismissed their stale review August 30, 2026 23:08

Dismissed because a newer commit was pushed; Greptile will re-review the current head.

@aryasaatvik
aryasaatvik merged commit 881b7cf into main Aug 30, 2026
3 checks passed
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