Kokon
A free, local alternative to Nano Banana and Generative Fill. Brush an area, type the change, and your own GPU does the edit. One installer for Windows, Mac and Linux.
翻訳待ち
リポジトリ情報はまだ収集していません。
No updates detected yet. GitHub releases will appear here.
Comfy API Apps: Product Relight, Image Upscaler, Sprite Generator, Virtual Try On, Background Removal on Comfy Cloud
翻訳待ち
Loading the full README.
Read the full README ↗Sprite sheets, virtual try-on, hand product swap, paparazzi inserts, background removal, an open product-swap video, an overhead unboxing, and a Halloween pumpkin-carve timelapse, each running a real ComfyUI workflow on its own Comfy API deployment. API keys stay on the server.
Live: jpcosta-comfy-apps.vercel.app
| App | What you do | Engine | Deployment |
|---|---|---|---|
| Sprite sheet generator | Upload a character. Choose style (pixel, toon, 3D), motion (idle, walk, jump), and an optional animation note. | Nano Banana 2. One 4×2 sheet at 16:9 / 2K. The browser slices it into the preview. | sprite-generator |
| Virtual try-on | Upload a person and a garment. Choose slim, regular, or relaxed. | FLUX Virtual Try-On | virtual-try-on |
| Hand product swap | Upload a hand photo and a product. Same hand and grip, new product. Resolution is 1K, 2K, or 4K. | Nano Banana Pro (Gemini) | hand-product-swap |
| Paparazzi Me | Type a celebrity name and upload your face. The server searches for a paparazzi photo (or you pick one). A scene upload is an optional override. Resolution is 1K, 2K, or 4K. | Nano Banana Pro (Gemini) | paparazzi-me |
| Background removal | Upload a photo. Choose transparent, white, or lilac, then PNG or WebP. | BiRefNet. White, lilac, and WebP are composited in the browser. | background-removal |
| Open Product Swap | Upload a short clip of someone holding a product, plus a product photo. Optional product note. Resolution is 480p or 720p. | Wan 2.1 VACE plus FLUX 3. Output is an mp4. | open-product-swap |
| Open Unboxing | Upload 1–5 product photos and pick a preset box. | BiRefNet cutout, FLUX 3 nested keyframe, LTX 2.5 first-last frame, RIFE ×2. Output is an mp4. | open-unboxing |
| Pumpkin Carve | Upload one photo. | Recraft vectorize stencil (works with celebrity photos), Seedream 4.5 blank+carve stills, Kling 3.0 first-last-frame hyperlapse (blank→carved, 720p). The SVG is a live stencil only. Output is an mp4. | pumpkin-carve |
The hosts above are the defaults in workflows/deployments.json. Workers are --min 0 --max 1, and only 3 deployments can be active at once, so a host may be stopped or still cold-starting. Open Product Swap and Open Unboxing use the work-personal workspace. Pumpkin Carve uses the Comfy team workspace.
POST /api/run/[app]. Images are png, jpg, or webp up to 15 MB. The server applies EXIF rotation and resizes to that app's maxSide in workflows/apps.config.json. Open Product Swap also takes one MP4, MOV, or WebM up to 4 MB (the whole form must stay under about 4.5 MB). Open Unboxing takes 1–5 product photos; the browser shrinks them so the form stays under 4 MB, and the server uploads the chosen preset's empty and lid-on stills itself. Pumpkin Carve takes one photo (max side 1536). Reverse 3D takes one video (MP4, MOV, or WebM; only the first 10 seconds are used) and, as reference, a grey blocking still of its first frame that Nano Banana drew a moment before (step=still on /api/reverse-3d/subject). Kling copies the still's look on every frame; without it the run still works from words alone. The browser compresses clips over ~4 MB and builds a side-by-side compare after the playblast returns. Paparazzi Me can omit the scene file: GET /api/paparazzi/search?q= returns signed scene choices, and the run downloads the chosen photo (or the best match for the celebrity name) before upload. A scene file overrides that search. The celebrity name is not sent to the workflow.POST /api/v2/assets. The multipart fields go in this order: content_type (image/png, or video/mp4 / video/quicktime / video/webm), file_path, tags (["input"] as a JSON string), then file. Putting file first returns HTTP 422 invalid_body.workflow_api.json receives the asset id on each LoadImage or LoadVideo, plus the prompt and seed from the controls. Open Unboxing also patches the insert box from the preset.POST /api/v2/jobs on the same host, with an Idempotency-Key. Sprite sheet generator, Virtual try-on, Hand product swap, and Paparazzi Me send extra_data.api_key_comfy_org from COMFY_API_KEY (or COMFY_CLOUD_API_KEY). Open Product Swap and Open Unboxing send that field from COMFY_API_KEY_WORK_PERSONAL only. Pumpkin Carve and Reverse 3D send it from COMFY_API_KEY_TEAM only. Partner jobs use credits.GET /api/jobs/{app}~{jobId}. Image apps wait up to 8 minutes. Open Product Swap, Open Unboxing, and Pumpkin Carve wait up to 15 minutes and say when a cold start is likely. The app slug picks the deployment.GET /api/outputs/{app}~{assetId}?sig=.... The signature is checked, then the server loads a short-lived URL (about 6 hours) and streams the bytes. Video results play in the page and download as mp4 or webm.Every call to a deployment sends Authorization: Bearer and that deployment's key. A record with keyEnv never falls back to COMFY_API_KEY.
A stopped deployment (deployment_stopped, 422) needs comfy deploy start before another run will go through. A cold start (deployment_not_ready, 429) means wait, then run again.
Server only. Locally that is .env.local. On Vercel, project comfy-api-apps, Production and Preview.
This is the beginning of the README. Read the rest at the original. Read the full README ↗