카테고리 없음

ComfyUI package.json 설치, pnpm install이 맞는 이유

GoingProdo 2026. 8. 27. 11:08

ComfyUI_frontend 소스를 직접 내려받으면 프로젝트 루트에서 package.json 파일을 만나게 된다. 이때 "package.json을 어떻게 설치해야 하나?"라는 질문이 생길 수 있지만, package.json 자체를 실행하거나 특정 폴더에 복사하는 방식은 아니다.

현재 ComfyUI_frontend 공식 개발 환경은 Node.js와 pnpm을 사용한다. 저장소를 받은 뒤 프로젝트 루트에서 pnpm install을 실행하면 package.json에 정의된 의존성을 기준으로 개발에 필요한 패키지가 준비된다.

package.json 설치에서 가장 먼저 볼 변화

package.json은 설치 파일보다 의존성 명세에 가깝다

package.json에는 Node.js 프로젝트의 이름과 스크립트, dependencies, devDependencies 같은 정보가 들어갈 수 있다. 즉 프로젝트가 어떤 패키지에 의존하는지를 package manager가 확인할 수 있도록 기록하는 역할을 한다.

일반적인 npm 프로젝트에서는 npm install을 실행하면 package.json의 dependencies와 devDependencies를 읽어 필요한 패키지를 설치한다. 하지만 개별 프로젝트가 어떤 package manager를 공식적으로 사용하는지는 별도로 확인하는 것이 중요하다.

ComfyUI_frontend는 pnpm을 사용한다

현재 ComfyUI_frontend의 공식 개발 가이드는 필요한 소프트웨어로 Node.js와 pnpm을 명시하고 있다. 저장소를 clone한 다음 프로젝트 디렉터리로 이동해 pnpm install을 실행하는 순서를 안내한다.

따라서 ComfyUI_frontend 개발 환경을 구성하면서 package.json을 발견했다면 임의로 다른 방법부터 시도하기보다 해당 프로젝트가 사용하는 pnpm 기준으로 설치하는 편이 맞다.

여기서 package.json을 더블클릭하거나 ComfyUI의 models, custom_nodes 같은 폴더에 옮길 필요는 없다. 터미널의 현재 위치가 ComfyUI_frontend 프로젝트 루트인지 확인한 뒤 package manager 명령을 실행하면 된다.

먼저 Node.js 버전과 pnpm을 확인한다

의존성을 설치하기 전에 Node.js가 준비되어 있어야 한다. ComfyUI_frontend 공식 CONTRIBUTING 문서에서는 저장소의.nvmrc를 통해 필요한 Node.js 버전을 확인하도록 안내한다.

package.json 설치가 ComfyUI 워크플로우에 미치는 영향

즉 시스템에 Node.js가 설치되어 있다는 사실만으로 끝내기보다 프로젝트가 요구하는 버전과 맞는지를 보는 것이 좋다. 특히 오래된 Node.js 환경에서는 설치나 빌드 과정에서 예상하지 못한 문제가 생길 수 있다.

기존 방식과 비교해야 할 부분

package.json보다 프로젝트 기준을 먼저 본다

프로젝트 루트에는 package.json뿐 아니라 lockfile이나 설정 파일도 함께 존재할 수 있다. ComfyUI_frontend는 pnpm 기반 프로젝트이므로 pnpm-lock.yaml 역시 의존성 관리에서 함께 확인할 파일이다.

팀 프로젝트나 공식 저장소를 그대로 빌드하는 상황에서는 package.json만 보고 임의의 버전을 다시 결정하기보다 기존 프로젝트가 제공하는 package manager와 lockfile을 따르는 편이 일관성을 유지하기 쉽다.

따라서 "package.json이 있으니 npm install부터 실행하면 된다"라고 단순화하기보다 저장소의 개발 문서를 먼저 확인하는 것이 좋다. ComfyUI_frontend에서는 공식 설치 절차가 pnpm을 기준으로 작성되어 있다.

프로젝트 루트에서 pnpm install을 실행한다

ComfyUI_frontend 저장소를 clone했다면 먼저 해당 디렉터리로 이동해야 한다. 공식 개발 절차에서도 repository를 clone하고 cd ComfyUI_frontend로 이동한 다음 pnpm install을 실행한다.

이 명령을 실행하면 프로젝트에 필요한 JavaScript 의존성을 준비하게 된다. package.json 파일을 별도로 지정하지 않아도 현재 프로젝트의 설정을 기준으로 package manager가 필요한 정보를 읽는다.

따라서 터미널을 전혀 다른 폴더에서 열어 놓은 상태로 명령을 실행하지 않도록 주의해야 한다. 같은 PC에 여러 Node.js 프로젝트가 있다면 현재 작업 디렉터리를 확인하는 습관이 중요하다.

성능과 결과 품질에서 확인할 차이

워크플로우 구성에서 놓치기 쉬운 부분

설치가 끝난 뒤에는 바로 ComfyUI Python backend가 설치됐다고 생각하면 안 된다. ComfyUI_frontend의 Node.js 의존성 설치와 ComfyUI backend의 Python 환경은 역할이 다른 구성이다.

pnpm install 이후에는 개발 서버와 workspace를 확인한다

의존성 설치는 프론트엔드 개발 환경 준비 단계다. 공식 문서에서는 이후 개발 서버를 실행하고 ComfyUI backend와 연결하는 흐름을 안내한다.

기본적으로 개발 서버는 로컬에서 실행 중인 ComfyUI backend를 대상으로 사용할 수 있다. backend가 기본 위치와 다른 포트를 사용한다면 환경 설정을 별도로 조정할 수 있다.

패키지가 없다고 나오면 workspace도 확인한다

ComfyUI_frontend는 workspace 구조를 사용한다. 공식 Troubleshooting 문서에서도 새 dependency를 추가했는데 package를 찾지 못하는 경우 올바른 workspace에 설치했는지를 먼저 확인하도록 안내한다.

따라서 단순히 pnpm add를 반복하기보다 자신이 작업 중인 package와 workspace가 맞는지를 확인해야 한다. 필요한 경우 특정 workspace를 대상으로 의존성을 추가하는 방식이 사용될 수 있다.

package.json 설치에서 자주 헷갈리는 부분

ComfyUI_frontend에서 package.json을 만났다면 다음처럼 구분하면 된다.

실제로 적용할 때 체크할 점

package.json 자체를 설치한다 → 아니다

package.json을 ComfyUI 폴더에 복사한다 → 아니다

프로젝트 루트에서 의존성을 설치한다 → 맞다

ComfyUI_frontend 공식 환경에서는 pnpm install을 사용한다 → 맞다

Node.js 버전은 프로젝트의.nvmrc 기준을 확인한다 → 필요하다

즉 package.json은 설치 대상이라기보다 package manager가 프로젝트 구성을 이해하는 기준 파일로 보는 편이 정확하다.

마지막 확인

ComfyUI_frontend에서 package.json을 발견했다면 파일 자체를 설치하려고 하지 말자. 먼저 Node.js 버전과 pnpm이 준비되어 있는지 확인하고, ComfyUI_frontend 프로젝트 루트에서 pnpm install을 실행하면 된다.

특히 공식 저장소를 그대로 개발하거나 빌드하려는 경우에는 임의로 npm 기준으로 바꾸기보다 저장소가 지정한 pnpm과 lockfile을 따르는 것이 좋다. 설치가 끝난 뒤에는 프론트엔드 개발 서버와 ComfyUI backend 연결 단계로 넘어가면 된다.