Repository navigation
Conversation
…ad link Replace font-bold text-7xl heading with font-serif typography, drop the old sharedStyles.primaryButton() import in favour of the Button component, add the icon pattern used by other empty states, and remove the underlined "Help Center" span that had no href and would confuse users who clicked it. Co-Authored-By: AgenticDiego <noreply@carvallo.io> Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KiiHGPth3kxcEePxgts3AF
Contributor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
The not-found page heading changed from "We can't find this page" to "Page not found" in the preceding commit, so update the E2E assertion to match. Co-Authored-By: AgenticDiego <noreply@carvallo.io> Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KiiHGPth3kxcEePxgts3AF
This branch had an error being deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Daily Product Improvement
Summary
Redesigned the 404 not-found page to match the app's established design language: replaces the old
font-bold text-7xlheading andsharedStyles.primaryButton()helper with the app'sfont-seriftypography and the sharedButtoncomponent. Removes the underlined "Help Center" span that had nohrefand would confuse users who clicked it.Recommendations Reviewed
MiniStatsandRsvpCardindependently reduce the same RSVP event data with near-identical logicgetRsvpTotals(events)utilityVendorsCardhas no loading state — flashes empty state while query is pendingBudgetCardalready hastodaydate initialised to''and filled inuseEffect, causing visible hydration flashsuppressHydrationWarningwith a stable SSR value⚠symbol has no tooltip or accessible labelwindow.dispatchEvent(new CustomEvent('dashboard:add-task'))bypasses React's component modelvendors/page.tsxsilently redirects to/instead of triggering the error boundarymetadata.titleuses placeholder"Your Wedding Website"isLoading && initialEvents.length === 0renders<p>Loading events...</p>instead of a skeletondisabledwith no explanation for whyevent.startTime - event.endTimerenders raw DB strings (e.g.14:00:00)2:00 PM)weddingDetailsLoadFailedshows a dead-end error paragraph with no retry<h2>then uses<h3>for peer-level sections<h2>authGetandauthPosthelpers are copy-pasted between two settings filesauth-client-helpers.tsmoduleTelegramConnectCardpairing link stays on screen forever; "Connect" button unchanged when already connectedfont-bold text-7xlheading doesn't match app typography; uses oldsharedStyles.primaryButton(); fake underlined link with no hreffont-serif, useButtoncomponent, remove dead link<ErrorStateView>componentGuestSearchFilteruses hand-rolled dropdowns with manualuseOuterClickinstead of RadixSelect/DropdownMenuaria-labelGuestsViewis a ~1000-line monolith owning filter, sort, drawer, and mutation stateuseHouseholdDrawerhookreact-iconsin guest-search-filter while everywhere else uses Lucidereact-iconsimports with Lucide equivalentsSelected Improvement
Not-found page design and dead-link fix —
src/app/not-found.tsxWhy This Was Selected
The 404 page was a visible UX inconsistency: its heading style (
font-bold text-7xl) predates the app's current design language, and it imported an oldsharedStyles.primaryButton()helper instead of theButtoncomponent the rest of the app uses. It also showed a fake underlined "Help Center" link that triggered no action when clicked — actively confusing users. The fix is a single file, requires no API or routing changes, and brings the most user-facing error screen up to the same standard as every other screen in the product.No open pull request covers this file.
Changes Made
sharedStylesimport; no longer neededButtonimport from~/components/ui/buttonfont-bold text-7xl<h1>withfont-serif text-2xlheading matching app typography404label infont-mono uppercase tracking-[0.18em]above the heading (same pattern as other contextual labels)VendorEmptyStateandNoGuestsViewfont-mono text-[0.65rem] text-foreground/55 leading-relaxed tracking-widerto match empty-state descriptions throughout the app<Link className={sharedStyles.primaryButton()}>with<Button asChild><Link href="/">…</Link></Button><span className='underline'>Search our Help Center or contact us.</span>dead linkFiles Changed
src/app/not-found.tsxVerification
tsc --noEmit: no new errors (one pre-existing tsconfigbaseUrldeprecation warning unrelated to this change)biome check src/app/not-found.tsx: clean, no diagnosticssharedStylesimport (now unused in this file), addedButton, confirmedasChildprop is supported by the project'sButtoncomponentFuture Recommendations
<ErrorStateView>component to replace 4 near-identical error boundary fileserror.tsxto escape persistent errorsreact-iconsin guest-search-filter with Lucide icons<p>Loading events…</p>with a skeletonevent.startTime/endTimeraw DB strings to locale timeGuestSearchFilterhand-rolled dropdowns: migrate to Radix Select/DropdownMenuGuestsViewmonolith: extract drawer state touseHouseholdDrawerhookwindow.dispatchEventcustom event for task dialog; use React contextGitHub Issues Created or Proposed
No GitHub issues created in this run. The large recommendations above (guest filter refactor, GuestsView monolith, dashboard custom event) each meet the criteria for a tracked issue, but have been deferred to avoid scope creep. They can each be filed in a follow-up run once the open PR backlog is smaller.
🤖 Generated with Claude Code
https://claude.ai/code/session_01KiiHGPth3kxcEePxgts3AF
Generated by Claude Code