Skip to content

feat(composition): add page and settings primitives - #51

Merged
ditto-m[bot] merged 1 commit into
mainfrom
codex/page-composition
Aug 25, 2026
Merged

feat(composition): add page and settings primitives#51
ditto-m[bot] merged 1 commit into
mainfrom
codex/page-composition

Conversation

@ditto-m

@ditto-m ditto-m Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Problem

  • Fleet apps lack a shared page measure and restrained title hierarchy for content-heavy and utility routes.
  • Settings screens compose controls inconsistently across mobile and desktop, including accessible associations between row copy and controls.

Approach

  • Add PageContainer and PageHeader primitives with narrow, regular, and wide measures plus compact and regular title density.
  • Add SettingsGroup and SettingsRow primitives for divided settings rows, explicit heading hierarchy, accessible control labels, and a visually separate danger zone.
  • Add typography tokens and utility classes for app-owned content that needs the same hierarchy.
  • Keep product cards, campaign imagery, charts, and control selection app-owned instead of introducing a monolithic settings-page component.
  • Add showcase examples and responsive Playwright coverage for phone, tablet, and desktop layouts.

Review notes

  • Version advances to 0.49.0 because the change adds public exports without removing existing APIs.
  • Validated on the current-main merge tree with 140 unit tests, TypeScript type checking, package and showcase production builds, and 21 Playwright checks.
  • Completed two adversarial review rounds covering public API stability, accessibility, responsive behavior, CSS interoperability, and regression risk.

Impact

  • Consumers can adopt the new primitives incrementally; existing components and styles remain available.
  • Theme selection remains app-owned. Light-only apps can pin the light theme without exposing a dark-mode control.

Rollback

  • Revert the new exports, composition styles, showcase route, and 0.49.0 metadata before publishing the package.

@ditto-m
ditto-m Bot force-pushed the codex/page-composition branch from ac855c6 to 0d25f9a Compare August 25, 2026 12:06
@ditto-m
ditto-m Bot merged commit 796cb3c into main Aug 25, 2026
2 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.

0 participants