feat(profile): restyle the personal space profile - #2514
Merged
Merged
Conversation
Sidebar - Spaces, Links and About lose their card borders and padding, separated by rules instead; a vertical rule in the tab bar's grey divides the rail from the main column. - Space rows match the browse sidebar's rows; the Editor label is plain grey text; "See all" is a secondary pill below the list. - Type tags are secondary pills; About's rows lose their dividers. Main column - The description moves out of the header into an About section at the top (still edited in the header). - Activity splits into Claims and Debates sections, each with a black "View all" pill in its header; two cards fit across without cropping. - Experience leads with the role, then the company, then that role's dates; Education leads with the school, then the course, then its dates. - Section titles use the medium title style; organisation logos are 50px. Shared - The Log in pill's classes move to the design system as PILL_BUTTON_CLASS_NAME, with a secondary variant; buttonClassNames is exported so links can wear button styles. - The cover takes an optional size; a profile's is 1200 x 300. - StickySideRail gains flushTop and divider options. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Resolves the overlap with #2466 in the Activity section. Activity is now one section per kind with no Debates/Claims toggle, so the mobile scroll reserve that held the reader's position across a toggle has nothing left to guard, and it goes along with its tests. Kept from #2466: View all lands on the tab bar (`withSpaceTabsAnchor`), the gallery bleeds through the shell's gutter on a phone, cards align to the top, and a phone-width card is 84cqw. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Activity now matches master exactly — #2518 and #2525's compact playback, card widths, arrows and alignment, with the Debates/Claims toggle — and this branch's earlier Activity restyle (separate sections, View all pills, Claims-first order) is dropped. The cover merges both new options: this branch's `coverSize` and #2520's `contentInsetClassName`. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
… links Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Activity - Title stays; the Debates/Claims toggle sits below it as pills in the shared pill shape (black when selected, secondary otherwise). - "View all debates" / "View all claims" is a secondary pill at the right of that row, replacing the footer link; the gallery's arrows move beside it, using the data block galleries' Previous/Next buttons, disabled at the row's ends rather than hidden. - No outline, edge padding or divider; a 40px white fade marks the right edge while the row can scroll further. - The compact debate player's corners are 12px (16px in the feeds). Sidebar - The description moves back to the top of About, with its More toggle on a line of its own (`ClampedText` gains `togglePlacement="below"`). - Space system data is a closed-by-default accordion in the rows' own type, with the standard chevron and no background. - The rail sits 20px from the vertical divider, with that padding inside the scroller so the Spaces rows can align under their title and still bleed their hover background past it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…e Activity fade Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Unresolved issues remain in profile description visibility and Activity responsiveness, control stability, and loading-state consistency.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 2
Open (3)
What changed in this PR
Restyles personal-space profiles and extends shared UI primitives for the updated layout.
Changes:
- Reworks Activity, profile history, skills, headlines, and cover presentation.
- Reorders and restyles About, Links, and Spaces sidebar sections.
- Adds reusable pill-button, clamped-text, side-rail, cover-sizing, and compact-player options.
| File | Summary |
|---|---|
apps/web/partials/profile/profile-record-sections.tsx |
Restyles experience, education, and skills. |
apps/web/partials/profile/profile-rail.tsx |
Reorders and restyles sidebar sections and space rows. |
apps/web/partials/profile/profile-headline.tsx |
Adjusts headline spacing. |
apps/web/partials/profile/profile-activity-section.tsx |
Adds pill controls, navigation arrows, and updated gallery layout. |
apps/web/partials/profile/profile-activity-section.test.tsx |
Updates Activity behavior tests. |
apps/web/partials/profile/personal-space-profile.tsx |
Updates Activity labels. |
apps/web/partials/profile/organization-image.tsx |
Adds larger organization logo sizing. |
apps/web/partials/entity-page/sticky-side-rail.tsx |
Adds flush-top and divider options. |
apps/web/partials/entity-page/entity-page-layout.ts |
Defines profile cover dimensions. |
apps/web/partials/entity-page/entity-page-inline-description.tsx |
Adds read-mode hiding. |
apps/web/partials/entity-page/entity-page-cover.tsx |
Supports configurable cover sizing. |
apps/web/partials/entity-page/editable-entity-cover-avatar-header.tsx |
Applies configurable cover dimensions. |
apps/web/design-system/clamped-text.tsx |
Adds below-line toggle placement. |
apps/web/design-system/button.tsx |
Exports reusable pill and button class helpers. |
apps/web/core/wallet/wallet.tsx |
Reuses shared login-pill styling. |
apps/web/core/debates/browse/debate-feed-player.tsx |
Adjusts compact player corner radius. |
apps/web/core/claims/browse/claim-page-view.tsx |
Updates Activity action labels. |
apps/web/app/space/[id]/(space)/layout.tsx |
Applies profile cover and spacing options. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
+162
to
+166
| if (isBelow) { | ||
| return ( | ||
| <div ref={wrapperRef} className="box-border w-full min-w-0"> | ||
| <Tag | ||
| ref={textRef as React.Ref<never>} |
…erflow' Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
…ttons for stable header layout' Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
A suggested change replaced the whole <div> line with a bare className, which stopped the file parsing and failed the build. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
jwalkingjew
pushed a commit
that referenced
this pull request
Sep 22, 2026
- The title (entityTitle), type/tag chips and the verdict form one block above the tabs, with Agree/Disagree inside the verdict and no card border or padding. 48px between the chips, the verdict and the tabs. - The percentage uses mainPage in the text colour; 12px above the bar, 8px below it, and no swatch dots on the sides row. - Controversial is a red chip beside the type and tag chips, in the chips' own size and type. - The responder list is titled "6 people agree" above the rows, puts people with a profile picture first, and highlights rows on hover like the browse sidebar. - The Debates tab lets a debate fill the content column. - Brings in the Activity section header from #2514 (pills, View all, header arrows, 12px compact player corners). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This branch was successfully 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.


A visual pass over the personal space profile (the GEO-2859 page). Almost all of it is layout and styling, but a few shared components gain options along the way. Those are listed under Outside the profile, since they're the parts worth a closer look.
Main column
PreviousButton/NextButton. They're disabled at the row's ends rather than hidden, so "View all" never shifts.text-mediumTitlein the darkest text colour, and organisation logos are 50px.Sidebar
grey-02) separates the sidebar from the main column. It runs from the tab bar to the bottom of the viewport.ClampedTextgainstogglePlacement="below"). It's still edited in the header:EntityPageInlineDescriptiongainshideWhenReading, so it only shows there while editing.ChevronDownSmalland no background.Outside the profile
design-system/button.tsx:PILL_BUTTON_CLASS_NAME, with aPILL_BUTTON_SECONDARY_CLASS_NAMEvariant.buttonClassNamesis now exported, so a link can take a button's styles without nesting a<button>inside it. The Activity header's pills use it.core/wallet/wallet.tsxuses the constant, and its rendered classes are unchanged.StickySideRail: gainsflushTop(no top padding) anddivider(the vertical rule, with 20px of padding inside the scroller). Both default off, so Explore and the space pages are untouched.ClampedText: gainstogglePlacement, defaulting to the existing inline "More".DebateFeedPlayer: in compact mode (reducedOverlays, the Activity gallery only) it uses 12px corners.EntityPageCovertakes an optionalcoverSize. Profiles pass 1200 × 300 (PROFILE_COVER_SIZE, 4:1), and every other page keeps 1192 × 320.Merges with
mastermasteras-is, and the header changes above are layered on top. Tests were updated for the header (title, pills, header arrows disabled at the ends).coverSizeand fix: compact side panel cover images #2520'scontentInsetClassName.Checks
tsc --noEmitis clean.vitest run partials/profilepasses (241 tests).Not yet checked in a real browser at phone widths. The sidebar is hidden below 1024px, so the dividers and pills there only show on desktop.
🤖 Generated with Claude Code