Skip to content

fix(settings): reduce h3 subsection size to create clear heading hierarchy - #237

Draft
dccakes wants to merge 1 commit into
mainfrom
claude/sharp-feynman-k07g18
Draft

dccakes wants to merge 1 commit into
mainfrom
claude/sharp-feynman-k07g18

Conversation

@dccakes

@dccakes dccakes commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Daily Product Improvement

Summary

Reduced the three h3 subsection headings on the Settings page ("Plugins", "Organization Members", "Connected Apps") from text-xl to text-lg. Previously they shared the same visual size as the h2 "Wedding Details" heading, producing a flat, hard-to-scan layout. Now the page has a clear two-level hierarchy.

Recommendations Reviewed

  • Area: src/app/(authenicated)/settings/page.tsx
    Issue: h2 "Wedding Details" and all three h3 subsections ("Plugins", "Organization Members", "Connected Apps") use text-xl, giving every heading the same visual weight. The page reads as a flat list rather than a structured hierarchy.
    Recommendation: Reduce h3 elements to text-lg so the top-level heading is visually dominant and subsections are clearly subordinate.
    Type: UX/UI · Priority: Medium · Effort: Small

  • Area: src/components/dashboard/planning-overview.tsx
    Issue: Both MiniStats and RsvpCard contain nearly identical reduce() calls to compute RSVP totals from events data, duplicating business logic in the same file.
    Recommendation: Extract a shared calculateRsvpSummary() helper to eliminate the duplication.
    Type: Frontend cleanup · Priority: Medium · Effort: Small

  • Area: src/components/dashboard/dashboard-topbar.tsx
    Issue: today state initialises as '' and gets set in useEffect, briefly rendering an empty string where the date label appears on desktop.
    Recommendation: Add a stable minimum-width placeholder so there is no layout shift before the date populates.
    Type: UX · Priority: Low · Effort: Small

  • Area: src/components/guest-list/guest-search-filter.tsx
    Issue: Three filter dropdowns use custom useOuterClick-based show/hide state and older react-icons libraries instead of the app-standard Radix UI components, creating keyboard/accessibility gaps and visual inconsistency.
    Recommendation: Replace with shadcn/ui Popover or DropdownMenu components.
    Type: Frontend cleanup · Priority: Medium · Effort: Large

  • Area: Multiple large component files (guests-view.tsx ~999 lines, vendor-detail-panel.tsx ~936 lines, organization-members-settings-card.tsx ~884 lines)
    Issue: These files have grown very large and are hard to navigate and review.
    Recommendation: Decompose into smaller focused sub-components.
    Type: Frontend cleanup · Priority: Medium · Effort: Large

  • Area: tsconfig.json
    Issue: After the path-alias normalisation commit (f54d104), the old @/* alias still exists in tsconfig as dead config alongside ~/*.
    Recommendation: Remove the @/* path entry from tsconfig.json to keep configuration clean.
    Type: Frontend cleanup · Priority: Low · Effort: Small

Selected Improvement

Reduce h3 subsection headings on the Settings page from text-xl to text-lg.

Why This Was Selected

The settings page is visited by every user who wants to update names, toggle plugins, manage collaborators, or connect apps. The flat heading hierarchy — where h3 subsections visually weigh the same as the top-level h2 — makes the page harder to scan quickly. The fix is a single-file, zero-risk change with immediate UX benefit. No open PR overlaps with it (PR #235 touches settings/loading.tsx; PR #224 touches wedding-settings-form.tsx).

Changes Made

  • Changed h3 class from font-serif text-foreground text-xl to font-serif text-foreground text-lg for "Plugins", "Organization Members", and "Connected Apps" in src/app/(authenicated)/settings/page.tsx.

Files Changed

  • src/app/(authenicated)/settings/page.tsx

Verification

  • Visually confirmed the diff: three heading class changes, no logic touched.
  • No imports added or removed.
  • The change is a pure Tailwind utility swap — no runtime or build risk.

Future Recommendations

  • RSVP summary calculation duplication in planning-overview.tsx
    Priority: Medium · Effort: Small · Reason not included: No user-visible impact; maintainability-only improvement that deserves its own focused commit. · Should become GitHub issue: No

  • DashboardTopbar date layout shift
    Priority: Low · Effort: Small · Reason not included: Minor and intermittent; lower value than the heading hierarchy fix for today. · Should become GitHub issue: No

  • guest-search-filter.tsx custom dropdown — replace with Radix UI
    Priority: Medium · Effort: Large · Reason not included: Large scope — multiple dropdowns need rework including accessibility and icon library migration; needs careful QA. · Should become GitHub issue: Yes

  • Large component file decomposition (guests-view, vendor-detail-panel, org-members-card)
    Priority: Medium · Effort: Large · Reason not included: Cross-cutting refactor that requires careful split planning and regression testing. · Should become GitHub issue: Yes

  • Remove dead @/ path alias from tsconfig.json
    Priority: Low · Effort: Small · Reason not included: Developer-only, no user impact; can be batched with a future cleanup PR. · Should become GitHub issue: No

GitHub Issues Created or Proposed

No issues created today. The two Large recommendations (guest-search-filter Radix UI migration, large component decomposition) are candidates for future issues but were not filed — they need product/design input on scope before they're ready for structured tracking.


Generated by Claude Code

…archy

Subsection headings (Plugins, Organization Members, Connected Apps) were
using text-xl — the same size as the parent h2 (Wedding Details) — making
the page read as a flat list rather than a structured hierarchy. Reducing
them to text-lg gives the page a clear two-level visual hierarchy so users
can scan and orient quickly.
@vercel

vercel Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
scv Error Error Aug 5, 2026 2:26pm

@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Jest Test Coverage

Coverage Summary

Lines Statements Branches Functions
Coverage: 81%
81.71% (35129/42990) 82.92% (3734/4503) 68.04% (1037/1524)

This branch had an error being deployed

1 failed deployment
Preview — 706c59be Deployed Aug 5, 2026 by vercel[bot]
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