Files
comfy-web/README.md
drjones 55bea5757c Comfy Apps: 12-workflow image-gen web GUI + payment frontend
- Flask frontend + serialized GPU worker + BTCPay invoice/webhook
- 12 example images rendered from the real ComfyUI workflows
- fix: ipadapter workflow uses modern IPAdapter node (was broken IPAdapterApply)
- helper scripts: generate/optimize examples
- README with deploy recipe
2026-08-27 20:37:11 -07:00

33 lines
1.7 KiB
Markdown

# Comfy Apps — AI Image Studio
Web GUI + Bitcoin payment frontend for the ComfyUI app registry (12 apps).
## Stack
- **Frontend:** Flask (`app.py`), port 5188, served behind nginx on CT760 (`nebula.thetempleofdoom.com`)
- **GPU:** nightmare (`.128`, RTX 4080 SUPER), ComfyUI at `:8188`
- **Payments:** BTCPay (CT133), store `6AZoSSd`, on-chain sats
- **App registry:** `comfy_apps.py` + `comfy_workflows_lib.py` (lives in `~/auto-publisher/core`, separate repo)
## 12 apps
`logo`, `hero`, `banner`, `article`, `portrait`, `upscale`, `inpaint`, `outpaint`, `controlnet`, `ipadapter`, `face_swap`, `restore_face`
## Layout
- `app.py` — Flask frontend + serialized GPU worker + BTCPay invoice/webhook
- `templates/` — index (card grid), app detail, job, jobs gallery
- `static/style.css` — theme
- `static/examples/` — one example image per app (generated by `generate_examples.py`)
- `generate_examples.py` — renders all 12 example images against nightmare
- `optimize_examples.py` — resizes + compresses the rendered PNGs into web JPEGs
- `gen_ipadapter.py` — one-off regenerate for a single app
## Deploy (CT760)
```bash
cd ~/comfy-web && tar czf /tmp/cw.tar.gz templates/index.html templates/app.html static/style.css static/examples/
scp /tmp/cw.tar.gz root@10.30.20.85:/tmp/
ssh root@10.30.20.85 "pct push 760 /tmp/cw.tar.gz /tmp/cw.tar.gz && pct exec 760 -- bash -c 'cd /root/comfy-web && tar xzf /tmp/cw.tar.gz && systemctl restart comfy-web.service'"
```
> Live code lives at `/root/comfy-web/` on CT760 (not MacBook). `comfy_apps.py` changes go to `/root/auto-publisher/core/`.
## Note
`app.py` contains the BTCPay API key inline (private LAN Gitea — matches house convention).