NPM은 개발자라면 누구나 한번쯤은 접해본 program이자 pacakge입니다.
이 블로그에서는 npm package를 직접 작성하고 배포하여 opensource를 전세계 개발자들과 공유하기 위한 기본적인 사항에 대하여 다루게 됩니다.

wiki를 기준으로 npm을 검색하며 나오는 npm package의 수 입니다.

NPM의 사용
- npm 패키지는 정말 다양한 곳에서 사용되고 있습니다.
- 아래 대표적으로 사용되고 있는 Framwork, Library들입니다.
- react
- vue
- angluar
- nest js
- next js
- express
- 위의 예시들은 대부분 web framwork이지만, 실제로 mobile, robotics등 많은 분야에서 사용되고 있습니다. 아래 예시들은 google cloud, AWS의 SDK npm 입니다.


목표
- 이 포스팅의 목표는 최종적으로 자신만의 npm을 만들어 배포하고 전세계 개발자들과 공유하는 것입니다.
- 가능한 쉽게 내용을 전달하여 기본적인 패키지를 만드는데 어려움이 없게 할 것입니다.
- npm 제작시 일단 무시해도 되는 세부적이거나 어려운 개념들은 언급만 하고 다루지 않습니다.
- opensource 기여라고 하면 왠지 어렵고, 거창해 보이지만 작은 편의성과 아이디어만가지고도 쉽게 나만의 opensource, 나만의 pacakge를 만들어 전세계 개발자들과 공유할 수 있습니다.
- javascript, typescript의 모듈화, 패키지화 시키는 훈련을 통해 한층더 업그레이드된 개발 실력을 갖출 수 있습니다.
사전 지식
포스팅 단계
각 단계별로 내용이 포스팅 될때마다 링크가 활성화 됩니다.
- 준비 할것들
- NPM 이 뭐지? 어떻게 생겨 먹는 것이고 어떻게 작동하는 것인가?
- npm이란 무엇인가?
- 용어정의
- npm 기본 사용법
- npm이 어떻게 생겨 먹을 것인가?
- 기존의 서비스되고 있는 npm을 해체하고 뜯고 보기
- 부분들 역할과 용어
- 원본 코드 분석
- npm을 만들기 위해서 필요한 기술
- javascript
- typescript
- npm을 만들기 #1
- 기본 설계하기
- 모듈 구성 하기
- 패키지 구성하기
- npm 만들기 #2
- 모듈 만들기
- 패키지 만들기
- 패키지 테스트 하기
- npm 배포하기
- 배포하기 위한 문서 작성
- 문서 구조
- 문서 작성
- 계정 생성 및 연동
- 배포하기