From 8c040b0187d00c954148a93dd753ebbb93b9e2d6 Mon Sep 17 00:00:00 2001 From: Akira Tempaku <paku@skyizwhite.dev> Date: Tue, 20 May 2025 09:25:17 +0900 Subject: [PATCH] Optimize loading Google Fonts --- src/components/scripts.lisp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/components/scripts.lisp b/src/components/scripts.lisp index 0c58f9a..edfdb31 100644 --- a/src/components/scripts.lisp +++ b/src/components/scripts.lisp @@ -4,6 +4,9 @@ (:export #:~scripts)) (in-package #:website/components/scripts) +(defparameter *google-font-url* + "https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@400;500;700&display=swap") + (defun bust-cache (url) (format nil "~a?v=~a" url #.(get-universal-time))) @@ -11,8 +14,12 @@ (hsx (<> (link :rel "stylesheet" :href (bust-cache "/style/dist.css")) + (link :rel "preconnect" :href "https://fonts.gstatic.com" :crossorigin t) (link :rel "preconnect" :href "https://fonts.googleapis.com") - (link :rel "stylesheet" :href "https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@400;500;700&display=swap") + (link :rel "preload" :as "style" :fetchpriority "high" :href *google-font-url*) + (link :rel "stylesheet" :href *google-font-url* :media "print" :onload "this.media='all'") + (noscript + (link :rel "stylesheet" :href *google-font-url*)) (script :src "https://cdn.jsdelivr.net/npm/htmx.org@2.0.4/dist/htmx.min.js") (script :src "https://cdn.jsdelivr.net/npm/htmx-ext-preload@2.1.1/dist/preload.min.js") (script :src "https://cdn.jsdelivr.net/npm/htmx-ext-head-support@2.0.4/dist/head-support.min.js")