Webpack v2 #1 간단하게 살펴보기
npm 저장소에 패키지 등록하기
2018-09-01
Explanation
homebrew, yum, apt, pip.. 정말 많은 패키지 매니저들이 있는데요, 아무래도 저는 npm을 정말 많이 사용하는거 같아요. 항상 npm에 등록되어 있는 패키지들을 받아서 사용만 했는데, 저번에 궁금해서 한번 npm 저장소에 패키지를 등록한 적이 있는데요. 이번글은 npm에 패키지를 등록하는 방법에 대해서 적어보려 합니다.
우선 https://www.npmjs.com/signup에서 회원가입을 합니다.
컴퓨터에 우선 패키지 파일을 담을 폴더를 만들어 줍니다. 저는 이름을 ‘loaf-dom’으로 정했어요.
저는 이곳에 jquery 대신 사용할 간단한 DOM Script 라이브러리를 만들 생각이랍니다.
1 2 |
$ mkdir loaf-dom # .. 또는 마우스 우클릭 '새로운 폴더' |
1 |
$ vi package.json |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
{ "name": "loaf-dom", // 등록할 패키지의 이름 "version": "0.0.1", // 버전 "description": "dom script library", // 패키지 설명 "main": "loaf-dom.js", // index 파일 이름 "scripts": { "test": "echo \"Error: no test specified\" && exit 1" // 실행 커맨드 ?? }, "repository": { // 저장소 "type": "git", // 전 깃에 저장했어요 "url": "https://github.com/loafjs/loaf-dom.git" // 깃 저장소 위치 }, "engines": { "node": ">=4.0.0" // 호환되는 노드 버전 }, "keywords": ["util"], // 키워드 "author": "falsy", // 만든이 "license": "WTFPL", // 저작권 "bugs": "https://github.com/loafjs/loaf-dom/issues", // 버그 이슈를 받을 곳?? "homepage": "https://falsy.me" // 패키지 홈페이지 } |
package.json 파일은 대략 저 정도로만 작성하면 된답니다.
자세한 정보는 https://docs.npmjs.com/getting-started/using-a-package.json를 참고할 수 있습니다.
동기화? 할 디렉토리에 제외하고 싶은 파일이나 디렉토리가 있다면 .npmignore 또는 .gitignore 파일에 정의하여 제외시킬 수 있습니다. 저는 깃과 함께 사용하기 위해 .gitignore 를 사용합니다.
1 2 3 4 5 6 7 8 9 |
.DS_Store .DS_Store? .Trashes node_modules build .module-cache npm-debug.log logs *.log |
저는 보통 공통적으로 이 정도 제외합니다.
깃과 동일하게 readme.md 파일로 깃과 npm에 패키지에 대한 설명을 작성할 수 있습니다.
md(마크다운) 가이드는 아래의 글을 참고하면 좋을 것 같아요.
https://gist.github.com/ihoneymon/652be052a0727ad59601
저는 loaf-dom.js 라는 이름으로 설정 했는데요, 테스트를 위해 loaf-dom.js 파일을 만들어서 간단한 내용을 적을게요
1 2 3 |
// loaf-dom.js console.log('hello world'); |
1 2 3 4 5 |
/loaf-dom -.gitignore -loaf-dom.js -readme.md -package.json |
터미널을 열고 npm adduser 명령어를 사용하여 사용자를 등록합니다.
1 |
$ npm adduser |
// Username: – npm 에 가입했던 이름을 입력합니다.
// Password: – 비밀번호를 입력합니다.
// Email: – 이메일을 입력합니다.
벌써 최종단계 입니다. 터미널에서 아까 파일들을 생성했던 loaf-dom 디렉토리로 이동한 후 npm publish 명령어로 배포합니다.
1 2 |
$ npm publish // + loaf-dom@0.0.1 |
이제 npm install –save loaf-dom 로 해당 패키지를 받을 수 있습니다.
1 |
$ npm install --save loaf-dom |