ComfyUI Deploy
Open source comfyui deployment platform, a vercel for generative workflow infra.
Nodes (29)
Save HDR EXR output from a deployed workflow — the export half of the HDR pair
Ship any file out of a deployed workflow — zips, PSDs, CSVs, whatever
The SaveImage that actually gets your image back out of ComfyDeploy
Return text from a deployed workflow — prompts, captions, JSON payloads
Receive a live image from a web client — the input half of realtime ComfyUI
Stream images to a web client mid-generation — no waiting for the full run
Load audio into a deployed workflow from a URL or file path
The toggle your deployed API callers will actually use
Let API callers pick the checkpoint — or hot-download one from a URL
The dropdown your API callers actually want — a real menu, not a free-text box
Feed HDR EXR files into a workflow — tonemapping included, no Photoshop trip required
Feed ReActor face-swap models into a deployed workflow — without hand-copying files
Drop an arbitrary file into a deployed workflow by URL
The img2img input that eats URLs and base64 — the workhorse of deployed workflows
External Image, but the alpha channel survives the trip
Send a whole batch of images to a deployed workflow — from one JSON array
Point your API callers at a LoRA without them ever touching your disk
The float input for deployed workflows — and its one genuinely weird quirk
External Number, but integers only — steps, seeds, batch sizes
The Float Slider That Becomes an API Argument
The Integer Slider for When Steps and Counts Are API Inputs
The Seed Input That Knows When to Re-Roll
The Text Field That Turns Your Prompt Into an API Parameter
The Wildcard Text Input That Fits Any Socket
The Video Node That Hands You a File Path, Not Pixels
The VHS-Powered Video Input That Actually Decodes Frames
The Model List Node That ComfyUI Deploy Already Deleted
String Combine With a Hidden Regex Superpower
String Function is really a prompt-tag cleaner wearing two hats
ComfyUI Deploy
Open source comfyui deployment platform, a vercel for generative workflow infra. (serverless hosted gpu with vertical intergation with comfyui)
Check out our latest lcoal demo -> https://github.com/comfy-deploy/comfyui-api-comfydeploy
Full backend and frontend is here -> https://github.com/comfy-deploy/comfydeploy
[!NOTE]
Im looking for creative hacker to join ComfyDeploy's core team! DM me on twitter
Join Discord to chat more or visit Comfy Deploy to get started!
Check out our latest nextjs starter kit with Comfy Deploy
# How it works
- Comfy Deploy Dashboard (https://comfydeploy.com) or self-hosted version
- Machines (Long running, on-premise ComfyUI machines and serverless)
- Supports runpods, modal, and hosted ComfyDeploy machines (powered by modal)
https://github.com/BennyKok/comfyui-deploy/assets/18395202/85f85325-a4bb-446d-aa67-ed225ee03479
Setting up a basic sd txt2img API
https://github.com/BennyKok/comfyui-deploy/assets/18395202/0fb1829b-401a-41f2-b21a-5b77483c6ee2
Comfy Deploy Plugin Installation
Plugin lets you set up the machine as a target machine, and also upload workflow directly from there
cd custom_nodesgit clone https://github.com/BennyKok/comfyui-deploy.git- Go to (https://comfydeploy.com) or a self-hosted version
- Machines -> Add Machines
- Enter a name and the URL of your machines (set up Ngrok for a public URL for your machines)
- Create a new ComfyDeploy machines (pick any custom nodes).
- Machines -> Add Machines
Usecase
- Deploy a complicated comfy workflow with a versioning system
- Manage versioning and easily preview different generated versions' output
- Persistent API generated for Production and Staging environment
- Run the same comfyui workflow across different remote machines
# Status & Timeline
WIP, welcomes contributors!! Please join Discord -> https://discord.gg/EEYcQmdYZw
Primary goal -> release v0.1.0 of stable Comfy Deploy
Major areas
- Security enforcement
- Error handling
- QOL workflow improvement
- API usage examples
- Load balancing
- Workflow dependencies checking (custom nodes)
- Remote machines
- Serverless machines? Possible to set up a clean environment via Salad, Modal, etc
- LCM realtime web socket image gen
Tech Stack
-
Shadcn UI
-
NextJS
-
Clerk (Auth)
-
Neon / Vercel Postgres (Database)
-
Drizzle (ORM)
-
R2 / S3 (Object Storage)
Development
git clone https://github.com/BennyKok/comfyui-deploycd webbun i- Start docker
cp .env.example .env.local- Replace
JWT_SECRETwithopenssl rand -hex 32 - Get a local clerk dev key for
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEYandCLERK_SECRET_KEY - Keep a terminal live for
bun run db-dev - Execute the local migration to create the initial data
bun run migrate-local - Finally start the next server with
bun dev
Schema Changes
bun run generatebun run migrate-local
Special Thanks
- comfyui
- oss/acc
Self Hosting with Vercel
Build command
next build && bun run migrate-production
Install command
npx [email protected] install
Env key setup
POSTGRES_URL=
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
SPACES_ENDPOINT="http://localhost:4566"
SPACES_ENDPOINT_CDN="http://localhost:4566"
SPACES_BUCKET="comfyui-deploy"
SPACES_KEY="xyz"
SPACES_SECRET="aaa"
# generate using -> openssl rand -hex 32
JWT_SECRET=
# r2 settings
SPACES_REGION="auto"
SPACES_CDN_FORCE_PATH_STYLE="true"
SPACES_CDN_DONT_INCLUDE_BUCKET="true"
# digital ocean settings
SPACES_REGION="nyc3"
SPACES_CDN_FORCE_PATH_STYLE="false"
# s3 settings
SPACES_REGION="nyc3"
SPACES_CDN_DONT_INCLUDE_BUCKET="false"
SPACES_CDN_FORCE_PATH_STYLE="true"