[npm] Github packages로 private package 배포하기
·
npm
최근 개인적으로 사용할 UI 라이브러리를 개발해서 배포할 상황이 있었습니다. 이 라이브러리는 제가 특정 프로젝트에 사용할 용도로 만들었기 때문에 npm registry에 public으로 배포하는 것은 적절하지 않았습니다.그렇다고 npm registry에 private으로 배포하자니, 유료 플랜(7$)를 사용해야 해서 이 또한 선택지에서 제외했습니다. 그래서 github packages를 사용하여 private package로 배포하기로 결정했습니다. Github packages 란?GitHub Packages는 컨테이너 및 기타 종속성을 포함한 패키지를 호스팅 하고 관리하는 플랫폼입니다.GitHub Packages는 소스 코드와 패키지를 한 곳에 통합하여 권한 관리 및 결제를 제공하므로 GitHub에서 ..
[package.json] peer dependency (feat. UI 라이브러리)
·
npm
peer dependency는 어떠한 상황에서 사용할까?지금까지 개발하면서 peer dependency에 대해 몰랐는데, 최근 UI 라이브러리를 개발하면서 이에 대해 학습하였습니다. UI 라이브러리는 React를 사용하여 개발했습니다. 그런데 이 라이브러리를 설치하는 프로젝트에도 이미 React가 설치되어 있다면, React가 중복으로 설치되는 문제가 발생합니다. 이 같은 문제를 해결하는 것이 peer dependency입니다. peer dependency는 "이 라이브러리를 사용하려면 특정 패키지가 필요합니다"라고 명시하는 방법입니다. 패키지를 직접 포함하지 않고. 사용자가 이미 설치했을 것으로 기대하는 의존성을 표시합니다. 실제로 프로젝트에 적용한 방법을 통해 설명하겠습니다.프로젝트 예시peer de..
[npm] npm에 node.js cli 프로그램 배포하기
·
npm
최근 우아한 테크코스의 오픈미션으로 node.js 환경에서 실행되는 압축 프로그램을 만들었습니다.과제로 만든 이 프로그램을 실행하려면 git repo clone -> npm run build -> npm start를 해야 하는데,저는 이 과정이 사용자 입장에서 불편하다고 느꼈습니다.그래서 npm 레지스트리에 프로젝트를 배포하고, npx로 실행하는 방법을 알아봤습니다.❗️라이브러리를 배포하는 것이 아닌, CLI 프로그램을 배포하는 것을 목적으로 간단하게 알아봤습니다. npm 이란?npm(node package manager)은 Node.js 패키지를 관리할 수 있는 도구이기도 하지만,패키지 저장소(pacakge registry) 서비스이기도 합니다. npm에 프로젝트 배포하기1. npmjs 계정 생성np..