cmux/web/app/components/blog-pager.tsx
Lawrence Chen f5de515376
Add prev/next nav to blog posts, reduce index gap (#859)
* Add prev/next navigation to blog posts, reduce index gap

* Add download/GitHub CTA to all blog posts via layout

* Track blog post slug in PostHog download/GitHub click events
2026-03-04 01:52:56 -08:00

43 lines
1.2 KiB
TypeScript

"use client";
import Link from "next/link";
import { usePathname } from "next/navigation";
import { blogPosts } from "./blog-posts";
export function BlogPager() {
const pathname = usePathname();
const index = blogPosts.findIndex(
(post) => `/blog/${post.slug}` === pathname
);
const prev = index > 0 ? blogPosts[index - 1] : null;
const next = index < blogPosts.length - 1 ? blogPosts[index + 1] : null;
if (!prev && !next) return null;
return (
<nav className="flex items-center justify-between mt-12 pt-6 border-t border-border text-[14px]">
{prev ? (
<Link
href={`/blog/${prev.slug}`}
className="flex items-center gap-1.5 text-muted hover:text-foreground transition-colors"
>
<span aria-hidden>&larr;</span>
{prev.title}
</Link>
) : (
<span />
)}
{next ? (
<Link
href={`/blog/${next.slug}`}
className="flex items-center gap-1.5 text-muted hover:text-foreground transition-colors"
>
{next.title}
<span aria-hidden>&rarr;</span>
</Link>
) : (
<span />
)}
</nav>
);
}