From c9f3d7a877d361bf3e2d7d79c4dde019f418432b Mon Sep 17 00:00:00 2001 From: memdmp Date: Wed, 14 Jan 2026 18:09:34 +0100 Subject: feat: prerendering page --- src/routes/blog/_posts/+page.server.ts | 13 +++++++++++++ src/routes/blog/_posts/+page.svelte | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 src/routes/blog/_posts/+page.server.ts create mode 100644 src/routes/blog/_posts/+page.svelte (limited to 'src/routes') diff --git a/src/routes/blog/_posts/+page.server.ts b/src/routes/blog/_posts/+page.server.ts new file mode 100644 index 0000000..bc9d5d9 --- /dev/null +++ b/src/routes/blog/_posts/+page.server.ts @@ -0,0 +1,13 @@ +import { parsePost, type Post } from '$/lib/blog/Post.svelte' + +const posts = import.meta.glob("../posts/*.svx") as Record Promise> +const returnedData = Promise.all(Object.entries(posts).map(v => v[1]().then(r => [v[0], { + ...parsePost(r as Post), + default: null, +}] as const))); + +export const load = async () => { + return { + posts: Object.fromEntries(await returnedData) + } +} diff --git a/src/routes/blog/_posts/+page.svelte b/src/routes/blog/_posts/+page.svelte new file mode 100644 index 0000000..2f7ca25 --- /dev/null +++ b/src/routes/blog/_posts/+page.svelte @@ -0,0 +1,32 @@ + + +{#if !browser} + {#each posts as a} + + + + + {/each} +{/if} -- cgit v1.2.3