{post.title}
{post.description}
{post.tags.length > 0 && (
{post.tags.map((tag) => (
{tag}
))}
)}
import { getAllPosts, getPostBySlug } from "@/lib/blog"; import Link from "next/link"; import { MDXRemote } from "next-mdx-remote/rsc"; import { notFound } from "next/navigation"; export function generateStaticParams() { return getAllPosts().map((post) => ({ slug: post.slug })); } export async function generateMetadata({ params, }: { params: Promise<{ slug: string }>; }) { const { slug } = await params; const post = getPostBySlug(slug); if (!post) return {}; return { title: `${post.title} — tidalDB`, description: post.description, }; } const components = { h1: (props: React.ComponentProps<"h1">) => (
), h2: (props: React.ComponentProps<"h2">) => ( ), h3: (props: React.ComponentProps<"h3">) => ( ), p: (props: React.ComponentProps<"p">) => ( ), ul: (props: React.ComponentProps<"ul">) => (;
return (
);
},
blockquote: (props: React.ComponentProps<"blockquote">) => (
),
a: (props: React.ComponentProps<"a">) => (
),
hr: () => {post.description}
{post.tags.length > 0 && (