package.json คือ Node Configuration File
json
{
"name": "my-workspace-project",
"version": "1.0.0",
"private": true,
"description": "A monorepo project using workspaces",
"workspaces": [
"packages/*"
],
"scripts": {
"build": "lerna run build --stream",
"start": "node ./packages/app/dist/index.js",
"test": "lerna run test --stream",
"lint": "eslint ./packages/**/*.{js,ts}"
},
"dependencies": {
"express": "^4.17.1",
"lodash": "^4.17.21"
},
"devDependencies": {
"typescript": "^5.0.0",
"eslint": "^8.0.0",
"lerna": "^6.0.0",
"ts-node": "^10.0.0"
},
"peerDependencies": {
"react": "^18.0.0",
"react-dom": "^18.0.0"
},
"peerDependenciesMeta": {
"react": {
"optional": true
},
"react-dom": {
"optional": true
}
},
"engines": {
"node": ">=16.0.0",
"npm": ">=7.0.0"
},
"author": "Your Name",
"license": "ISC"
}
hjsthjiosrhtoi
Field | Description |
---|---|
dependencies | Packages ที่จำเป็นสำหรับการทำงานของแอปพลิเคชันใน production environment |
devDependencies | Packages ที่จำเป็นสำหรับการพัฒนาและทดสอบ ซึ่งไม่จำเป็นต้องใช้ใน production environment |
peerDependenciesMeta | Metadata สำหรับ peerDependencies ที่สามารถทำให้บางแพ็กเกจเป็น optional ได้ |
workspaces | การกำหนดค่าที่ใช้ในการจัดการหลายแพ็กเกจใน monorepo |
scripts | คำสั่งที่สามารถเรียกใช้โดยใช้ npm run หรือ yarn run |
engines | การระบุเวอร์ชันของ Node.js และ npm ที่โปรเจกต์รองรับ |
... |