feat(storybook): squad page redesign and Verified Squad page mock-ups - #6721
Merged
Merged
Conversation
Four structural directions for the squad / verified company page, rebuilt on the real daily.dev Changelog squad with production feed cards: Channel (YouTube/LinkedIn), Community (Reddit rail), Publication (changelog timeline) and Hub (GitHub org). Overview story carries the rationale, comparison and recommendation; each direction also renders on its own with viewer (visitor/member/admin) controls. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Five variants on the feedback to round one: no banner, one-row identity, cover as ambient glow, uniform owner-arranged tiles (WHOOP), nothing behind a tab. Modules (right tile column), Bento (tiles as header), Focus (X-style column + sticky identity), Shelf (one tile row above a full-width feed), Console (data-first left panel). Admin viewer shows the customise state. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Whop's model applied to squads: the v2 rail stays, a second column holds owner-composed pages (feed, restricted feed, chat, document, link, bounties, jobs, leaderboard, members, stack, admin tools) in sections with counts, hide and reorder, and the main area renders the selected page type. Interactive shell with visitor/member/admin and an Add-a-page catalogue; overview carries the Whop-to-daily.dev mapping and a build order. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The workspace Home now mirrors the user profile page: same card, cover height and avatar seat, same name / meta / actions / stats stack, the same divided sections (About with links and readme, Stack, Activity with tabs and a card rail, Open roles where experiences sit) and the same widget column (Squad overview, Team, Awards and milestones). The overview story shows the live profile beside it with a field-by-field mapping. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The shared Home frame gets page-level tabs under the stats: Posts is the default and fills the card (sort chips, pinned row, two-up production cards, load more); the readme, stack, roles and CV move under one About tab. ProfileHome rebuilds Tsahi's profile on the same frame so the parity section compares two live components instead of a screenshot. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Join moves from the sidebar foot into the squad header block, so it sits with the name and icon on every page. The Posts / About tabs on Home are gone: About becomes a sidebar page, and the feed controls follow Reddit's shape (one sort menu, the grid / list toggle the product already has, search) with the pinned post as a highlight card. The profile keeps its single pair of tabs because it has no sidebar. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sidebar model rebuilt on how developer communities actually organise: channels (the feed filtered to one flair, each with its own posting rule), read-first pages (Start here, Rules, FAQ, Roadmap), recurring threads (Who's hiring, easy questions, Showoff Saturday), links and people. Bounties and the leaderboard are gone. Two presets show a company squad and a topic squad composed from the same page types; the overview carries the Reddit / GitHub Discussions / Discord mapping. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
A Products page under a new Company section: every product the company makes, imported from a Product Hunt, G2, Trustpilot, GitHub or website link with the source's rating and synced weekly. Each card is a tool a member can add to their stack, and says how many already have. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Rows instead of cards: rank, logo, name and tagline on one line, rating and chips under, and the tall box on the right that counts stacks and is the add button, where Product Hunt counts upvotes. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Audit-driven pass over every surface of the squad workspace. Trust cues are one mark everywhere (shield in the sidebar, the name and the company line; members stat drops the borrowed reputation icon). The sidebar header becomes the squad's identity block: logo, name, verified domain, members and online, then Join for a visitor, alerts / invite / share for a member, preview-as for an admin. Home gets the social-proof line, a Share action so a visitor's row is no longer an orphan, the composer for members, and a cover fade under the logo seat. About drops the duplicated roles and gains company facts and the team. Channels share Home's sort / view / search row; the page bar no longer repeats search. Members gets a count, online, search and newest members. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…count The verified mark becomes a check in a filled circle, the glyph every network uses; the shield read as daily.dev's clickbait shield. Products and Open roles join Home and About above the channels, so the Company section goes. The People section goes too: the member count in the sidebar header opens the Members page. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Six stacked rows become four. The logo and the actions share one baseline at the cover's foot, so the identity column below is text only: name and tagline, one meta line, then one stats strip under a hairline with the member faces folded into the Members figure. The members bar leaves the sidebar header; the Members stat and its faces open the Members page instead. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The verified mark becomes the scalloped seal with a check that every network uses for verified accounts. daily.dev has no glyph for it: the profile's company badge is a text pill, the shields mean clickbait shield and the medals mean awards, so the seal is drawn on the 24 grid in the kit and takes currentColor. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Home and the profile's activity render the production list cards in a single column instead of the two-up grid, and the layout toggle reports list as the active mode. Channels already did. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Read first becomes Documentation and keeps Rules and FAQ; Start here and Roadmap leave the presets (a page stays addable from the catalogue). The rules move to data.ts so the Rules page and a new Rules widget on Home read the same list; each widget row opens the page. About takes the info glyph. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Q&A folds into Discussions; Ideas and feedback, Bugs and Show and tell leave the company preset. Two channels take their place: Reviews (a post with a rating, the team replies) and Quiz (a poll with a right answer, weekly). The community preset keeps Links and Polls and gains the quiz; recurring threads point at the channels that remain. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Reviews is no longer a feed: members pick stars and write, the team replies in line, and the top of the page pulls every rating the company has on the web (Trustpilot, G2, Chrome Web Store, App Store, Product Hunt) into one score beside the squad's own. Releases is a new page in the top group: every release post as a log grouped by month, newest first, filterable by kind, in GitHub Releases' shape. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Quiz is its own page type: a set of poll-style cards, one question each, answered in place. The right option turns green with a check, a wrong pick turns red, the squad's split shows on every bar, and a score banner lands once every card is answered. Questions are generated from the company's own posts, so each card cites the release it came from; admins get Generate a quiz. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Each question is a real poll post rendered by PollList, unchanged. The page owns the answer: an option click is caught in the capture phase so the card's vote mutation never fires, the card re-renders in its own results state, and a line under it says whether the pick was right, what the right answer was, and which release the question came from. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
A third sidebar composition: Home, Releases and Products up top, only Discussions and Polls as channels, the documentation, and a links section that carries the company's X, YouTube, LinkedIn and Discord with brand glyphs beside its docs and GitHub. Announcements, Reviews, Quiz, Open roles and About are out. Polls is its own page on the production poll card, votes owned by the page so the story stays offline. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The verified seal gets a card of its own at the top of Home's widget column: what verified means here, the domain, since when, and how many admins are verified employees. Accent border, no fill, so it reads as a badge and not a banner. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The official company page card shrinks to one row on a soft brand glow: seal, label, 'Verified by daily.dev', nothing to read past it. Rules gets All rules and FAQ as two float buttons under the list, the profile's Show all seat twice. Milestones leaves the column and a Links widget takes its place, drawn from one company-links list that the Lean sidebar now reads too, with the brand glyph map moved into the kit. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Eight ways to mark the official company page at the top of Home's column, each at the column's width above a Rules card: glow, pill, hairline, foil, stamp, laurel, strip, glass. The live badge on Home drops its subline to the four words. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Round two of the badge sheet, between Foil and Glass: foil glass, holographic, hallmark with a serial, wax seal with the company's mark, ribbon, partner, faces, gold edge, swing tag, presence. References are the marks developers meet outside the big networks: Docker's Verified Publisher, the VS Code marketplace tick, Hugging Face, Stack Overflow Collectives, Twitch and Discord partners, Spotify's Verified Artist, Airbnb's Superhost, and the physical seals and tags. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Round three of the badge sheet: Foil glass and Holographic held ten ways in cabbage. What moves is where the light sits (haze, aurora orbs, sheen, spotlight), how the edge is drawn (hairline, gradient frame, none) and the second line (publisher, serial, the company's domain, or nothing). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The chosen badge, 21: two orbs of brand light under frosted glass, a cabbage hairline, the seal in the brightest spot, four words. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
One sidebar, the one that was chosen: Home, Releases, Products; Discussions and Polls; Rules and FAQ; the company's links with brand glyphs; Manage for admins. The presets, Announcements, Reviews, Quiz, Open roles, About, Chat and Recurring threads leave the shell, the catalogue and the overview, which now walks the nine pages that remain. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Viewer grows to five roles (anonymous, logged-in visitor, member, moderator, admin) with helpers the shell reads instead of comparing enum values. The workspace gains a content source (fed by the company's RSS, or hand-written), an empty state and a private wall, a Moderation queue, and a Content feed page under Manage that shows the managed arrangement: source health, where it publishes, recent imports, and the daily.dev manager to contact. A use-cases folder covers it: Viewers, Posting, Content source, States, and an Overview with permission and fed-vs-plain matrices and an index of every case. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…0' into claude/squad-page-redesign-3f05c0
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- The kind chips move to the Archive with the Releases and Polls pages (archive/chipPages.tsx). Home is one feed under a Posts heading with production's search; polls sit in it on the production poll card. - Below laptop, About in the feed heading swaps the feed for the right column's widgets, as the About chip did. - Squad terminology from production: Join Squad / Joined, Leave Squad, members instead of followers, Join the Squad to create new posts. - Delete Squad leaves the options menu (it stays in Manage, Danger zone). - The Team widget drops the Top followers row. - Verified company page becomes Verified squad page. - Use cases and tables follow: chip cases redrawn on the home feed, the fed-page note moves to the Content feed page. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Code identifiers, URLs (/squads/...) and comments keep lowercase. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The feed heading's search (and ⌘K) opens production's Spotlight layout with a CodeRabbit pill in the field, like the palette's Posts or Tags scopes: pinned and latest posts before typing, Squad matches after, See all or Enter lists every match in the feed with a clear button. Backspace or the pill widens to all of daily.dev, where a Search in CodeRabbit row and chip narrow it again. Phones get the bottom sheet. Load more is gone; the feed is infinite scroll. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
At rest the feed heading is a search bar (⌘K hint on laptop) with About beside it below laptop. After See all the row becomes the query as one chip (text reopens Spotlight to edit, the cross clears the search) and a result count, sticks to the top with the Squad's logo, and scrolls into view. The redundant "in CodeRabbit" title is gone. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
X's pattern: a search icon beside the options menu (and ⌘K) opens Spotlight filtered to the Squad; Enter opens a results page like the other sub-pages, with a back button, the query as a chip with the Squad's logo (text edits it, the cross ends it) and the count. The feed loses its search bar; below laptop its row is Posts and About only. Adds the Searching inside the Squad case. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Below 1020px the feed opens with two tabs in the tags-directory style, above the composer: Posts, and About with every right-column widget (the share card included for the team). The composer shows on Posts only. From laptop up the right column sits beside the page and the tabs are hidden. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Matches the post page's NewComment trigger: a rounded, bordered float card with the page gutter on every size, not an edge-to-edge band. The locked Join the Squad card follows. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Matches ProfileHeader: a 144px cover at every size (rounded top from laptop), the 120px image absolutely placed 64px down and 24px in (a circle for a Squad, no ring), actions right-aligned 8px under the cover with 16px below, 24px side padding. The page's phone gutter follows the profile's p-6: shelf, tabs, composer, pinned and About sit at 24px; feed cards stay edge to edge. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Storybook's canvas is desktop-wide, so the Playground never showed the phone layout. Direction / Mobile renders the page in a real 375px frame with viewer and page controls. The seal beside the Squad name grows from 16px to 20px next to the Title2 name. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…tter The profile-geometry header (144px cover, 120px image, 24px padding) read too large, and the 24px phone gutter pushed the tagline to three lines. Restores the earlier cover (112px phones, 144px up), the 80px / 104px ringed image and the 16px phone gutter; keeps the 20px seal by the name. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <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.
What this is
Design handoff for the squad page redesign and the Verified squad page: a squad run for a company, with CodeRabbit as the example.
Every component, state and breakpoint is drawn in Storybook so engineering can implement from it. This PR only adds Storybook files. It changes nothing in
webapp,sharedorextension: 33 story files underpackages/storybook/stories/squad-page/, 3 images inpackages/storybook/public/squad-page/, and the Squad Page folder order inpackages/storybook/.storybook/preview.tsx.Where to look
Folder layout
stories/squad-page/holds the live design:direction.tsx,home.tsx,manage.tsx,productForm.tsx,pins.tsx,composer.tsx,squadSpotlight.tsx,owner.tsx,rail.tsx, andworkspace.tsx(the sub-pages).use-cases/holds the cases and summary tables.archive/holds everything the chosen direction no longer uses. None of the live files import from it.What the design covers
SEARCH_SOURCE_POSTS_QUERY. Backspace widens it to all of daily.dev. Enter opens a results page with a back button, the query as a chip and the count.Built from existing components
Where production already has the piece, the mock-ups render the real component, unchanged:
DataTile,CombinedImpressionsChart,AnalyticsNumbersListRadio,Dropdown,TextField,Textarea,SearchFieldUserBadge,SquadEmptyScreen,BlockedMembersPlaceholderSquadDirectoryNavbar,HorizontalSeparator,Typography,Button,PollListuseShareOrCopyLink, and Spotlight'sscopeMeta/scopeIconsProfile settings patterns are mirrored:
ProfileSettingsMenuDesktop,ControlledCoverUpload/ControlledAvatarUpload, the work experience list and form, andSocialLinksInput. Anything new is marked as new in the Production parity table.Not in scope
No production code, flags or queries. The mock data lives in
data.tsand roles and states instate.ts, so another company can be swapped in throughdata.tsalone.🤖 Generated with Claude Code
Preview domain
https://claude-squad-page-redesign-3f05c.preview.app.daily.dev