[實戰筆記] 如何在「現有資料夾」中初始化 Astro 專案?(部署至 Cloudflare Pages)
[實戰筆記] 如何在「現有資料夾」中初始化 Astro 專案?(部署至 Cloudflare Pages)
最近在準備開發一個新的 Landing Page(專案代號:Citrine),習慣上我會先在 GitHub 建立好 Repository,然後 Clone 到本機。這時問題來了:我已經在專案資料夾裡了,要怎麼直接在這裡安裝 Astro,而不是讓它又幫我多建一層 my-astro-app 的資料夾?
這篇筆記記錄了使用 npm create cloudflare 初始化的正確姿勢,以及針對 Landing Page 的範本選擇思路。
1. 問題情境
通常我們執行建立指令時,CLI 工具都會問專案名稱,然後自動建立一個同名的新資料夾。
但我的情況是:
- 目前位置:
C:\Users\iantp\GitHub\2512-citrine-landing-page - 目標:直接把 Astro 的檔案安裝在 這一層,不要再產生子目錄。
2. 關鍵指令:使用 -- 傳遞參數
如果你使用 Cloudflare 的整合指令來安裝 Astro,請使用以下指令:
npm create cloudflare@latest -- --framework=astro --platform=pages
💡 指令解析
npm create cloudflare@latest:呼叫 Cloudflare 的專案建立工具。--(雙連字號):這是關鍵!它的意思是「後面的參數不要當成資料夾名稱,而是傳給工具的選項」。--framework=astro:指定使用 Astro 框架。--platform=pages:指定部署平台為 Cloudflare Pages。
3. 互動式問答:指定「目前目錄」
輸入上述指令後,系統會進入互動模式,當它問你這句話時:
In which directory do you want to create your application?
(你想在哪個目錄建立你的應用程式?)
請輸入:
.
或者直接按 Enter(預設通常就是 ./)。
解釋:. 在系統路徑中代表 Current Directory (目前目錄)。這樣工具就會知道:「喔!你不想開新房間,你想直接住在這裡。」
4. 範本選擇:Landing Page 該選哪一個?
安裝過程中,Astro 會問你要使用哪種 Template(範本):
A basic, helpful starter projectUse blog templateUse docs (Starlight) templateUse minimal (empty) template
💡 決策思路
既然目標是做 Landing Page(單頁式銷售頁/首頁),我們的需求通常是:
- 高度客製化的 Layout(Hero Section, Features, CTA)。
- 不需要部落格的文章列表功能。
- 不需要文件站的側邊欄結構。
✅ 最佳選擇:Use minimal (empty) template
選擇「最小化(空白)範本」是最乾淨的起點。
- 路由簡單:通常只有一個
/(src/pages/index.astro)。 - 沒有干擾:不用花時間刪除預設的 Blog 或 Docs 檔案結構。
- 從零堆疊:直接引入 Tailwind 或 UI 庫,開始切版。
(備註:如果你是 Astro 初學者,想參考怎麼拆分 Component,選 Basic starter 也可以,但記得要把不用的頁面刪乾淨。)
5. 總結
要在現有的 Git Repo 資料夾中開始 Astro 專案,只需記住兩個重點:
- 指令中間加
--。 - 路徑位置填
.。
這樣就能保持專案結構乾淨,直接進入開發環節!
下一步
初始化完成後,別忘了安裝依賴套件並啟動開發伺服器:
npm install
npm run dev
Happy Coding! 🚀