b4dbb90b5f
- Template is based on svelte components instead of react - Bumps astro version to "^0.21.0-next.0" for portfolio-svelte template Co-authored-by: Konstantinos Kostarellis <Konstantinos.Kostarellis@gmail.com>
38 lines
1 KiB
Text
38 lines
1 KiB
Text
---
|
|
import MainHead from '../components/MainHead.astro';
|
|
import Footer from '../components/Footer.svelte';
|
|
import Nav from '../components/Nav.svelte';
|
|
import PortfolioPreview from '../components/PortfolioPreview.svelte';
|
|
|
|
interface MarkdownFrontmatter {
|
|
publishDate: number;
|
|
}
|
|
|
|
const projects = Astro.fetchContent<MarkdownFrontmatter>('./project/**/*.md')
|
|
.filter(({ publishDate }) => !!publishDate)
|
|
.sort((a, b) => new Date(b.publishDate).valueOf() - new Date(a.publishDate).valueOf());
|
|
---
|
|
|
|
<html lang="en">
|
|
<head>
|
|
<MainHead title="All Projects | Jeanine White" description="Learn about Jenine White's most recent projects" />
|
|
<style lang="scss">
|
|
.grid {
|
|
display: grid;
|
|
grid-gap: 3rem;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<Nav />
|
|
<div class="wrapper">
|
|
<h1 class="title mt4 mb4">All Projects</h1>
|
|
<div class="grid">
|
|
{projects.map((project) => (
|
|
<PortfolioPreview project={project} />
|
|
))}
|
|
</div>
|
|
</div>
|
|
<Footer />
|
|
</body>
|
|
</html>
|