패키지(Package). 라이브러리나 실행 도구 등을 배포 가능한 형태로 묶은 것. npm의 패키지, pip의 패키지, gem의 패키지… package.json은 Node.js 프로젝트의 명세서다. 이름, 버전, 의존성, 스크립트… 패키지를 설명하고 설치와 실행에 쓰는 정보를 적는다. 의존성 관리가 핵심이다. 이 패키지는 저 패키지를 필요로 하고, 저 패키지는 또 다른 패키지를 필요로 한다. npm install로 설치되는 패키지 수는 의존성에 따라 달라진다. 편리함이지만 의존성 지옥에 빠질 수 있다. 새로운 질서에서 쓸 패키지를 고를 때도 필요한 기능과 함께 설치되는 의존성을 살펴보자. YAGNI. 지금 필요한 것부터 쓴다.