[ PROMPT_NODE_24014 ]
C3 说明文档
[ SKILL_DOCUMENTATION ]
# C3 (create-cloudflare)
官方 CLI 工具,用于通过模板、TypeScript 和即时部署来搭建 Cloudflare Workers 和 Pages 项目。
## 快速开始
bash
# 交互式(推荐初次使用)
npm create cloudflare@latest my-app
# Worker (API/WebSocket/Cron)
npm create cloudflare@latest my-api -- --type=hello-world --ts
# Pages (静态/SSG/全栈)
npm create cloudflare@latest my-site -- --type=web-app --framework=astro --platform=pages
## 平台决策树
你要构建什么?
├─ API / WebSocket / Cron / 邮件处理器
│ └─ Workers (默认) - 无需 --platform 标志
│ npm create cloudflare@latest my-api -- --type=hello-world
├─ 静态网站 / SSG / 文档
│ └─ Pages - 需要 --platform=pages
│ npm create cloudflare@latest my-site -- --type=web-app --framework=astro --platform=pages
├─ 全栈应用 (Next.js/Remix/SvelteKit)
│ ├─ 需要 Durable Objects、Queues 或仅限 Workers 的功能?
│ │ └─ Workers (默认)
│ └─ 否则使用 Pages 以获得 git 集成和分支预览
│ └─ 添加 --platform=pages
└─ 转换现有项目
└─ npm create cloudflare@latest . -- --type=pre-existing --existing-script=./src/worker.ts
**关键点:** Pages 项目需要 `--platform=pages` 标志。如果没有它,C3 默认使用 Workers。
## 交互式工作流
当不带标志运行时,C3 会按以下顺序提示:
1. **项目名称** - 要创建的目录(默认为当前目录 `.`)
2. **应用类型** - `hello-world`, `web-app`, `demo`, `pre-existing`, `remote-template`
3. **平台** - `workers` (默认) 或 `pages` (仅限 Web 应用)
4. **框架** - 如果是 web-app:`next`, `remix`, `astro`, `react-router`, `solid`, `svelte` 等
5. **TypeScript** - `yes` (推荐) 或 `no`
6. **Git** - 初始化仓库?`yes` 或 `no`
7. **部署** - 立即部署?`yes` 或 `no` (需要 `wrangler login`)
## 安装方法
bash
# NPM
npm create cloudflare@latest
# Yarn
yarn create cloudflare
# PNPM
pnpm create cloudflare@latest
## 本参考文档内容
| 文件 | 用途 | 使用场景 |
|------|---------|----------|
| **api.md** | 完整的 CLI 标志参考 | 脚本编写、CI/CD、高级用法 |
| **configuration.md** | 生成的文件、绑定、类型 | 理解输出、自定义配置 |
| **patterns.md** | 工作流、CI/CD、monorepo | 实际项目集成 |
| **gotchas.md** | 故障排除 | 部署受阻、错误处理 |
## 阅读顺序
| 任务 | 阅读 |
|------