feat: Pinterest-style post discovery mockup#6130
Open
tsahimatsliah wants to merge 28 commits into
Open
Conversation
Introduce a discovery experience for the post page that turns a read into a continuous exploration loop: - PostFocusCard: borderless two-column card (summary/key points left, live discussion right) with a Lean/Rich content-depth toggle. - PostDiscussionPanel: extracted the comment stack (counts, sort, composer, comments, share) out of EngagementRail so the reader and the focus card share one source of truth instead of duplicating it. - PostDiscoveryFeed: a finite, topic-relevant rail followed by the infinite personalized feed, filling the page with relevant content. - PostDiscoveryLayout: shell with a value-timed signup nudge, impression logging, and a back-to-top control. - Mockup route /posts/[id]/discovery (noindex) gated behind the new post_discovery_experience flag. Co-authored-by: Cursor <cursoragent@cursor.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Gate /posts/[id] on post_discovery_experience for article/video posts so the discovery layout takes over the actual post page (not only the standalone mockup route). Add a ?discovery=1 query override for easy preview without flipping the flag, and suppress the duplicate auth banner in that mode. Co-authored-by: Cursor <cursoragent@cursor.com>
Default the post discovery feature on for the mockup branch so PR preview URLs show the planned discovery design without requiring a query param. Keep ?discovery=0 as a reviewer escape hatch for comparing against the classic post page. Co-authored-by: Cursor <cursoragent@cursor.com>
Simplify the discovery post surface so it feels like daily.dev instead of a new boxed composition. Render the post details directly in the left column, keep comments in a compact reader-style right rail, widen the focus area, and show related content as feed-grid cards instead of a horizontal/list-like rail. Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the discovery post action row focused on the primary read/watch CTA plus the context menu, avoiding a second icon-only read action from PostHeaderActions. Co-authored-by: Cursor <cursoragent@cursor.com>
Pin the post discovery feature mock off in the existing PostPage suite so those assertions continue to cover the classic post-page behavior while the mockup branch defaults the new discovery experience on for preview. Co-authored-by: Cursor <cursoragent@cursor.com>
The discovery feed was inheriting the post page/list-mode feed layout, so users with list mode enabled still saw list cards. Scope the nested discovery feeds to a grid-oriented feed context and disable insane mode only for this surface so it uses the familiar card grid regardless of global feed layout preference. Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the discovery left column closer to the production post page by using the existing stats/action bar components instead of a custom detail section. Wire the comment action to the right-side discussion rail composer and remove the custom key-takeaways block from this surface. Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the post details constrained, but render the discovery feed outside that post-detail wrapper so it can expand like the main feed. Let it use the normal responsive feed column counts while still forcing this nested surface onto the grid-card layout path. Co-authored-by: Cursor <cursoragent@cursor.com>
Render the discovery left column with the same production post detail stack used above comments today: PostHero, video embed, PostInsightPanel, code snippets, and the standard stats/action bar. Keep only the comment thread separated into the right rail. Co-authored-by: Cursor <cursoragent@cursor.com>
Allow PostHero to receive a custom source row and render the discovery post source with the Read Inside daily.dev SourceStrip pattern: logo, source name, handle, and follow action. Co-authored-by: Cursor <cursoragent@cursor.com>
Keep the post details constrained, but let the discovery feed itself occupy the available page width like the main feed. Move padding to the section headings and scope nested feeds to their real feed names so responsive card columns match home/explore behavior. Co-authored-by: Cursor <cursoragent@cursor.com>
Use the production PostContainer as the discovery left column so the post details keep the same flex, padding, and right-border behavior as today's post page. Render only the comment thread in the right rail while preserving the source, title, summary, tags, metadata, media, TOC, snippets, and action bar in the left post details area. Co-authored-by: Cursor <cursoragent@cursor.com>
Render the right-side discussion as a contained card with improved spacing, shadow, and padding. Cap the sidebar height and make the comment thread scroll inside the card so long discussions and replies do not stretch the post details surface. Co-authored-by: Cursor <cursoragent@cursor.com>
Scope the related discovery feed to three cards per row with the same grid/gap behavior expected from feed cards, and add the requested top spacing before the card grid. Co-authored-by: Cursor <cursoragent@cursor.com>
Compact the post recommendation/action area into a single row on tablet and up, remove the extra discussion title from the right rail, and pull the discussion card flush to the top while keeping its card styling and internal scroll. Co-authored-by: Cursor <cursoragent@cursor.com>
Replace the discussion-card header area with the standard post action bar and remove the duplicate action bar from the left post details column. Keep the stats line with the post details and let the right rail action bar control the comment composer. Co-authored-by: Cursor <cursoragent@cursor.com>
Remove the production column border in the discovery layout so the left post details and right comments card do not have a hard separator between them. Co-authored-by: Cursor <cursoragent@cursor.com>
Allow the post action bar to render without its outer border in the discovery rail, and make ShareBar configurable so this surface shows one row of share options with the rest behind the expand button. Co-authored-by: Cursor <cursoragent@cursor.com>
Remove the left-column post stats row from the discovery layout because the right discussion panel already surfaces upvotes, comments, and analytics. Co-authored-by: Cursor <cursoragent@cursor.com>
Remove the fixed three-column override from the More like this feed so it uses the same responsive card count and grid behavior as the main feed. Co-authored-by: Cursor <cursoragent@cursor.com>
Use the small post header action size in the discovery source row so the read icon, menu icon, follow button, and source avatar share the same visual height. Co-authored-by: Cursor <cursoragent@cursor.com>
Use the compact collapsible table-of-contents style in the discovery post surface so it does not take over the left column on desktop. Co-authored-by: Cursor <cursoragent@cursor.com>
Apply the same top spacing to the Keep exploring feed as the More like this section so both discovery grids share the same visual rhythm. Co-authored-by: Cursor <cursoragent@cursor.com>
- compact source strip + centered header action icons - hide New Squad behind share bar "show more options" - move clickbait shield below title, composer below comments - icon-only comment sort in the stats row - use main feed grid columns for discovery feeds - video posts show TLDR below the embed in one card Co-authored-by: Cursor <cursoragent@cursor.com>
- match production title (typo-large-title) and TLDR (typo-markdown) - move full action bar back to the left content column - drop now-unused borderless/compact PostActions props - chat-style comment composer with separating borders - relocate stats/sort bar beneath the composer Co-authored-by: Cursor <cursoragent@cursor.com>
Left content column gets a 768px basis (shrinks on narrow laptops) and the comments sidebar is fixed at 340px, with the pair centered. Co-authored-by: Cursor <cursoragent@cursor.com>
- extract DiscussionMetaBar (counts + analytics + comment sort) - render it on the left above the action bar, production-style - reuse it in PostDiscussionPanel via showMetaBar (reader keeps it) - widen comments sidebar to 400px and the card container to fit 768+400 - tighten gaps across the discovery columns and panel Co-authored-by: Cursor <cursoragent@cursor.com>
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.
Summary
A mockup of a Pinterest/Google-Images-style post discovery experience that turns the post page into a continuous exploration loop. Gated behind a new
post_discovery_experienceflag and exposed on anoindexmockup route at/posts/[id]/discovery.EngagementRailinto one reusable panel, so the reader and the focus card share a single source of truth instead of duplicating it.feedByTagson the post's tags) followed by the infinite personalized feed, filling the page with relevant content to keep exploration going.Notes / follow-ups
feat/anon-post-page-conversion(thepost/experience/*primitives it reuses live there, not onmain).Test plan
post_discovery_experienceand open/posts/<id>/discoveryEngagementRail) discussion still works after the extractionMade with Cursor
Preview domain
https://feat-post-discovery-experience.preview.app.daily.dev