import { Breadcrumb, JsonLd, PageIntro, PostList, } from "@/components/blog/parts"; import { blog } from "@/lib/blog/config"; import { breadcrumbLd, crumbs } from "@/lib/blog/feeds"; import { listPublishedPosts } from "@/lib/blog/loader"; import { BLOG_PATH, RECENT_PATH, RECENT_POST_LIMIT, UPDATED_PATH, } from "@/lib/blog/routes"; import type { Metadata } from "next"; import Link from "next/link"; const title = `Recent posts | ${blog.name}`; const description = `The newest posts from every category of the ${blog.name}, most recent first.`; export const metadata: Metadata = { title, description, alternates: { canonical: RECENT_PATH }, openGraph: { title, description, url: RECENT_PATH }, }; export default async function RecentPosts() { const posts = (await listPublishedPosts()).slice(0, RECENT_POST_LIMIT); return (
The newest posts from every category, most recent first.
See the most recently updated posts