Repository navigation
Full-width layout migration + project-view redesign reference - #105
Conversation
Linear/Cloudflare-style restyle of the project view (sidebar + full page), same information architecture. Lifted dark-slate background with high-contrast text, full-width uniform rows, worktree-as-collapsible-group-header (agents/ services as rows), and empty worktrees as collapsed group headers. Status carried by a single accent color (green = running). Reference target for the ProjectSidebar + dashboard implementation. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Remove the PageWidth variants (standard/narrow/full) from the shared Page primitive so every screen renders edge-to-edge at full width with consistent padding, instead of being capped at 900–1100px. Direct cutover: drop the `width` prop and the two `width="narrow"` callers (settings, dashboard). Prerequisite for the project-view redesign, which assumes a full-width layout. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
✅ Files skipped from review due to trivial changes (1)
📝 WalkthroughWalkthroughPage's public API drops the ChangesPage Layout Width Prop Removal
Project View HTML Mockup
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (2)
docs/mockups/project-view.html (2)
3-5: ⚡ Quick winAdd viewport meta tag for proper mobile rendering.
The PR mentions mobile testing at 390px width, but the document lacks a viewport meta tag. Without it, mobile browsers will zoom out to fit the desktop layout rather than rendering at device width, breaking the responsive behavior.
📱 Add viewport meta tag
<head> <meta charset="utf-8" /> +<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>aimux mock — linear recipe</title>🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/mockups/project-view.html` around lines 3 - 5, The page is missing a viewport meta tag which prevents accurate mobile rendering; inside the <head> (near the existing <meta charset="utf-8" /> and <title> elements) add a viewport meta tag (e.g., name="viewport" content="width=device-width, initial-scale=1") so the layout will render at device width for mobile testing at 390px and respect responsive styles.
102-106: 💤 Low valueConsider adding accessibility attributes as a reference pattern.
Interactive elements use
divwithcursor:pointerbut lack semantic button roles or keyboard accessibility. Since this is a reference mockup that may inform the actual implementation, addingrole="button"andtabindex="0"to interactive elements, plusaria-labelattributes for status dots and chevrons, would demonstrate accessible patterns.♿ Example accessibility enhancements
- <div class="sgrp"><span class="chev">▾</span><span class="dot run"></span><span class="nm">Main Checkout</span><span class="br">master</span></div> + <div class="sgrp" role="button" tabindex="0" aria-expanded="true"><span class="chev" aria-hidden="true">▾</span><span class="dot run" aria-label="Running"></span><span class="nm">Main Checkout</span><span class="br">master</span></div> - <div class="schild sel"><span class="dot run"></span><span class="nm">codex-poymed</span><span class="m">codex</span></div> + <div class="schild sel" role="button" tabindex="0"><span class="dot run" aria-label="Running"></span><span class="nm">codex-poymed</span><span class="m">codex</span></div>🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/mockups/project-view.html` around lines 102 - 106, The interactive mockup uses non-semantic clickable blocks like the divs with class "sgrp" and "schild" and decorative spans "chev", "dot", and action span "a"; update those elements to include accessibility attributes: add role="button" and tabindex="0" to the interactive divs (sgrp/schild), and add descriptive aria-label attributes to the chevron (span.chev), status dot (span.dot with run/off), and action span (span.a) so assistive tech can convey purpose; ensure the interactive container and actionable spans have consistent labels (e.g., "Expand branch", "Status: running", "Delete checkout") to serve as a reference pattern for implementation.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@docs/mockups/project-view.html`:
- Around line 3-5: The page is missing a viewport meta tag which prevents
accurate mobile rendering; inside the <head> (near the existing <meta
charset="utf-8" /> and <title> elements) add a viewport meta tag (e.g.,
name="viewport" content="width=device-width, initial-scale=1") so the layout
will render at device width for mobile testing at 390px and respect responsive
styles.
- Around line 102-106: The interactive mockup uses non-semantic clickable blocks
like the divs with class "sgrp" and "schild" and decorative spans "chev", "dot",
and action span "a"; update those elements to include accessibility attributes:
add role="button" and tabindex="0" to the interactive divs (sgrp/schild), and
add descriptive aria-label attributes to the chevron (span.chev), status dot
(span.dot with run/off), and action span (span.a) so assistive tech can convey
purpose; ensure the interactive container and actionable spans have consistent
labels (e.g., "Expand branch", "Status: running", "Delete checkout") to serve as
a reference pattern for implementation.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: e8c65b75-5185-48fc-bade-330496fc2975
📒 Files selected for processing (4)
app/app/(main)/(tabs)/(dashboard)/index.tsxapp/app/(main)/(tabs)/(settings)/settings.tsxapp/components/PageLayout.tsxdocs/mockups/project-view.html
Addresses CodeRabbit nitpick so the mockup renders at device width on mobile. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
@coderabbitai addressed your two nitpicks on
|
|
Tip For best results, initiate chat on the files or code changes.
Both items considered addressed. ✅ (ᵔᴥᵔ) |
Full-width layout migration + project-view redesign reference
Why
Prep for the project-view redesign. The redesign target (a Linear/Cloudflare-style layout) assumes the content area spans the full window, but today every page is capped at 900–1100px via the shared
Pageprimitive, leaving a large empty band on desktop. Before redesigning any single page, we unify the whole app onto one full-width layout so per-page facelift passes can follow.What
1. Full-width
Pagemigration (f9c370d)components/PageLayout.tsx: removed thePageWidthvariants (standard1100 /narrow900 /full). Direct cutover — dropped thewidthprop and thePAGE_WIDTH_CLASSmap; content now rendersw-fullwith the samepx-4 py-5 md:px-8padding.width="narrow":settings.tsx,(dashboard)/index.tsx.Page-based screens go edge-to-edge; detail/chat/service/plans screens were already full-bleed (flex-1), so they're unchanged. Pre-login auth screens keep their intentional centered forms.2. Reference mockup (
82e4125)docs/mockups/project-view.html— standalone HTML mockup of the upcoming project-view restyle (sidebar + full page), same information architecture. Reference target only; not wired into the app.Verification
yarn typecheckclean; the 3 changed files lint clean (the one remaining repo lint error is pre-existing incli-auth.tsx, untouched here).🤖 Generated with Claude Code
Summary by CodeRabbit
Layout Changes
Documentation