package.json이란???

훈이·2022년 9월 19일

우리가 개발을 하다보면 package.json과 package-lock.json/yarn.lock파일을 자주 보게됩니다.

그렇다면 저 파일들은 무엇이고 하는 역할은 무엇일까요?

package.json는 단순하게 말해서 개발자가 배포한 패키지를 다른사람들이 설치하고 관리하기를 쉽게 하기 위한 문서이다.

npm init -y 명령어를 통해 package.json을 생성하면 다음과 같이 생성된다.

위에서 부터 설명하자면

"name"은 패키지의 이름을 나타낸다.
"version"은 패키지의 버전이며 패키지에 변경사항이 있다면 버전또한 변경해줘야 한다.
그리고 "name"과 "version"은 필수로 적어야한다.
"description"은 문자열로 패키지에 대한 설명이 있는 부분이다.
"main"은 패키지가 진입할 때 진입점이 되는 모듈 ID이다.
기본값은 index.js이다.
"scripts"는 자주 사용할 명령어를 별칭을 통해 지정해 둘 수 있는 공간이다.
예를들면 "scripts": {
"start:dev": nodemon index.js"
} 를 하게되면 터미널에 npm(yarn) start:dev 라는 명령어를 치게되면 index.js가 nodemon으로 실행된다.
"keywords"는 description과 마찬가지로 npm에서 검색할 때 리스트에 표시되어 사람들이 검색할 때 도움을 준다.
"author"는 배포자를 적는 공간이다.
"license"는 배포한 패키지가 어떤 권한과 제한 사항이 있는지 알기 위한 공간이다.

그리고 일반적으로 설치되어야 할 패키지들은 dependencies쪽에
개발할 때만 필요한 패키지는 devDependencies쪽에 표시된다.

사실 개발만이 목적이라면 package.json을 신경쓰지 않아도 된다. 하지만 package.json은 배포에만 목적이 있는게 아닌 프로젝트에 대한 소개,내용을 알려주는 수단이므로 기재해주는 것이 좋다.

참고한사이트
https://hoya-kim.github.io/2021/09/14/package-json/
https://www.daleseo.com/js-package-locks/

profile
백엔드 개발자가 되자!

0개의 댓글