Search

npm

npm (Node Package Manager)

Node.js μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μœ„ν•œ νŒ¨ν‚€μ§€ κ΄€λ¦¬μž
Node.jsλ₯Ό μ„€μΉ˜ν•˜λ©΄ ν•¨κ»˜ 제곡되며, λ‹€μ–‘ν•œ νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•˜κ³  관리할 수 μžˆμŠ΅λ‹ˆλ‹€. npm은 Node.js μƒνƒœκ³„μ—μ„œ μ½”λ“œλ₯Ό κ³΅μœ ν•˜κ³  μž¬μ‚¬μš©ν•˜κΈ° μœ„ν•œ 핡심 도ꡬ 쀑 ν•˜λ‚˜λ‘œ, κ°œλ°œμžκ°€ ν”„λ‘œμ νŠΈμ— ν•„μš”ν•œ μ™ΈλΆ€ λͺ¨λ“ˆμ„ μ†μ‰½κ²Œ μΆ”κ°€ν•˜κ³  관리할 수 μžˆλ„λ‘ λ„μ™€μ€λ‹ˆλ‹€.

npm 곡식 μ‚¬μ΄νŠΈ

μ£Όμš” κΈ°λŠ₯

1.
νŒ¨ν‚€μ§€ μ„€μΉ˜:
β€’
npm install <νŒ¨ν‚€μ§€λͺ…> λͺ…λ Ήμ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ ν”„λ‘œμ νŠΈμ— ν•„μš”ν•œ νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•©λ‹ˆλ‹€.
2.
μ˜μ‘΄μ„± 관리:
β€’
package.json νŒŒμΌμ— ν”„λ‘œμ νŠΈ μ˜μ‘΄μ„±μ„ κΈ°λ‘ν•˜κ³ , 이λ₯Ό 톡해 ν”„λ‘œμ νŠΈμ˜ 의쑴 λͺ¨λ“ˆμ„ μ‰½κ²Œ 관리할 수 μžˆμŠ΅λ‹ˆλ‹€.
3.
슀크립트 μ‹€ν–‰:
β€’
package.json νŒŒμΌμ—μ„œ μ •μ˜λœ 슀크립트λ₯Ό μ‹€ν–‰ν•˜μ—¬ ν…ŒμŠ€νŠΈ, λΉŒλ“œ, μ‹œμž‘ λ“±μ˜ μž‘μ—…μ„ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
4.
버전 관리:
β€’
νŒ¨ν‚€μ§€μ˜ 버전을 κ΄€λ¦¬ν•˜κ³ , ^, ~, > λ“±μ˜ 기호λ₯Ό μ‚¬μš©ν•˜μ—¬ μ›ν•˜λŠ” 버전을 λͺ…μ‹œν•  수 μžˆμŠ΅λ‹ˆλ‹€.
5.
λͺ¨λ“ˆ 곡유:
β€’
νŒ¨ν‚€μ§€λ₯Ό npm 곡식 μ €μž₯μ†Œ λ˜λŠ” μ‚¬μš©μž μ •μ˜ μ €μž₯μ†Œμ— μ—…λ‘œλ“œν•˜κ³ , λ‹€λ₯Έ μ‚¬μš©μžκ°€ ν•΄λ‹Ή νŒ¨ν‚€μ§€λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μ£Όμš” λͺ…λ Ήμ–΄

λͺ…λ Ήμ–΄
μ„€λͺ…
npm install <νŒ¨ν‚€μ§€>
νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•©λ‹ˆλ‹€.
npm install -g <νŒ¨ν‚€μ§€>
κΈ€λ‘œλ²Œν•˜κ²Œ νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•©λ‹ˆλ‹€.
npm install --save <νŒ¨ν‚€μ§€>
νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•˜κ³  dependencies에 μΆ”κ°€ν•©λ‹ˆλ‹€.
npm install --save-dev <νŒ¨ν‚€μ§€>
νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•˜κ³  devDependencies에 μΆ”κ°€ν•©λ‹ˆλ‹€.
npm uninstall <νŒ¨ν‚€μ§€>
νŒ¨ν‚€μ§€λ₯Ό μ œκ±°ν•©λ‹ˆλ‹€.
npm update <νŒ¨ν‚€μ§€>
νŒ¨ν‚€μ§€λ₯Ό μ΅œμ‹  λ²„μ „μœΌλ‘œ μ—…λ°μ΄νŠΈν•©λ‹ˆλ‹€.
npm ls
ν”„λ‘œμ νŠΈμ˜ νŒ¨ν‚€μ§€ 쒅속성을 λ‚˜μ—΄ν•©λ‹ˆλ‹€.
npm init
μƒˆλ‘œμš΄ package.json νŒŒμΌμ„ μƒμ„±ν•©λ‹ˆλ‹€.
npm run <슀크립트>
package.json νŒŒμΌμ— μ •μ˜λœ 슀크립트λ₯Ό μ‹€ν–‰ν•©λ‹ˆλ‹€.
npm search <νŒ¨ν‚€μ§€>
νŒ¨ν‚€μ§€λ₯Ό κ²€μƒ‰ν•©λ‹ˆλ‹€.
npm info <νŒ¨ν‚€μ§€>
νŒ¨ν‚€μ§€μ— λŒ€ν•œ 상세 정보λ₯Ό ν‘œμ‹œν•©λ‹ˆλ‹€.
npm outdated
ν”„λ‘œμ νŠΈμ˜ νŒ¨ν‚€μ§€κ°€ μ΅œμ‹ μΈμ§€ ν™•μΈν•©λ‹ˆλ‹€.
npm audit
ν”„λ‘œμ νŠΈμ— λŒ€ν•œ λ³΄μ•ˆ 취약성을 κ²€μ‚¬ν•©λ‹ˆλ‹€.
npm publish
νŒ¨ν‚€μ§€λ₯Ό npm λ ˆμ§€μŠ€νŠΈλ¦¬μ— κ²Œμ‹œν•©λ‹ˆλ‹€.
npm version <버전>
νŒ¨ν‚€μ§€μ˜ 버전을 μ—…λ°μ΄νŠΈν•˜κ³  package.json νŒŒμΌμ„ μ—…λ°μ΄νŠΈν•©λ‹ˆλ‹€.
npm login
npm λ ˆμ§€μŠ€νŠΈλ¦¬μ— λ‘œκ·ΈμΈν•©λ‹ˆλ‹€.
npm whoami
ν˜„μž¬ 둜그인된 μ‚¬μš©μžλ₯Ό ν‘œμ‹œν•©λ‹ˆλ‹€.
npm logout
npm λ ˆμ§€μŠ€νŠΈλ¦¬μ—μ„œ λ‘œκ·Έμ•„μ›ƒν•©λ‹ˆλ‹€.

package.json

νŒ¨ν‚€μ§€μ˜ 버전을 κ΄€λ¦¬ν•˜λŠ” 파일
λ…Έλ“œ ν”„λ‘œμ νŠΈλ₯Ό ν•˜κΈ° μœ„ν•œ ν•„μˆ˜μ μΈ 파일

package.json νŒŒμΌμ„ μƒμ„±ν•˜κΈ° μœ„ν•œ λͺ…λ Ή

npm init
JavaScript
볡사
{ "name": "my-node-app", "version": "1.0.0", "description": "A simple Node.js application", "main": "index.js", "scripts": { "start": "node index.js", "test": "mocha tests" }, "dependencies": { "express": "^4.17.1", "body-parser": "^1.19.0" }, "devDependencies": { "mocha": "^8.4.0", "chai": "^4.2.0" }, "keywords": ["node", "express", "example"], "author": "Your Name", "license": "MIT", "repository": { "type": "git", "url": "https://github.com/yourusername/my-node-app.git" }, "engines": { "node": ">=10.0.0", "npm": ">=6.0.0" }, "config": { "port": 3000 } }
JSON
볡사
속성
μ„€λͺ…
name
νŒ¨ν‚€μ§€μ˜ 이름. μ€‘λ³΅λ˜μ§€ μ•Šλ„λ‘ κ³ μœ ν•΄μ•Ό 함.
version
νŒ¨ν‚€μ§€μ˜ 버전. Semantic Versioning(SemVer) ν˜•μ‹μ„ 따름.
description
νŒ¨ν‚€μ§€μ— λŒ€ν•œ κ°„λ‹¨ν•œ μ„€λͺ….
main
λͺ¨λ“ˆμ˜ μ§„μž…μ  파일. CommonJS λͺ¨λ“ˆ κ·œκ²©μ— 따라야 함.
scripts
μ‚¬μš©μž μ •μ˜ 슀크립트. ν…ŒμŠ€νŠΈ, λΉŒλ“œ λ“±μ˜ μž‘μ—…μ„ μ •μ˜ν•  수 있음.
dependencies
ν”„λ‘œλ•μ…˜ ν™˜κ²½μ—μ„œ ν•„μš”ν•œ νŒ¨ν‚€μ§€ λͺ©λ‘.
devDependencies
개발 ν™˜κ²½μ—μ„œ ν•„μš”ν•œ νŒ¨ν‚€μ§€ λͺ©λ‘.
keywords
νŒ¨ν‚€μ§€λ₯Ό 검색할 λ•Œ μ‚¬μš©λ  ν‚€μ›Œλ“œ λͺ©λ‘.
author
νŒ¨ν‚€μ§€μ˜ μž‘μ„±μž. 이름 뿐만 μ•„λ‹ˆλΌ 이메일, ν™ˆνŽ˜μ΄μ§€ 등을 포함할 수 있음.
license
νŒ¨ν‚€μ§€μ˜ λΌμ΄μ„ μŠ€ 정보.
repository
μ†ŒμŠ€ μ½”λ“œ μ €μž₯μ†Œ 정보.
engines
ν”„λ‘œμ νŠΈκ°€ μ˜μ‘΄ν•˜λŠ” Node.js 및 npm의 버전 μ œμ•½ 쑰건.
scripts
μ‚¬μš©μž μ •μ˜ 슀크립트 λͺ©λ‘. npm λͺ…λ Ήμ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ μ‹€ν–‰ κ°€λŠ₯.
config
μ‚¬μš©μž μ •μ˜ μ„€μ • 정보.
dependencies
νŒ¨ν‚€μ§€μ˜ μ˜μ‘΄μ„± λͺ©λ‘.

figlet λͺ¨λ“ˆ

μ„€μΉ˜

npm i figlet
JavaScript
볡사

μ˜ˆμ‹œμ½”λ“œ

var figlet = require("figlet"); figlet("Hello World!!", function (err, data) { if (err) { console.log("Something went wrong..."); console.dir(err); return; } console.log(data); });
JavaScript
볡사