Javascript/Typescript 프로젝트를 npm 라이브러리로 배포하는 방법
레지스트리
레지스트리는 패키지(라이브러리, 모듈 등)를 저장하고 배포하는 저장소다. npm에서 패키지를 배포하거나 설치할 때 참조하는 서버라고 볼 수 있다.
npm
npm(Node Package Manager)은 JavaScript와 Node.js 생태계에서 사용되는 패키지 관리 도구다. 개발자들이 라이브러리나 모듈을 설치, 관리, 배포할 수 있도록 한다.
1. GitHub Personal Access Token 생성
GitHub에 로그인한 후, Settings > Developer settings > Personal access tokens로 이동한다.
Generate new token을 클릭하고, 다음 권한을 선택하여 토큰을 생성한다:
- write:packages
- read:packages
2. 프로젝트 설정
프로젝트 루트 디렉토리에서 package.json 파일을 수정해야한다.:
- name
: @your-org/package-name 형식으로, 대문자는 소문자로 변경해야한다.
- version
: 패키지 버전
- main
: 진입점
{
"name": "@your-org/package-name",
"version": "1.0.0",
"description": "Your package description",
"main": "dist/index.js",
"scripts": {
...
},
"repository": {
"type": "git",
"url": "https://github.com/<your-org>/<repository-name>.git"
},
"author": "Your Organization",
}
3. npm 레지스트리 인증 설정
프로젝트 루트 디렉토리에 .npmrc
파일을 추가하여 사용할 레지스트리를 설정한다:
@your-org:registry=https://npm.pkg.github.com //npm.pkg.github.com/@gna-company-inc/:_authToken=<your_github_token>
이렇게 환경변수로 로드해도 된다.
@your-org:registry=https://npm.pkg.github.com //npm.pkg.github.com/@gna-company-inc/:_authToken=${GITHUB_TOKEN}
4. 패키지 빌드 및 배포
프로젝트 빌드:
npm run build
패키지를 GitHub Packages에 배포:
- package.json
의 version
이 이전에 배포된 버전과 달라야 한다.
npm publish
배포된 패키지는 GitHub Organization의 Packages에서 확인할 수 있다.
라이브러리 사용 방법
다른 프로젝트에서 패키지를 설치하려면 .npmrc
파일에 동일한 레지스트리 설정을 추가한다. (필요한 경우, Personal Access Token도 추가해야한다):
@your-org:registry=https://npm.pkg.github.com
패키지 설치:
npm install @your-org/package-name
'프로그래밍 > JS, Node.js' 카테고리의 다른 글
영상자막을 채팅처럼 표현하기 (0) | 2023.12.03 |
---|---|
[TypeScript] satisfies 연산자 알아보기 (0) | 2023.01.24 |
CloudFlare KV로 앱 점검시간 관리하기 (2) | 2023.01.21 |
[typescript] 어두운 색깔인지 확인 (isDarkColor, HEX, RGB, tinycolor) (0) | 2022.08.14 |
[Next.js] styled-components를 Client side 렌더링 이전에 적용시키기 (덜그덕 방지, Typescript) (0) | 2022.08.05 |