import Image from "next/image"; import Link from "next/link"; import { GhostPost, postExcerpt, formatDate, readingTime } from "@/lib/ghost"; /** Shared cover: real Ghost feature image, or a branded fallback when null. */ function Cover({ post, sizes }: { post: GhostPost; sizes: string }) { if (post.feature_image) { return ( {post.feature_image_alt ); } return (
{(post.primary_tag?.name || post.title).charAt(0)}
); } export function FeaturedBlogCard({ post }: { post: GhostPost }) { return (
{post.primary_tag && {post.primary_tag.name}}

{post.title}

{postExcerpt(post, 220)}

{formatDate(post.published_at)} {readingTime(post) && } {readingTime(post) && {readingTime(post)}}
Read article
); } export function BlogCard({ post }: { post: GhostPost }) { return (
{post.primary_tag && {post.primary_tag.name}}

{post.title}

{postExcerpt(post)}

{formatDate(post.published_at)} {readingTime(post) && } {readingTime(post) && {readingTime(post)}}
); }