NPM 패키지 네이밍 규칙

Odyssey·2025년 1월 3일
0

Next.js_study

목록 보기
2/58
post-thumbnail

프로젝트 폴더 이름 설정 중 마주친 첫 오류와 해결 방법

본격적인 개발 준비를 위해 프로젝트 폴더를 생성하던 중 첫 오류를 마주쳤다.
프로젝트 폴더를 생성하면서 이름을 nextjs_beginner라고 지었는데, URL-friendly 하지 않다는 오류를 마주했다.
이를 해결하기 위해 알아본 결과, _ 즉 언더스코어 문자 때문이라는 것을 알게 되었고, 이를 - 하이픈으로 바꿔서 nextjs-beginner라고 변경하여 문제를 해결했다.


NPM 네이밍 규칙과 언더스코어 문제

npm init -y를 실행할 때, 폴더 이름에 언더스코어(_)가 포함되어 있으면 실행 자체는 가능하다.
하지만 NPM의 패키지 네이밍 규칙과 관련된 경고나 문제가 발생할 수 있다.

NPM 패키지 네이밍 규칙

NPM에서 생성된 package.jsonname 필드는 특정 네이밍 규칙을 따라야 한다. 주요 규칙은 다음과 같다:

  1. 패키지 이름은 반드시 소문자여야 한다.
  2. 공백은 허용되지 않으며, 대신 하이픈(-)을 사용해야 한다.
  3. 이름에 특수문자(언더스코어(_), 대문자, @ 등)를 포함해서는 안 된다.
  4. 숫자는 이름 중간이나 끝에 올 수 있지만, 이름의 첫 글자로는 올 수 없다.

폴더 이름에 언더스코어(_)가 포함되면, npm init -y 실행 시 자동으로 package.jsonname 필드에 폴더 이름이 입력된다. 이로 인해 NPM 네이밍 규칙을 위반하게 되며, 아래와 같은 경고 메시지가 출력될 수 있다:

npm WARN name can no longer contain underscores
npm WARN name can no longer contain capital letters

발생 가능한 문제

  1. 경고 메시지 출력
    위와 같은 경고가 발생하지만, npm init -y는 실행되고 package.json 파일은 생성된다.

  2. 패키지 배포 불가
    패키지를 NPM 레지스트리에 배포하려고 할 경우, 이름에 언더스코어가 포함되어 있다면 오류가 발생한다. 이는 NPM 네이밍 규칙 위반으로 인해 발생하는 문제이다.


이와 같은 문제를 예방하기 위해, 폴더 이름에 언더스코어(_)를 사용하지 않고, 하이픈(-)을 사용하는 것이 좋다. 이를 통해 불필요한 경고 메시지를 방지하고, 이후 배포 과정에서의 문제를 피할 수 있다.

0개의 댓글