개발 기본
npm
npm은 JavaScript 패키지를 설치·관리하고 프로젝트에 등록된 명령을 실행하는 도구입니다.
쉬운 설명
웹 앱을 만들다 보면 날짜 처리나 화면 구성처럼 다른 개발자가 만든 코드를 가져다 쓰게 돼요. npm은 이런 패키지를 설치하고 필요한 버전을 관리할 때 사용해요. npm run dev처럼 프로젝트에 정해 둔 작업을 실행하는 데도 쓰여요. 패키지를 받는 저장소와 웹사이트를 포함한 생태계를 가리킬 때도 npm이라는 이름을 써요.
이런 상황에서 만나요
AI가 만든 프로젝트의 안내에 “npm install 후 npm run dev를 실행하세요”라고 적혀 있다고 해 볼게요. 두 명령은 각각 필요한 패키지를 설치하는 일과 개발 작업을 실행하는 일이에요.
설치 단계와 실행 단계를 구분해요
study-app/ package.json package-lock.json
npm install
npm run dev
- 1프로젝트가 npm을 사용한다는 가정의 파일 목록이에요.
- 2먼저 필요한 패키지를 준비해요. 설치가 실패하면 이 단계의 오류를 확인해요.
- 3dev가 등록된 프로젝트에서 실행해요. 결과로 표시된 주소를 확인해요.
먼저 package.json이 있는 프로젝트 폴더인지 확인하세요. 설치가 끝난 뒤 안내된 실행 명령을 사용해요. 프로젝트에 다른 패키지 관리자의 잠금 파일이 있다면 README를 확인하고 그 방식을 따르는 것이 좋아요.
헷갈리기 쉬운 점
npm install을 실행하면 웹사이트가 켜지나요?
보통은 프로젝트가 필요한 패키지를 설치하는 단계예요. 개발 서버를 켜는 작업은 별도의 스크립트를 실행해요. 설치 과정에서 스크립트가 실행될 수도 있지만 그것을 앱 실행 완료와 같은 뜻으로 보면 안 돼요.
설치할 패키지의 정확한 이름과 출처를 확인하세요. 패키지는 실행 코드를 포함할 수 있어요. 오류를 해결하려고 잠금 파일을 무조건 삭제하거나 버전을 전부 올리기 전에 원인을 확인해요.
왜 알아야 할까요?
설치 오류와 앱 실행 오류를 구분할 수 있어요. AI에게 어떤 명령에서 실패했는지와 로그를 알려 주면 엉뚱한 코드를 수정하는 일을 줄일 수 있어요.
조금 더 자세히
npm CLI는 레지스트리에서 패키지를 가져오고 의존 관계를 처리합니다. package.json과 잠금 파일은 프로젝트가 어떤 패키지를 사용하는지 관리하는 데 쓰입니다.
npm run 뒤의 이름은 scripts에서 찾습니다. install, run 같은 명령의 역할과 scripts에 적힌 작업 이름을 구분하면 실행 과정을 읽기 쉬워집니다.
직접 사용할 때 확인해 보세요
- package.json이 있는 폴더에서 실행한다
- 설치와 실행 단계를 구분한다
- 실패한 명령과 오류 로그를 함께 확인한다