AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

첫 번째 NPM 패키지 출판 가이드

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

개발 툴

대상자

Node.js 및 NPM 패키지 개발 초보자, 중급 개발자

핵심 요약

  • 패키지 이름 중복 확인: npm search your-package-name 명령어로 이름 중복 여부 확인
  • 정식 NPM 레지스트리 설정: npm config set registry https://registry.npmjs.org 명령어로 레지스트리 변경
  • 버전 관리: Semantic Versioning (major.minor.patch) 형식 사용, npm version patch 명령어로 버전 업데이트

섹션별 세부 요약

1. 패키지 이름 중복 확인

  • npm search your-package-name 명령어로 이름 중복 여부 확인
  • 중복 시 @yourusername/package-name 형식의 스코프 패키지 사용 또는 이름 변경
  • ai-testpilot처럼 설명적 접두사/접미사 추가

2. `package.json` 구성

  • 필수 필드: "name", "version", "description", "main", "repository", "license"
  • CLI 도구 사용 시 "bin" 필드 추가: {"bin":{"your-command":"./bin/cli.js"}}

3. 레지스트리 설정

  • 현재 레지스트리 확인: npm config get registry
  • Taobao, npmmirror 등 비공식 레지스트리 사용 시 공식 레지스트리(https://registry.npmjs.org)로 변경
  • npm config set registry https://registry.npmjs.org 명령어로 설정

4. 로그인 및 인증

  • npm login 명령어로 NPM 계정 인증
  • 인증 확인: npm whoami 명령어 실행

5. `.npmignore` 파일 생성 (선택)

  • node_modules/, .git/, .DS_Store, *.log, test/, .env 등 무시할 파일/디렉터리 지정

6. TypeScript 사용 시 빌드

  • npm run build 명령어로 TypeScript 코드를 JavaScript로 변환

7. 로컬 테스트

  • npm pack 명령어로 패키지 패키징
  • npm install -g your-package-name-1.0.0.tgz 명령어로 로컬 설치 및 테스트
  • 설치 후 npm uninstall -g your-package-name 명령어로 제거

8. 패키지 출판

  • npm publish 명령어로 공식 레지스트리에 출판
  • 스코프 패키지 사용 시 npm publish --access public 명령어로 공개 설정

9. 출판 확인 및 설치 테스트

  • NPM 웹사이트(https://www.npmjs.com)에서 패키지 검색
  • npm install your-package-name 명령어로 설치 테스트

결론

  • 자동화: GitHub Actions를 사용해 CI/CD 파이프라인 구축하여 패키지 출판 자동화
  • 레지스트리 설정: 출판 전 반드시 공식 NPM 레지스트리(https://registry.npmjs.org)로 설정
  • 버전 관리: npm version patch/minor/major 명령어로 버전 업데이트 후 다시 출판
  • 라이선스: MIT 라이선스 사용 권장 ("license":"MIT")
  • README 및 키워드: 설치 및 사용법 명시, 관련 키워드 추가하여 검색성 향상