perf: parallel block resolution, immutable asset caching, fewer favicons
Deploy / verify (push) Successful in 57s
Deploy / deploy (push) Successful in 59s

- +page.server.ts: resolveContentImages/Calendar/Deadline/SearchableText
  now run in parallel via Promise.all (after resolvePostOverviewBlocks)
- +page.server.ts: banner widths 5→3 [640,1024,1536]
- hooks.server.ts: /_app/immutable/** gets Cache-Control: max-age=31536000
- +layout.svelte: favicon tags 18→4 (ico, 32px png, 192px, apple-180px)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Peter Meier
2026-05-16 15:00:07 +02:00
parent 19f3948f48
commit 4fc541acf9
4 changed files with 12 additions and 20 deletions
+4 -1
View File
@@ -115,7 +115,10 @@ export const handle: Handle = async ({ event, resolve }) => {
event.url.searchParams.has('preview_draft');
const isPreviewDraft = event.url.searchParams.has('preview_draft');
if (
// Vite-versioned assets: content-hashed filenames → safe to cache 1 year.
if (event.url.pathname.startsWith('/_app/immutable/')) {
response.headers.set('cache-control', 'public, max-age=31536000, immutable');
} else if (
event.request.method === 'GET' &&
isCacheablePath(event.url.pathname) &&
!isPreview &&