import { GetServerSideProps } from "next"; import { MainLayout } from "../../layouts/MainLayout"; import { Post, getAllProjectsFrontMatter } from "../../utils/markdown"; import { FrontMatter } from "../../types/types"; import Link from "next/link"; import { formatDate } from "../../utils/general"; export interface BasicProjectProps extends FrontMatter { title: string; description: string; date: string; author: string; authorLink: string; thumbnail: string; } const ProjectCard = ({ project, slug, }: { project: BasicProjectProps; slug: string; }) => { return (
{formatDate(project.date)}

{project.title}

{project.description}

{project.thumbnail && ( {`${slug}-thumbnail`} )}
); }; const Projects = ({ posts }: { posts: Post[] }) => { return (

Projects

{posts.map((post, index) => ( ))}
); }; export const getServerSideProps: GetServerSideProps = async () => { const posts = getAllProjectsFrontMatter(); return { props: { posts, }, }; }; export default Projects;