npm(node package manager)은 Node.js 패키지 관리자의 약자로, Node.js로 만든 프로젝트에 필요한 다양한 도구와 라이브러리를 설치, 관리, 공유할 수 있게 해주는 프로그램입니다.


npm의 역할 📦

가장 쉬운 비유로, npm은 스마트폰의 앱스토어와 비슷합니다.

  • 앱스토어: 필요한 앱(카카오톡, 유튜브 등)을 검색하고 설치합니다.

  • npm: 필요한 패키지(라이브러리, 프레임워크)를 검색하고 설치합니다.

앱스토어가 없으면 필요한 앱을 인터넷에서 일일이 찾아 다운로드해야 하는 것처럼, npm이 없으면 개발에 필요한 수많은 도구들을 직접 다운로드하고 관리해야 하는 불편함이 생깁니다. npm은 이 과정을 자동화해줍니다.

주요 기능

  • 패키지 설치: npm install <패키지 이름> 명령어로 원하는 기능을 가진 패키지를 손쉽게 설치할 수 있습니다. 예를 들어, npm install react라고 입력하면 리액트 라이브러리가 내 프로젝트에 추가됩니다.

  • 의존성 관리: 프로젝트에 어떤 패키지를 사용했는지, 어떤 버전인지 등의 정보가 package.json 파일에 기록됩니다. 이 파일을 통해 다른 사람이 내 프로젝트를 복제했을 때, npm install 명령어 한 번으로 모든 패키지를 한 번에 설치할 수 있습니다.

  • 스크립트 실행: package.json 파일에 자주 사용하는 명령어를 미리 등록해두고, npm run <스크립트 이름>으로 간단하게 실행할 수 있습니다. 예를 들어, 웹 개발 서버를 실행하는 복한 명령어를 npm run dev처럼 짧게 줄여서 사용할 수 있습니다.

요약하자면, npm은 개발자들이 Node.js 생태계에서 필요한 자원을 효율적으로 사용하고 협업할 수 있도록 돕는 필수적인 도구입니다.


npx란?