> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kazzle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 構建和發佈

> 使用 AI 構建應用、在實時預覽上迭代，以及部署到生產環境。

## 建立應用

兩種方式：

* **詢問 AI** - 在對話中描述你想要的內容，AI 會為你構建
* **新應用按鈕** - 點擊 Drive 側邊欄中的 **+**，然後選擇 **新應用**

AI 會根據你的描述選擇起始範本：

| 範本        | 你會得到       | 適用於                  |
| --------- | ---------- | -------------------- |
| `ui`      | React 網頁應用 | 網頁應用、儀表板、著陸頁         |
| `process` | HTTP 伺服器   | API、Webhook 處理器、排程工作 |

## 一個應用，一個分支

每個應用都是 `main` 上的單一 git 檢出。沒有單獨的草稿、沒有分支切換、沒有合併步驟。每次編輯都會作為提交落在 `main` 上；發佈就是「部署當前的 `main`」。

## 構建週期

1. AI 直接在 `main` 上編寫程式碼
2. AI 啟動開發伺服器。你會看到實時預覽。
3. 你通過對話迭代：「將圖表移到側邊欄」、「添加深色主題」
4. 每次編輯後，開發伺服器會熱重載
5. 準備好後，發佈

## 發佈

發佈會部署當前的 `main` 提交。沒有單獨的生產分支 — 最近在 `main` 上發佈的提交就是實時版本。

當你發佈到目錄供他人安裝時，你的應用會在啟動時收到用戶身份令牌、後端的安裝密鑰，以及安裝/卸載 Webhook。請參閱 [發佈](/apps/publishing)。

## 快取、更新和離線

桌面和行動裝置只會在普通瀏覽器檢視中開啟你的應用 URL。它們**不會**清除瀏覽器快取、強制僅網路載入，或為公開應用和私人應用選擇不同的快取政策。

你的網頁應用擁有快取控制權：

* 文件和資源的 HTTP `Cache-Control` 標頭
* 可選的 Service Worker / PWA 設定（範本附帶 `vite-plugin-pwa` 和自動更新）
* 新構建是立即啟動、重載一次，還是等待下次開啟
* 最新啟動構建的離線備用方案

當 Kazzle 看到開啟的應用標籤有新發佈版本時，它會要求已註冊的 Service Worker 檢查更新（`registration.update()`）。沒有 Service Worker 的應用會忽略該檢查，並繼續使用自己的 HTTP 快取標頭。

因此，已發佈的應用可以從快取中立即開啟、無需硬重新整理即可獲取新構建，並保持最新構建在離線狀態下可用。

## 部署

發佈後，部署以獲得實時 URL：

* **遠端應用**部署到 Kazzle 的雲端並獲得公開 URL
* **本機應用**安裝在你的電腦上。UI 直接載入，Process 部分運行開發伺服器。

## 實時應用

對於需要即時本機讀取和離線支援的應用，AI 會：

1. 建立資料庫
2. 啟用實時同步
3. 構建雙部分應用：UI（React + 同步客戶端）和 Process（令牌端點 + 同步上傳）
4. 通過 [Vault](/work/vault) 連接認證

請參閱 [實時同步](/apps/sync) 了解其工作原理。

## 著陸頁

著陸頁是僅限 UI 的應用。沒有後端、沒有資料庫。描述頁面，AI 會構建它、部署它，並給你一個實時 URL。要使用自訂網域，請將你的網域或子網域指向已部署的應用 URL。
