Skip to content

Registry คือบริการสำหรับเก็บ Package ต่างๆ ซึ่งใน Node.js ส่วนใหญ่จะเก็บไว้ที่ NPM Registry

เวลาเราจะหา Package หรือ Library ต่างๆ ให้เข้ามามาที่ NPM Registry

ลองเข้าไปดูได้ที่ www.npmjs.com faviconhttps://www.npmjs.com/package/@biomejs/biome?activeTab=readme

จากรูปจะสังเกตว่ามี Tab ต่างๆ เช่น

  • README => ดึง README.md มาแสดง
  • Code => Code ต่างๆ
  • Dependencies => Package นั้นมีการใช้ Package อื่นอะไรบ้าง
  • Dependents => Package นั้นถูกใช้ในโปรเจกต์อะไรบ้าง
  • Version => มีเวอร์ชันอะไรบ้าง

สร้าง Package

เมื่อเราต้องการสร้าง package เพื่อแชร์ให้คนอื่นใช้งาน เราต้องเตรียมโครงสร้างไฟล์ประมาณนี้

md
my-package/
├── dist/index
├── src/
│ └── index.js # โค้ดหลักของ package
├── package.json # ไฟล์กำหนดค่าของ package
├── README.md # เอกสารอธิบายการใช้งาน
├── LICENSE # ไฟล์ลิขสิทธิ์
└── .gitignore # ไฟล์ที่ไม่ต้องการให้ git track

package สมัยใหม่ เราจะ build มันก่อนเพื่อให้มีขนาดเล็กและพร้อมใช้ และเราเอา dist/index.js ที่ build ได้ใส่ ใน main ใน package.json

package.json
json
{
  "name": "my-package-name",
  "main": "dist/index.js",
  "scripts": {
    "build": "bun build src/index.js --target dist"
  },
}

การ Publish Package มายัง NPM

ลองจาก build เรียบร้อยและทำงานได้ สามารถ publish ไปยัง NPM โดยพิมพ์

terminal
npm publish

แต่แนะนำว่าควรใช้ release-it เพราะมันง่ายกว่า สะดวกกว่า มีการจัดการที่ดีกว่า