diff --git a/src/routes/__layout.svelte b/src/routes/+layout.svelte
similarity index 100%
rename from src/routes/__layout.svelte
rename to src/routes/+layout.svelte
diff --git a/src/routes/index.svelte b/src/routes/+page.svelte
similarity index 98%
rename from src/routes/index.svelte
rename to src/routes/+page.svelte
index 8c563f2..8c61574 100644
--- a/src/routes/index.svelte
+++ b/src/routes/+page.svelte
@@ -1,7 +1,3 @@
-
-
-
- It's been + It's been {daysSinceLastPublish} - {daysSinceLastPublish === 1 ? 'day' : 'days'} since I last published something. On average I publish something every {averageDaysBetweenPosts} days ({numberOfPosts} posts in {daysSinceFirstPost} days). + {daysSinceLastPublish === 1 ? 'day' : 'days'} since I last published something. On average I publish + something every {averageDaysBetweenPosts} days ({numberOfPosts} posts in {daysSinceFirstPost} days).
diff --git a/src/routes/blog/+page.ts b/src/routes/blog/+page.ts new file mode 100644 index 0000000..21c5832 --- /dev/null +++ b/src/routes/blog/+page.ts @@ -0,0 +1,36 @@ +import type { LoadEvent, Load, Page } from '@sveltejs/kit'; +import { differenceInCalendarDays, intlFormat } from 'date-fns'; +export const prerender = true; + +type BlogPost = { + filename: string; + preview: string[]; + title: string; + slug: string; + date: Date; + book_review?: boolean; +}; + +export async function load({ fetch }: LoadEvent) { + const posts = await fetch('/api/blog.json') + .then((res) => res.json()) + .then((res) => res.posts); + + const mostRecentPost = posts[0]; + + const daysSinceLastPublish = differenceInCalendarDays(new Date(), new Date(mostRecentPost.date)); + + const numberOfPosts = posts.length; + const firstPost = posts[numberOfPosts - 1]; + const daysSinceFirstPost = differenceInCalendarDays(new Date(), new Date(firstPost.date)); + const averageDaysBetweenPosts = Number(daysSinceFirstPost / numberOfPosts).toFixed(2); + + return { + posts, + firstPost, + averageDaysBetweenPosts, + daysSinceFirstPost, + daysSinceLastPublish, + numberOfPosts + }; +} diff --git a/src/routes/blog/[slug].svelte b/src/routes/blog/[slug]/+page.svelte similarity index 70% rename from src/routes/blog/[slug].svelte rename to src/routes/blog/[slug]/+page.svelte index ce42a81..ba68848 100644 --- a/src/routes/blog/[slug].svelte +++ b/src/routes/blog/[slug]/+page.svelte @@ -1,34 +1,11 @@ - -