iT邦幫忙

2026 iThome 鐵人賽

DAY 19
0
Build on Google AI

30 天玩轉 Google AI 全家桶:初學者的隨身 Coding 助理養成記系列 第 19 篇

Day 19:取出 Stitch 成果,將生成的 Tailwind CSS 移植到本地

  • 分享至 

  • xImage
  •  

Day 18 用兩份 prompt 把 analyzeCodeFlow 的輸出「畫」了出來,但畫面還鎖在 Stitch 的畫布裡,點不到、改不了,也接不上任何東西。今天把它搬回自己的電腦,讓 DevPulse 儀表板在本機瀏覽器裡開起來。

今天做三件事:

1. 從 Stitch 取出程式碼,存成 devpulse/web/index.html
2. 在本機打開,並列出它偷偷依賴的外部資源(Tailwind CDN、字體、圖片)
3. 認識「移植」的兩條路:沿用 CDN,或改成自己建置 CSS(今天走前者,後者記下來)

今天開始動 devpulse/,但只新增一個 web/ 資料夾,不碰 Day 15~17 的後端。路徑請依你的倉庫調整。


一、Stitch 匯出的到底是什麼

Stitch 的程式碼匯出是一份靜態 HTML,樣式用 Tailwind CSS 寫,並且靠 CDN 載入 Tailwind。也就是說,匯出檔不是一個「專案」,只是一個能直接打開的網頁檔。

Stitch 還有其他匯出管道,今天先整理一下,免得走錯路:

匯出管道 拿到什麼 今天用嗎
程式碼檢視(< > 圖示) 單一畫面的 HTML + Tailwind ✅ 用這個
Copy to Figma 可在 Figma 編輯的圖層 ❌ DevPulse 不走設計稿流程
DESIGN.md 色彩、字體、間距等設計規則的 markdown ❌ 之後想跨專案沿用風格再說
匯出到 AI Studio / Antigravity 交給其他開發工具接手 ❌ 今天先求最單純

Stitch 的介面更新很快,按鈕位置與名稱以你畫面上看到的為準。【若與實際不同,請修正上表】


二、取出程式碼

  1. 回到 Day 18 迭代後的那一版,在畫布上選取儀表板那個畫面
  2. 點程式碼圖示(< >)
  3. 程式碼檢視是唯讀的,所以直接複製(或下載 HTML),貼到編輯器
  4. 存成 devpulse/web/index.html
  5. 另存一份原檔到 docs/stitch-day18/export-original.html,這份永遠不改

第 5 步是為了之後能對照:本機改了什麼、Stitch 原本長什麼樣,一個 diff 就看得出來。


三、第一次在本機打開

兩種開法都試一次:

# 方法 A:直接雙擊 index.html

# 方法 B:起一個本機伺服器(需要 Node,Genkit 那幾天已經裝好了)
npx serve devpulse/web

方法 B 的預設網址以終端機輸出為準(通常是 http://localhost:3000)。為什麼要兩種都試?因為之後前端要向本機後端發請求,用 http://localhost 開頁面會比 file:// 單純,現在先養成習慣。

打開之後,先別急著改,先列出這份 HTML 依賴了哪些外部資源:

grep -n "https://" devpulse/web/index.html

(沒有 grep 的話,用編輯器搜尋 https:// 也行。)

你會找到什麼 為什麼要管
<script src="...tailwind..."> 樣式靠它在瀏覽器即時產生,離線或被擋,整頁會變成沒有樣式。網址裡的版本也要看(例如 @4),版本決定設定怎麼寫
<link href="https://fonts.googleapis.com/..."> 字體與圖示來源,沒載入時字體會退回預設
指向外部的圖片網址 不保證長期有效。DevPulse 是程式碼審查工具,本來就不需要照片,破圖就換成色塊或直接刪掉
內聯的 <script> 或 <style> 設定 主色、字體等主題設定通常放這裡,想換青綠色就改這裡

四、「移植」的兩條路

「把 Tailwind CSS 移植到本地」其實有兩種意思:

路線 A:沿用 CDN 路線 B:自己建置 CSS
做法 index.html 原封不動 用 Tailwind CLI 把用到的樣式編成一個 output.css
好處 零設定,今天就能看到畫面 不依賴 CDN,離線也能開,可以上線
代價 Tailwind 官方說 Play CDN 只適合開發,不適合正式環境 多一個建置步驟;Stitch 的設定若是舊寫法要改寫

今天走路線 A。 理由很實際:DevPulse 目前只是跑在自己電腦上的工具,先確保畫面完整,比先把建置流程弄好更重要。路線 B 先記在這裡,等哪天真的要部署再回來。

# 在 devpulse/ 安裝(位置依你的專案結構決定)
npm install tailwindcss @tailwindcss/cli

建立 src/input.css:

@import "tailwindcss";

編譯成靜態 CSS:

npx @tailwindcss/cli -i ./src/input.css -o ./web/dist/output.css --watch

最後把 index.html 裡的 Tailwind <script> 換成:

<link rel="stylesheet" href="./dist/output.css">

內聯設定裡的主色、字體要搬進 input.css 的 @theme { ... }。實際指令請以 Tailwind 官方的 CLI 文件為準。


五、標記假資料的位置

Day 18 說過,統計數字和問題清單都是假資料,Day 29 才會換成 analyzeCodeFlow 的真實輸出。今天不改邏輯,只做一件小事:在 HTML 裡找出假資料的位置,並加上註解。

畫面區塊 對應 Day 17 欄位
四張統計卡 issues.length、各 severity 的數量
問題詳情清單 title、severity、explanation
最近審查列表 (目前 flow 沒有,檔名、時間、問題數量)
<!-- TODO(Day 29): 換成 analyzeCodeFlow 的輸出 -->

先標好,之後接資料時就不用重新翻一次 HTML。


六、實測紀錄

檢查項目 預期 我的結果
雙擊開啟 版面、深色模式、青綠主色都在 【填入】
npx serve 開啟 與上一列一致 【填入】
斷網後重新整理 樣式消失(證明依賴 CDN) 【填入】
外部圖片 全部載入/有破圖 【填入】
與 Stitch 預覽比對 差異:【填入】 【填入】

工作流守則: 匯出的是「那一刻的快照」。回 Stitch 改版再重新複製,會蓋掉你在本機改過的地方。我的規則是:視覺上的調整回 Stitch 做,資料與互動在本機做,本機動過之後就不再整檔覆蓋。

限制: 程式碼檢視一次只對應一個畫面,今天只取儀表板這一頁。


明日預告

畫面在本機跑起來了,但裡面還是假資料。明天 Day 20:【依你的大綱填入 Day 20 主題】。


參考資料


上一篇
Day 18:用嘴巴切版:Google Stitch 介面生成器上手初體驗
系列文
30 天玩轉 Google AI 全家桶:初學者的隨身 Coding 助理養成記 共 19 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言