從 Hexo 遷移到 Astro,剛好部落格 6 歲了
這個部落格的第一篇文章發佈在 2020 年 4 月,當初自己還是個前端初學者,沒想到直到今日還是可以在前端的領域學習到很多新東西,真的是永遠學不完呢。
關於這個 Blog
當初用 Hexo 架部落格只是想要有一個地方可以放自己的學習筆記,另一方面也是希望自己能在網路上留下一點足跡。仔細回頭看,以前寫了好多技術文章,幫我建立了很不錯的基本功,寫部落格文章對於技術的消化跟吸收真的很有幫助。
但後來因為忙碌的關係,寫文章變得會很佔用時間,再來是每次都會忘記 hexo 的指令,都要重新查文件,還有讓我比較沮喪的是我很用心寫的文章,觀看數都還是比技術文章的點閱來得低,讓我懷疑自己花這個時間好嗎…
於是過去幾年發佈文章的頻率就變得很低。
但是我一直有持續做筆記的習慣,也一直有這樣的想法:想把我的觀點分享出來、想要有一個地方可以很好的展示我的思路、想讓志同道合的人找到我。
隨著自己的工作開始接觸 AI,我開始在工作之餘有一點餘裕可以用 Claude Code 去做一些小工具,也想實驗看看用 AI 寫作能做到什麼程度,所以我又投注心力到 Blog 了。
接下來我想要慢慢把這些技術筆記、職場觀察、投入 AI 工具的心得整理成文章,陸續發布上來。
下定決心從 Hexo 搬遷到 Astro
剛開始用 Hexo 建立 Blog 的時候我還很開心,花了很多時間找到 Icarus 的版型,自己滿喜歡他的 Layout,就一直持續使用了。
但一直有幾個讓我覺得不滿意的地方:
- Icarus 本身很大包,如果沒有處理效能的話,Web Vitals 的分數就會不好看。
- 部署的方式是放到 gh-pages 分支,也就是說發布的時候我都還要確認到底有沒有推上去。
- 然後我也不是固定在發文章,每次打開這個專案都要再查 hexo 的指令。
但我想寫作而不是想要來處理技術的問題啊…所以就一直擺著這些問題不處理。
直到之前玩 paperclip (用 AI 開公司的開源專案),我嘗試用來優化這個部落格,他就一直開 PR 解決效能的問題,但每次我都要先合併後再重新部署才能實測。
有天我就想說,與其一直補丁,不如換掉。
成功遷移到 Astro
跟 Claude 討論幾次之後,決定搬到 Astro。
我想說就當作用 Claude Code 做實驗,看看能不能不介入程式碼也能完成遷移,結論就是:完全可以!
先跟 Claude 做 brainstorming,把遷移分成好幾個 phase,從 spec 到 plan 都先寫清楚,確認完再動手。
我每天跑一個 phase,跑完一段就休息,也有上 git 讓這件事情可以隨身攜帶。最重要的是我有記錄到知識庫裡,這樣我每次都不用記得做到哪了,只要問說幫我看這個專案還有什麼事情還沒做,然後再讓他繼續執行還沒做的,我只有在遇到需要決策的時候才會跟他討論。
大約花了一週的時間只要我有空就讓 Claude Code 自己去跑遷移的任務,到最後他連 CI/CD 都幫我建立好,還把 GA4、網站路由都成功遷移。
遷移完成後,整個網站看起來還光禿禿的。剛好那幾天 Claude 推出 Claude Design,我就拿 blog 來試用。讓它先讀 repo,設計我的網站的 design system,沒想到做出了我還滿喜歡的風格。
以前最煩惱的設計問題現在都可以解決了,而且還不是套版,是完全照自己的提示做出來的風格,我覺得就算別人來模仿,也沒辦法模仿出我的思考我為什麼想要這樣。
首頁版型 Before / After:


最後跑了一次 PageSpeed,電腦 100、行動 99,四個指標幾乎全滿,也檢查了 GA4 數據完全都沒掉,只能說從 Hexo 遷移到 Astro 的實驗非常成功!
PageSpeed Insights 手機版 Before / After:


部落格滿 6 年
做完這些之後我才發現,這個部落格的第一篇文章發佈在 2020 年 4 月,不就剛好滿 6 年嗎。我相信這是一個順利的訊號,期許未來我能分享更多自己的內容。