diff --git a/apps/web/src/lib/components/theme/SiteLayout.svelte b/apps/web/src/lib/components/theme/SiteLayout.svelte index 19f09ac..cc727bf 100644 --- a/apps/web/src/lib/components/theme/SiteLayout.svelte +++ b/apps/web/src/lib/components/theme/SiteLayout.svelte @@ -33,6 +33,17 @@ ); const nav = $derived(site.pages.filter((page) => page.listed)); + + // UTC keeps server-rendered and hydrated output identical across timezones. + const postmarked = new Intl.DateTimeFormat('en-US', { + month: 'short', + year: 'numeric', + timeZone: 'UTC' + }).format(new Date()); + + const composeUrl = $derived( + `https://bsky.app/intent/compose?text=${encodeURIComponent(`@${site.handle} `)}` + ); @@ -71,6 +82,32 @@ {@render children()} +
+ +
+ +
+

+ {#if site.signOff}{site.signOff}{/if} + {site.name} +

+
+ Follow @{site.handle} + Say hello on Bluesky + {#if site.contactEmail} + Write to me + {/if} +
+
+
+
+