Skip to content

Implemented a new Keep reading section for Blog#7954

Merged
nurul3101 merged 4 commits into
mainfrom
feat/blog-keep-reading
Jun 16, 2026
Merged

Implemented a new Keep reading section for Blog#7954
nurul3101 merged 4 commits into
mainfrom
feat/blog-keep-reading

Conversation

@nurul3101

@nurul3101 nurul3101 commented Jun 16, 2026

Copy link
Copy Markdown
Member
  • Changed Newsletter location to Footer
  • Updated Series component showing rich content
  • Removed Newsletter CTA from main blog

Summary by CodeRabbit

Release Notes

  • New Features

    • Blog pages now display a "Keep reading" section with related posts below content
    • Newsletter signup form added to blog footer with improved vertical layout support
    • Post cards now support vertical layout styling for better content presentation
  • Improvements

    • Enhanced footer component architecture for flexible newsletter integration
    • Improved responsive design for post cards across all layout variants

@nurul3101 nurul3101 self-assigned this Jun 16, 2026
@vercel

vercel Bot commented Jun 16, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
blog Ready Ready Preview, Comment Jun 16, 2026 2:57pm
docs Ready Ready Preview, Comment Jun 16, 2026 2:57pm
eclipse Ready Ready Preview, Comment Jun 16, 2026 2:57pm
site Ready Ready Preview, Comment Jun 16, 2026 2:57pm

Request Review

@coderabbitai

coderabbitai Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: a438cf57-cbb3-45b9-bde1-d6881cc02094

📥 Commits

Reviewing files that changed from the base of the PR and between 8bd6eed and b4f1a80.

📒 Files selected for processing (12)
  • apps/blog/src/app/(blog)/[slug]/page.tsx
  • apps/blog/src/app/(blog)/layout.tsx
  • apps/blog/src/components/KeepReading.tsx
  • apps/blog/src/components/PostCard.tsx
  • apps/blog/src/components/SeriesNavigation.tsx
  • apps/blog/src/lib/post-card-item.ts
  • apps/blog/src/lib/related-posts.ts
  • apps/blog/src/lib/series.ts
  • apps/site/src/components/navigation-wrapper.tsx
  • packages/ui/src/components/footer.tsx
  • packages/ui/src/components/newsletter.tsx
  • packages/ui/src/components/post-card.tsx

Walkthrough

Adds post-card-item.ts and related-posts.ts to centralize BlogPageBlogCardItem conversion and tag-based related-post ranking. SeriesContext.prev/next are changed to BlogCardItem. A new KeepReading component displays related posts, SeriesNavigation now uses PostCard, PostCard gains a vertical prop, FooterNewsletterForm gains a stacked prop, and the newsletter is moved into the footer of both the blog and site apps.

Changes

Related posts, series cards, newsletter footer

Layer / File(s) Summary
BlogCardItem mapping and related-post ranking
apps/blog/src/lib/post-card-item.ts, apps/blog/src/lib/related-posts.ts, apps/blog/src/lib/series.ts
Exports BlogPage type, getPostTime, and toBlogCardItem to normalize raw pages into BlogCardItem. getRelatedPosts ranks candidates by shared tags then recency. SeriesContext.prev/next are retype from SeriesPostRef to BlogCardItem, with getSeriesContext updated to call toBlogCardItem.
PostCard vertical prop and shared card layout
packages/ui/src/components/post-card.tsx, apps/blog/src/components/PostCard.tsx
Adds optional vertical prop to the blog PostCard wrapper, forwarded to the shared UI PostCard. The shared card refactors imageWrapperClassName to handle three cases (featured, horizontal, vertical) and simplifies the non-featured wrapper className.
KeepReading and SeriesNavigation components
apps/blog/src/components/KeepReading.tsx, apps/blog/src/components/SeriesNavigation.tsx
New KeepReading component renders a responsive PostCard grid from a BlogCardItem[], returning null for empty input. SeriesNavigation drops the next/link inline rendering and now renders PostCard components for prev/next series entries.
FooterNewsletterForm stacked layout and footer wiring
packages/ui/src/components/newsletter.tsx, packages/ui/src/components/footer.tsx, apps/blog/src/app/(blog)/layout.tsx, apps/site/src/components/navigation-wrapper.tsx
FooterNewsletterForm gains a stacked prop that switches between vertical and row layouts using cn(...). Footer destructures newsletterComponent and renders it conditionally on !hideNewsletter. Both the blog layout and site FooterWrapper are updated to supply FooterNewsletterForm with stacked and the appropriate apiUrl.
Blog post page integration
apps/blog/src/app/(blog)/[slug]/page.tsx
Imports KeepReading and getRelatedPosts, computes relatedPosts only when seriesContext is absent, renders KeepReading in place of the series panel for non-series posts, and removes the inline newsletter CTA section.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • prisma/web#7949: Introduced BlogCTA and its insertion point in the blog post page, which this PR preserves while removing the adjacent newsletter CTA section.
  • prisma/web#7902: Extended PostCardItem and author rendering in the same PostCard component that this PR modifies to add the vertical prop.

Comment @coderabbitai help to get the list of available commands and usage tips.

@argos-ci

argos-ci Bot commented Jun 16, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Argos notifications ↗︎

Build Status Details Updated (UTC)
default (Inspect) ✅ No changes detected - Jun 16, 2026, 3:04 PM

@nurul3101 nurul3101 merged commit 5460d79 into main Jun 16, 2026
15 of 16 checks passed
@nurul3101 nurul3101 deleted the feat/blog-keep-reading branch June 16, 2026 14:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants