diff --git a/src/app/globals.css b/src/app/globals.css index 3aedb5a..8217eaf 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -523,6 +523,10 @@ border-color: rgba(62, 127, 92, 0.4); box-shadow: var(--home-shadow-md); } +.media-card-featured { + border-color: rgba(62, 127, 92, 0.45); + box-shadow: 0 12px 30px rgba(62, 127, 92, 0.1), var(--home-shadow-sm); +} .home-root a:not(.home-btn):not(.home-arrow-link) { text-decoration-color: var(--home-fern); } .home-root section, .home-root footer > div > div { border-color: var(--home-hairline); } /* Buttons had 10px of horizontal padding against 8px vertical, so the label diff --git a/src/app/media/page.tsx b/src/app/media/page.tsx index da25f2d..7178d90 100644 --- a/src/app/media/page.tsx +++ b/src/app/media/page.tsx @@ -32,8 +32,30 @@ export default async function MediaPage() { + > +
+
+
+
+
+

The collection

+

+ Start with a lesson, stay for a student story, or see what we're + building next. +

+
+

+ {items.length === 0 ? "No videos published yet" : "Newest first"} +

+
diff --git a/src/components/media/MediaCard.tsx b/src/components/media/MediaCard.tsx index 1977e04..b621a7d 100644 --- a/src/components/media/MediaCard.tsx +++ b/src/components/media/MediaCard.tsx @@ -1,20 +1,27 @@ +import { ArrowUpRight } from "lucide-react"; import { InstagramIcon } from "@/components/icons"; import type { MediaItem } from "@/lib/media"; -import { getYouTubeEmbedUrl } from "@/lib/media"; +import { formatMediaDate, getYouTubeEmbedUrl } from "@/lib/media"; interface MediaCardProps { item: MediaItem; + emphasis?: boolean; } -export function MediaCard({ item }: MediaCardProps) { +export function MediaCard({ item, emphasis = false }: MediaCardProps) { + const publishedDate = formatMediaDate(item.publishedAt); + const cardClassName = `home-card home-lift overflow-hidden rounded-[20px] ${ + emphasis ? "media-card-featured" : "" + }`; + if (item.platform === "youtube") { if (!item.videoId) { throw new Error(`YouTube item ${item.id} is missing its videoId.`); } return ( -
-
+
+