Post

npm 이란?

npm (Node Package Manager)

npm이란?

npm(Node Package Manager)은 자바스크립트 라이브러리를 관리해주는 도구입니다. 이는 Node.js 환경에서 사용할 수 있는 수많은 오픈 소스 패키지를 다운로드하고 관리할 수 있게 해줍니다. npm은 Node.js에서의 앱스토어(패키지 다운로드 저장소) 역할을 하며, 개발자가 쉽게 프로젝트에 필요한 라이브러리를 추가하고 관리할 수 있도록 도와줍니다.

npm 설치하기

npm은 Node.js와 함께 설치됩니다. Node.js를 설치하면 자동으로 npm도 함께 설치됩니다. 설치 여부를 확인하려면 터미널이나 명령 프롬프트에서 다음 명령어를 실행합니다.

1
2
node -v
npm -v

위 명령어를 통해 Node.js와 npm의 버전을 확인할 수 있습니다.

npm 기본 명령어

npm을 사용하여 다양한 작업을 수행할 수 있습니다. 몇 가지 기본 명령어를 소개합니다.

1. 패키지 초기화

프로젝트를 npm으로 초기화하려면 npm init 명령어를 사용합니다. 이 명령어는 프로젝트의 package.json 파일을 생성합니다.

1
npm init

2. 패키지 설치

패키지를 설치하려면 npm install 명령어를 사용합니다. 예를 들어, lodash 라이브러리를 설치하려면 다음과 같이 실행합니다.

1
npm install lodash

또는 간단히 i를 사용하여 설치할 수도 있습니다.

1
npm i lodash

3. 글로벌 패키지 설치

글로벌 패키지를 설치하려면 -g 옵션을 추가합니다. 예를 들어, nodemon을 글로벌로 설치하려면 다음과 같이 실행합니다.

1
npm install -g nodemon

4. 패키지 제거

설치된 패키지를 제거하려면 npm uninstall 명령어를 사용합니다.

1
npm uninstall lodash

5. 패키지 업데이트

설치된 패키지를 업데이트하려면 npm update 명령어를 사용합니다.

1
npm update lodash

package.json 파일

package.json 파일은 프로젝트의 메타데이터를 포함하고 있으며, 프로젝트에 필요한 패키지 목록을 관리합니다. 이 파일은 다음과 같은 정보를 포함할 수 있습니다.

  • name: 프로젝트 이름
  • version: 프로젝트 버전
  • description: 프로젝트 설명
  • main: 엔트리 포인트 파일
  • scripts: 자주 사용하는 명령어를 스크립트로 정의
  • dependencies: 프로젝트에 필요한 패키지 목록
  • devDependencies: 개발에 필요한 패키지 목록

예시:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
  "name": "my-project",
  "version": "1.0.0",
  "description": "This is a sample project",
  "main": "index.js",
  "scripts": {
    "start": "node index.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "dependencies": {
    "express": "^4.17.1"
  },
  "devDependencies": {
    "nodemon": "^2.0.7"
  }
}

npm 스크립트

npm 스크립트를 사용하면 자주 사용하는 명령어를 간단하게 실행할 수 있습니다. 예를 들어, start 스크립트를 정의하면 npm start 명령어로 실행할 수 있습니다.

1
2
3
4
"scripts": {
  "start": "node index.js",
  "test": "echo \"Error: no test specified\" && exit 1"
}

위 예시에서 npm start를 실행하면 node index.js 명령어가 실행됩니다.

결론

npm은 자바스크립트 개발에서 필수적인 도구로, 패키지를 쉽게 관리하고 설치할 수 있게 해줍니다. Node.js 환경에서 다양한 오픈 소스 라이브러리를 활용하여 효율적으로 개발할 수 있도록 도와줍니다. 위에서 소개한 기본 명령어와 package.json 파일을 잘 활용하여 프로젝트를 관리해 보세요.

This post is licensed under CC BY 4.0 by the author.