mirror of
https://github.com/Comfy-Org/jpcosta-comfy-apps.git
synced 2026-11-05 06:47:20 +00:00
[PR #28] [MERGED] Import Open Unboxing and Open Product Swap studios #26
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Comfy-Org/jpcosta-comfy-apps#26
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/Comfy-Org/jpcosta-comfy-apps/pull/28
Author: @jpcosta-comfy
Created: 11/4/2026
Status: ✅ Merged
Merged: 11/4/2026
Merged by: @jpcosta-comfy
Base:
main← Head:cursor/migrate-open-apps-51e4📝 Commits (3)
6fad71aImport the Open Unboxing and Open Product Swap studios.b6ecd42Drop generated Python bytecode from the unboxing scripts.174772aIgnore Python bytecode at the repo root.📊 Changes
160 files changed (+16087 additions, -6 deletions)
View changed files
📝
.gitignore(+2 -0)📝
README.md(+12 -2)➕
apps/open-product-swap/.env.example(+9 -0)➕
apps/open-product-swap/.gitignore(+45 -0)➕
apps/open-product-swap/LICENSE(+21 -0)➕
apps/open-product-swap/README.md(+116 -0)➕
apps/open-product-swap/REPORT.md(+73 -0)➕
apps/open-product-swap/app/api/health/route.ts(+28 -0)➕
apps/open-product-swap/app/api/jobs/[id]/file/route.ts(+33 -0)➕
apps/open-product-swap/app/api/jobs/[id]/route.ts(+24 -0)➕
apps/open-product-swap/app/api/jobs/route.ts(+135 -0)➕
apps/open-product-swap/app/favicon.ico(+0 -0)➕
apps/open-product-swap/app/globals.css(+76 -0)➕
apps/open-product-swap/app/icon.svg(+5 -0)➕
apps/open-product-swap/app/layout.tsx(+33 -0)➕
apps/open-product-swap/app/page.tsx(+450 -0)➕
apps/open-product-swap/build/comfy-build.yaml(+30 -0)➕
apps/open-product-swap/components/DropZone.tsx(+88 -0)➕
apps/open-product-swap/demo/README.md(+50 -0)➕
apps/open-product-swap/demo/input/sku_haven_ginger.jpg(+0 -0)...and 80 more files
📄 Description
Both apps were already carousel cards that submit
workflows/<app>/workflow_api.json. This brings in the rest of open-unboxing and open-product-swap without replacing those runners or deleting the old repos.What moved where
src/orapp/,lib/,components/)apps/open-unboxing/,apps/open-product-swap/scripts/open-unboxing/,scripts/open-product-swap/(paths adjusted to this repo) and the original copies inside eachapps/packagedemo/open-unboxing/,demo/open-product-swap/, plus the same files inside eachapps/package so that studio still runs on its ownREPORT.md,NODE_MAP.md,LICENSE,build/comfy-build.yamlworkflows/open-unboxing/andworkflows/open-product-swap/, and again insideapps/workflows/open-unboxing/(product_cutout.json,flux3_image_edit.json,flux3_t2i.json,qwen_image_edit_2511.json,ltx25_flf2v.json,concat_rife.json,minimax_h3_r2v.json) andworkflows/open-product-swap/(product-swap-wan-vace.json,product-swap-ltx.json)public/presets/(byte-identical). Not overwritten. Cardthumb.jpgfiles exist only hereThe carousel entries stay
enabled: true.npm run buildandnpm run lintpass.apps/is excluded from the root TypeScript check and ESLint so the Next 15 studios are not compiled into the Next 16 site.What was not migrated onto the live carousel
POST /api/jobs. Those routes would collide with this app'sGET /api/jobs/[id].workflow_api.jsonwas left as the graph the carousel submits. Unboxing's live graph is the single collapsed pipeline. Product swap's live graph is the Wan VACE graph without the keyframeSaveImage(node 27); the full upstream file isproduct-swap-wan-vace.json.apps/still readCOMFY_API_KEY, as upstream. The monorepo copy of the unboxing helper also acceptsCOMFY_API_KEY_WORK_PERSONAL.scripts/open-product-swap/e2e.mjsstill talks to the studio server, notPOST /api/run/open-product-swap.npm run checkstill fails on the existing Pumpkin Carve assertions (workflow["30"].inputs.imagesand the Seedance node). That workflow was not part of this change.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.