| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
把小说片段变成漫画分镜条:粘贴一段文字,选择画风,自动生成多格漫画。纯前端应用 + Cloudflare Pages Functions 中转,无需自建后端,API Key 由使用者自己在浏览器里配置(存于 localStorage,不上传服务器)。
要求 Node.js 20+。
npm install
npm run dev # http://localhost:3000开发环境下两个中转接口由 Vite 插件/代理实现(vite.config.ts),与 functions/ 里的生产实现逻辑一致。
其他命令:
npm run build # 类型检查 + 构建到 dist/
npm run lint
npm run preview部署或启动后,点击页面右上角「API 设置」,填入:
| 字段 | 说明 | 默认值 |
|---|---|---|
| Base URL | 方舟接口地址 | https://ark.cn-beijing.volces.com/api/plan/v3 |
| API Key | 你的方舟 API Key(Agent Plan 专属 Key 仅支持 /api/plan/v3 路径) | 无 |
| 文本模型 ID | 分镜/文案生成 | doubao-seed-evolving |
| 图片模型 ID | 生图 | doubao-seedream-5.0-lite |
| size | 生图尺寸(Seedream 最低 3,686,400 像素) | 2048x2048 |
配置只保存在浏览器 localStorage。请求方舟域名时会自动改走本站 /ark-api 中转以绕过 CORS;生成结果图片经 /img-proxy 中转以便下载和画布导出。
方舟接口(ark.cn-beijing.volces.com)的响应不带 CORS 头,浏览器会拦截一切跨域直连的 fetch,前端改任何代码都无法绕过,必须有一个同源中转层代发请求。本项目的中转层有两份等价实现:
/img-proxy 另有原因:火山 TOS 图片不带 CORS 头(会导致 html2canvas 画布污染、导出失败),且部分广告拦截插件会屏蔽其域名。
因此本项目无法以"纯静态、零后端"方式部署——除非方舟官方为接口加上 CORS 头,否则任何部署目标都需要等价实现这两个转发(见下节)。
functions/ 目录是 Pages Functions,部署后自动生效。
npm install -D wrangler
wrangler login
npm run build
wrangler pages project create comicforge --production-branch main # 首次
wrangler pages deploy dist --project-name comicforge部署完成后访问 https://<project-name>.pages.dev。
如果不使用 Cloudflare Pages,需要注意两个中转接口的替代方案:
在 Vercel/Netlify/Nginx 上等价实现这两个转发即可,前端代码无需改动。
functions/ Cloudflare Pages Functions(生产环境中转接口) ark-api/[[path]].ts 方舟 API 中转(绕过 CORS) img-proxy.ts 生成图片中转(TOS 无 CORS 头 / 广告拦截) src/ pages/Home.tsx 首页 sections/ Hero / Generator / StyleGallery / HowItWorks / Faq components/comic/ 生成器相关组件(设置弹窗、分镜卡、导出等) lib/ api.ts(方舟调用)、config.ts(localStorage 配置)、storyboard.ts(分镜拆分) vite.config.ts 开发环境的等价中转实现(改动需与 functions/ 同步)
注意:vite.config.ts 中的 /ark-api、/img-proxy 与 functions/ 下的实现是开发/生产两份等价逻辑,修改其中一份时请同步另一份。
| Back | FazBrowse Home | New Git URL |