package.json

한결·2022년 1월 18일
0

Study

목록 보기
3/13

package.json은 배포했던 파일의 모듈 정보를 담고있다.

npm install

을 통해 한번에 모든 모듈을 다운받을 수 있는 편리한 기능이다.

{
  "name": "day07",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "type": "module",
  "scripts": {
    "start": "node index.js"
  },
  "dependencies": {
    "axios": "^0.24.0",
    "dotenv": "^14.1.0",
    "express": "^4.17.2",
    "swagger-jsdoc": "^6.1.0",
    "swagger-ui-express": "^4.3.0"
  }
}

와 같은 예시가 있을 때,

  • 제일 중요한 항목은 nameversion이다.
    중앙 저장소에 배포할 때 필수 항목. url로 사용되고, 설치할 때 디렉토리 이름이 되기 때문에 url이나 디렉터리에서 쓸 수 없는 이름을 사용하면 안된다.
  • description : 설명을 문자열로 기술한것. npm search에 검색됨
  • keywords: 키워드를 문자열 배열로 설명한것. npm search에 검색됨
  • homepage : 프로젝트 홈페이지가 있을 경우에 입력. url과는 다름
  • bugs : 버그가 있는 경우에 참고할 곳. 연락할 곳.
  • license : 패키지 사용자가 패키지를 사용하기 위해 어떻게 권한을 얻는지, 금기 사항이 있는지 알게하기 위해 명시한다.
  • people fileds : 'author'는 한 사람을 지정, 'contributors'는 여러 사람을 배열로 지정.
  • files : 프로젝트에 포함된 파일의 배열. .npmignore에 기록된 파일이 files에 지정되어 있어도 제외됨.
  • main : 프로그램이 시작점이 되는 모듈의 ID. 패키지 루트에 상대적 경로를 지정해야함...????????????
  • bin : PATH를 수동으로 지정해줌
  • repository : 소스 코드가 관리되는 저장소 위치를 지정함.
"repository": {
    "type": "git",
    "url": "http://github.com/npm/npm.git"
}
  • scripts : 다양한 타이밍에서 실행되는 script 명령어를 포함하는 사전.
  • config : 패키지 버전에 관계없이 패키지 스크립트에서 사용될 수 있는 설정 정보

등 다양한 항목이 있는데, 평소에 자주 사용하는 항목과 비슷해보이는 위주로만 공부해봤다. 생각보다 다양하게 지정이 가능하고 제작자 말고 사용자도 유용하게 사용한다는 점에 더더욱 없어서는 안되는 파일이란것을 알게됐다.


출처1 : https://docs.npmjs.com/cli/v7/configuring-npm/package-json 출처2 : https://programmingsummaries.tistory.com/385

0개의 댓글