npm에 대해 알아보자.
npm (Node Package Manager)
자바스크립트로 프로젝트를 할 때 개발자들끼리 만든 다양한 기능(패키지, 모듈)들을 관리하는 Package Manager입니다.
Package는 개발자들이 npm에 배포한 어떤 유용한 도구 및 프레임워크를 의미합니다.
이미 수 많은 자바스크립트 개발자들이 유용한 기능들을 만들어 두었고, 우리는 npm에 공개되어 있는 코드를 가져와 추상화된 기능들을 손쉽게 사용할 수 있습니다.
현재 npm은 Node.js의 기본 패키지 매니저로 사용되고 있습니다.
package.json
프로젝트를 진행하면서 추가될 수많은 패키지들의 버전을 기록하고 관리하는 파일입니다.
npm을 사용하기 위해서는 필수적으로 필요한 파일입니다.
- 파일 구성
- name : 프로젝트 이름
- version : 프로젝트의 버전
- description : 프로젝트에 대한 간단한 설명
- main : 프로그램의 시작점이 되는 모듈의 ID
- scripts : 프로젝트 내부에서 상ㅇ할 수 있는 스크립트 명령
- author : 소유주
- license : 패키지 사용 시 필요한 권한
Package.json 파일 생성
npm init
- npm을 사용할 수 있는 초기 환경을 설정해 그 결과로 package.json이 생성됩니다.
패키지 설치
npm install '패키지명'
- 해당 패키지를 프로젝트에 설치합니다.
package.json에는 devDependencies 또는 dependencies 옵션이 생기고 설치하려는 패키지의 명칭과 버전이 명시됩니다.
이때, package-lock.json 파일과 node_modules 폴더도 함께 생성됩니다.
package-lock.json : 설치한 패키지 내부에서 사용되는 다른 패키지들의 정보들이 명시되어 있습니다.
node_modules 폴더 : 설치한 패키지가 만들어지고 활용될 때 필요한 다른 패키지들의 폴더가 포함되어 있습니다.
개발용 의존성 패키지 설치
npm install '패키지명' -D
또는npm install '패키지명' --save-dev
-D 또는 --save-dev 플래그와 함께 패키지를 설치하면 개발용 의존성 패키지가 설치되어 package.json 파일의 devDependecies 옵션에 명시됩니다.
글로벌 설치
npm install '패키지명' -g
- -g 플래그와 함꼐 설치하면 컴퓨터의 어느곳에서나 특정 패키지를 사용할 수 있습니다.
패키지 업데이트
npm update '패키지명'
- 해당 패키지만 업데이트합니다.
npm update
- 모든 패키지를 업데이트합니다.