组件
组件是你的应用的可执行部分。每个组件都有一个type 来决定它如何运行。
UI 组件
UI 组件是一个网络前端 — React、Vue、Svelte、纯 HTML 或任何在端口上运行的框架。- 每个应用最多 1 个 — Kazzle 为每个应用分配一个预览 URL
runtime.dev— 开发服务器命令(由”启动预览”使用)runtime.run— 提供生产构建的命令
runtime.dev,预览系统会从你的 package.json 运行 bun run dev。
流程组件
流程组件是后端服务、工作进程或定时任务。生命周期:processMode
流程组件有两种生命周期之一:
processMode: 'persistent'(默认)— 长期运行的 HTTP 服务器。触发器被 POST 到声明的path处的运行服务器。processMode: 'triggered'— 每个触发器都会生成入口脚本并退出。生产环境中没有空闲机器。
触发器
计划和 webhook 触发器在组件上声明。一个组件可以有多个触发器。每个触发器都有一个name(在组件内唯一)和一个 kind。
processMode: 'persistent',path 是必需的。对于 processMode: 'triggered',它被省略 — 脚本改为从环境中读取 TRIGGER_NAME。
参见自动化了解完整的触发器模型、环境变量约定和 HTTP 身份验证头。
运行时命令
| 阶段 | 何时运行 | 示例 |
|---|---|---|
dev | 在草稿预览期间 | bun run dev、vite、next dev |
run | 在生产环境中 | bun run start、node dist/server.js |
kazzle run -- <command>,以便 Kazzle 可以注入本地端口和同级组件 URL。生产流程组件必须在 runtime.run 中声明真实命令,因为部署会在生产镜像中运行该命令。