📦
EPISODE 03
package.json · install · nodemon · dayjs
npm과 패키지
package.json 구조와 npm 명령어, dependencies와 devDependencies의 차이, npx, nodemon, 그리고 실용 라이브러리 dayjs를 익힙니다.
npmpackage.jsonnodemondayjs
소요 시간
⏱ 30~45분
난이도
📊 중급 입문
선수 조건
🎯 node-02
결과물
필요한 라이브러리를 직접 설치·관리하는 프로젝트
이 강의에서 배우는 것
- 1package.json의 주요 필드를 안다
- 2npm install / uninstall / list / scripts를 사용한다
- 3dependencies와 devDependencies를 구분한다
- 4nodemon으로 개발 서버를 자동 재시작한다
- 5.gitignore에서 node_modules와 .env를 제외한다
1. package.json 구조
json
{
"name": "my-project",
"version": "1.0.0",
"description": "내 첫 Node.js 프로젝트",
"main": "index.js",
"scripts": {
"start": "node server.js",
"dev": "nodemon server.js",
"test": "node test.js"
},
"dependencies": {
"express": "^4.18.2",
"dayjs": "^1.11.10"
},
"devDependencies": {
"nodemon": "^3.0.1"
}
}2. npm 기본 명령어
bash
# 초기화
npm init # 질문에 답하며 생성
npm init -y # 기본값 자동 생성
# 설치
npm install express # 프로덕션 의존성
npm install --save-dev nodemon # 개발 의존성
npm install -g typescript # 전역 설치
# 목록
npm list
npm list --depth=0
# 제거
npm uninstall express
# 스크립트 실행
npm run dev
npm start # start는 run 생략 가능3. dependencies vs devDependencies
| 구분 | 설명 | 예시 |
|---|---|---|
| dependencies | 실제 실행에 필요 | express, dayjs |
| devDependencies | 개발 중에만 필요 | nodemon, eslint |
4. npx
bash
npx create-react-app my-app # 설치 없이 바로 실행
npx cowsay "Hello, Node!" # 일회성 실행5. nodemon
bash
npm install --save-dev nodemonjson
{
"scripts": {
"dev": "nodemon server.js"
}
}bash
npm run dev6. dayjs — 날짜/시간
bash
npm install dayjsjavascript
const dayjs = require('dayjs');
dayjs() // 현재 시각
dayjs('2025-01-15') // 특정 날짜
dayjs().format('YYYY-MM-DD') // '2025-01-15'
dayjs().format('YYYY년 MM월 DD일') // '2025년 01월 15일'
dayjs().add(7, 'day') // 7일 후
dayjs().subtract(1, 'month') // 1달 전
dayjs().diff(dayjs('2000-01-01'), 'year') // 나이 계산7. .gitignore
text
# .gitignore
node_modules/
.env
*.lognode_modules는 용량이 크고 npm install로 언제든 복원 가능 — git에 올리지 않습니다.