import Link from "./Link"; import Color from "colorjs.io"; import { metadata, getPosts, Post } from "./posts"; import { sans } from "./fonts"; export { metadata }; export default async function Home() { const posts = await getPosts(); return (
{posts.map((post) => (
))}
); } function PostTitle({ post }: { post: Post }) { let lightStart = new Color("lab(63 59.32 -1.47)"); let lightEnd = new Color("lab(33 42.09 -43.19)"); let lightRange = lightStart.range(lightEnd); let darkStart = new Color("lab(81 32.36 -7.02)"); let darkEnd = new Color("lab(78 19.97 -36.75)"); let darkRange = darkStart.range(darkEnd); let today = new Date(); let timeSinceFirstPost = (today.getTime() - new Date(2018, 10, 30).getTime()); let timeSinceThisPost = (today.getTime() - new Date(post.date).getTime()); let staleness = timeSinceThisPost / timeSinceFirstPost; return (

{post.title}

); } function PostMeta({ post }: { post: Post }) { return (

{new Date(post.date).toLocaleDateString("en", { day: "numeric", month: "long", year: "numeric", })}

); } function PostSubtitle({ post }: { post: Post }) { return

{post.spoiler}

; }