NPM 기본 사용법
📌 npm 을 사용하는 방법에 대해서 알아 본다. 기본적으로 nodejs는 설치가되어 있어야 한다.
NPM 기본 사용
- NPM Page의 기본 사용은 그냥 npm install package 이름 입니다.
- 여기에 몇가지 옵션을 붙여 사용하는
- 경우가 있는데 가장 대표적인 Command는 아래 3가지 입니다.
npm install
npm install --save package1
npm install --save-dev package1
npm install : npm install은 보통 package.json에 기술된 모든 package를 설치 하는 명령입니다.
npm install --save: npm install —save [package] 명령어는 개발하는 프로그램 혹은 Application에서 직접 import해서 사용되는 package들을 설치 할때 사용됩니다. —save 의 경우 package.json의 dependencies 항목에 설치한 package이름이 삽입 됩니다.
npm install --save-dev: npm install —save-dev [package] 명령어는 프로그램혹은 Application에서 직접 import해서 사용되는 package는 아니지만, 프로그램이나 Application을 개발하는 과정에서 필요한 package 입니다. —save-dev 의 경우 package.json의 devDependencies 항목에 설치한 package이름이 삽입 됩니다.
- 예를 들어, eslint, prettier과 같은 lint를 위해서 사용되는 package의 경우
- @types/xxxx 와 같이 typescript에서 type 선언및 컴파일을 위해서만 사용되는 package등이 해당 됩니다.
- https://docs.npmjs.com/cli/v9/commands/npm-install
Example
- https://www.npmjs.com/package/logger nodejs logger package를 이용하여, file에 log를 찍는 간단한 node.js app을 만들어 보겠습니다.
- 먼저 project folder를 하나 만들겠습니다.

- vscode에 해당 폴더를 프로젝트 폴더로 추가 합니다.
- main.js 라는 폴더를 하나 추가 합니다. 처음 실행시킬 파일입니다.

- 폴더 내에서 command
npm init 을 실행 시킵니다. npm init은 package.json을 생성하고, node.js 나 npm package 모듈 초기세팅을 해줍니다.
- package name: (loggertest) : 모듈 이름 입니다. npm 개발시에는 개발하고자 하는 package의 이름 입니다. pacakge name은 일부 규칙이 있습니다. 대문자가 안되면 특수문자도 _ 만 가능 합니다.
- version: (1.0.0) 버젼 입니다.
- description: 설명입니다.
- entry point: (main.js) 모듈을 실행시 처음 실행되는 파일 혹은 import 시 default로 import되는 파일 입니다.
- test command: test command는 현 모듈을 테스하기 위해서 실행시킬 수 있는 command 입니다.
- git repository: 현 모듈의 git repository 주소 입니다.
- keywords: 모듈을 대표하는 키워드 입니다.
- author: 모듈의 소유주 이름입니다.
- license: (ISC) 라이센스 정책입니다.
- npm init 시 모듈 작성에 필요한 각 항목 입력을 묻게 됩니다. 대부분 입력하지 않아도 크게 문제는 없습니다.
- entry point만 처음 추가한 main.js로 맞추면 됩니다. 입력하지 않으면 보통 default로 main.js입니다.
- 모두 default로 만들어 생성하게되면 아래와 같은 pacakage.json이 생성 됩니다.
{
"name": "loggertest",
"version": "1.0.0",
"description": "",
"main": "main.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
- 이 포스트에서는 단순한 node.js 를 실행 시키는 코드를 작성할 것이기 때문에 “main”: “main.js”가 크게 의미는 없습니다.
- package.json에 대한 더욱 자세한 사항은 https://docs.npmjs.com/cli/v9/configuring-npm/package-json 에서 확인 하실 수 있습니다.
- 이제 https://www.npmjs.com/package/logger 를 설치 합니다.
- 이 package는 기능 구현에 직접 적인 영향을 주는 package 이므로 —save 옵션을 주고 설치 합니다.
npm i —save logger

- node_modules 폴더가 생성 되고, package.json에 dependencies에 logger가 설치된 버젼과 함께 생성된 것을 볼 수 있습니다.
- main.js에 아래와 같이 code를 작성 합니다.
- require('logger') 를 로드 하고 createLogger('logger.log') 함수를 호출 하여 logger를 생성 하였습니다.
var logger = require('logger').createLogger('logger.log');
logger.info('loading an array', [1,2,3], 'now!');
logger.debug('this wont be logged');
logger.setLevel('debug');
logger.debug('this will be logged now');
-
이제 node main.js 로 main.js 파일을 실행 시킵니다.

-
logger.log 라는 파일이 생기고, 아래 각각 호출한 함수 타입에 맞는 로그가 파일에 내용이 생성되는 것을 확인 할 수 있습니다.
-
간단하게 node.js 환경을 구성하고, 필요로 하는 npm를 설치하고 npm 기능을 사용하는 방법을 알아 보았습니다.
-
이제 어떤 npm이든 필요한 것을 설치 활용하는데 크게 문제가 없을 것으로 생각됩니다.
-
보통 node.js Application이나 npm들은 여러 다른 npm들을 조합하고 확장하여 만들어지는 경우가 많습니다.
-
다음 포스트에서는 기존의 많이 사용되고 있는 npm을 한번 전부 분해해서 살펴보겠습니다.