npm
node.js 환경에서 외부 라이브러리를 다운로드하기 위해 존재하는 방법 중 대표적인 것.
Node Package Manager 의 약자로 일종의 앱스토어다. 필요한 모듈을 다운로드할 수 있는, 모듈들이 모여있는 모듈 스토어다.
macOS 의 패키지 매니저가 brew이듯, node.js 생태계의 패키지 매니저는 npm이다.
package.json
package.json 에는 이 프로그램을 실행시키기 위해 필요한 모듈들이 무엇인지, 프로그램을 실행시키는 방법,
프로그램을 테스트하는 방법 등이 명시되어 있다.
*프로그램을 실행시키기 위해 필요한 실제 모듈은 따로 node_modules 라는 폴더에 저장된다.
package.json 에는 어떤 모듈인지만 적혀 있다. (예를 들어, 전자제품의 카탈로그)
프로젝트 코드를 넘겨줄 때,
"우리 코드는 여기 있고, 필요한 모듈은 package.json 에 적어놨으니 네가 직접 다운받아서 쓰면 돼" 라고 하면 된다.
앞으로 스프린트를 진행할 때, 해당 스프린트의 레파지토리를 열어보면 node_modules 는 없고, package.json 만 있을 것이다.
그럼 package.json 에서 필요하다고 하는 모듈을 npm을 사용해 다운로드하면 된다.
npm install 명령어를 입력하면, package.json에서 필요하다고 하는 모듈을 다운로드한다.
npm install이 완료되면 node_modules 디렉토리가 생긴 걸 확인할 수 있다.
devDependencies 에는 프로젝트를 개발하는 환경에서 필요한 모듈에는 무엇이 있는지 적혀 있다.
예를 들어 코드 모양을 잡아주는 lint 나 테스팅 모듈처럼, 실제 프로젝트 동작에 직접적으로 영향을 주지 않는 모듈들을 명시한다.
scripts
scripts 항목은 CLI에서 사용가능한 명령을 기술한다. 이를 npm script라고 부른다.
CLI에서 실행할 때는 "npm run <스크립트 이름>" ex) text, report, submit
'부트캠프 > TIL' 카테고리의 다른 글
코드스테이츠 프론트엔드 부트캠프 Day 11 - 배열 연습문제 (0) | 2022.12.29 |
---|---|
코드스테이츠 프론트엔드 부트캠프 Day 10 #3 npm (0) | 2022.12.28 |
코드스테이츠 프론트엔드 부트캠프 Day 7 - SHARP 레트로 계산기 목업 (0) | 2022.12.23 |
코드스테이츠 프론트엔드 부트캠프 Day 6 - HTML & CSS 와이어 프레임, 영역 나누기, 레이아웃 (2) | 2022.12.22 |
코드스테이츠 프론트엔드 부트캠프 43기 Day 4 - CSS margin & padding, box-sizing: border-box (2) | 2022.12.21 |