用 Expressive Code 外掛來標示指令輸出 — Gutter API 以及控制複製按鈕的複製內容
在 Astro 部落格用 Expressive Code 外掛來標示指令輸出:溝槽元素的 API、外掛的執行順序,以及改寫複製按鈕複製的內容。
在 Astro 部落格用 Expressive Code 外掛來標示指令輸出:溝槽元素的 API、外掛的執行順序,以及改寫複製按鈕複製的內容。
Astro 官方的 security.csp 可能悄悄弄壞 Service Worker 註冊。一份手寫、由 CI 與真實瀏覽器共同驗證的 CSP,在 Astro 與 Vercel 上的實作紀錄。
GIF 沒有暫停 API,因此在 WCAG 2.2.2 下不合格。選擇檔案較大的 MP4 而非 VP9,是因為 iOS 沒有 VP9 硬體解碼器。內含編碼流程、守衛與測試記錄。
Astro 文章頁面原本在 68ch/17px 下顯得又窄又小。依照 dev.to 的實測數字放大後,也順便修好了 ch 單位一直藏著的 CJK 行長 bug。
如何在建置時用依標籤稀有度加權的重疊挑出相關文章、為什麼對內文做 TF-IDF 在三種語言下會失效,以及分數門檻是怎麼量出來的。
Astro 的 Service Worker 把每一次導覽都先用快取回應,新文章因此晚一次造訪才出現。列表頁現在會先問網路。
量測結果決定了 Astro 部落格的 Service Worker 設計:預先快取 287KB 而不是 11.7MB 的 HTML,頁面上限 50 筆,而且不設過期時間。
反向連結與 rel=canonical 到底在做什麼、為什麼 Zenn 和 Qiita 會改變做法,以及讓轉載一篇文章從工程變成貼上的那條流程。
這個 Astro 部落格如何加上 robots.txt、JSON-LD、Markdown 複本與 IndexNow。Google 找不到它的原因不是網域,llms.txt 也不是解方。
這個 Astro 部落格如何標記最多人讀的文章:建置期間向 Vercel Web Analytics 查詢一次,合計三個語系,再烘進靜態 HTML。
為完全靜態的 Astro 網站加上共用的喜歡計數:只多一條非預先渲染的路由、Upstash Redis 的鍵設計,以及為了驗證它而付出的 CI 錯誤。
在 Astro 中 width:100% 為何讓 256px 的螢幕截圖變糊,以及原生對話框如何讓每張圖表在手機上都讀得清楚。修正這個設計的是七次計測。
Pagefind 每次建置都警告日文與中文缺少詞幹還原。真正的缺陷在別處:查詢端與索引端的斷詞器不一致,回傳了錯誤的頁面。
在 Astro 中用 Intent URL 組出分享按鈕:每個語系有各自的分享目標、寬螢幕上的固定圖示側欄,以及過程中發現的端點變動。
為 Astro 部落格的目錄加上跟隨讀者的捲動、跨層級共用的軌線,以及在手機上悄悄吃掉 max-height 的 ::details-content 虛擬元素。
在 Astro 7 導入 Expressive Code 的紀錄:檔名分頁、依主題調整的檔案圖示、Sätteri 處理器的陷阱,以及被 Shiki 當成語言名稱的 97 個程式碼圍籬。
這個部落格為什麼沒有 CMS:由圖片決定的目錄結構、選擇 MDX 而非 Markdown 的判斷,以及取代外鍵的標籤登錄表。