น.ม.คืออะไร


HTML

npmเป็นไลบรารีซอฟต์แวร์ (รีจิสตรี) ที่ใหญ่ที่สุดในโลก

npmยังเป็นซอฟต์แวร์Package ManagerและInstaller


Registry ซอฟต์แวร์ที่ใหญ่ที่สุดในโลก (ห้องสมุด)

npm เป็น Software Registryที่ใหญ่ที่สุดในโลก

รีจิสทรีประกอบด้วยแพ็คเกจรหัส มากกว่า 800,000 ชุด

นักพัฒนา โอเพ่นซอร์สใช้npmเพื่อแชร์ซอฟต์แวร์

หลายองค์กรยังใช้ npm เพื่อจัดการการพัฒนาส่วนตัว


การใช้ npm นั้นฟรี

npmใช้งานได้ฟรี

คุณสามารถดาวน์โหลดแพ็คเกจซอฟต์แวร์สาธารณะ npm ทั้งหมดโดยไม่ต้องลงทะเบียนหรือเข้าสู่ระบบ


ไคลเอนต์บรรทัดคำสั่ง

npmมีCLI (Command Line Client) ที่สามารถใช้เพื่อดาวน์โหลดและติดตั้งซอฟต์แวร์:

ตัวอย่าง Windows

C:\>npm install <package>

ตัวอย่าง Mac OS

>npm install <package>

กำลังติดตั้ง npm

ติดตั้ง npmด้วยNode.js

ซึ่งหมายความว่าคุณต้องติดตั้ง Node.js เพื่อติดตั้ง npm บนคอมพิวเตอร์ของคุณ

ดาวน์โหลด Node.js จากเว็บไซต์ทางการของ Node.js: https://nodejs.org


โปรแกรมจัดการแพ็คเกจซอฟต์แวร์

ชื่อnpm (Node Package Manager) มีต้นกำเนิดมาจากเมื่อ npm ถูกสร้างขึ้นครั้งแรกเป็นตัวจัดการแพ็คเกจสำหรับ Node.js

แพ็คเกจ npmทั้งหมด ถูกกำหนด ไว้ในไฟล์ชื่อpackage.json

เนื้อหาของ package.json ต้องเขียนด้วยJSON

ต้องมี อย่างน้อยสองฟิลด์ในไฟล์คำจำกัดความ: nameและversion

ตัวอย่าง

{
"name" : "foo",
"version" : "1.2.3",
"description" : "A package for fooing things",
"main" : "foo.js",
"keywords" : ["foo", "fool", "foolish"],
"author" : "John Doe",
"licence" : "ISC"
}

การจัดการการพึ่งพา

npmสามารถจัดการการพึ่งพาได้

npmสามารถ (ในบรรทัดคำสั่งเดียว) ติดตั้งการพึ่งพาทั้งหมดของโครงการ

ยังกำหนดการอ้างอิงในpackage.json


การแบ่งปันซอฟต์แวร์ของคุณ

หากคุณต้องการแบ่งปันซอฟต์แวร์ของคุณเองในการลงทะเบียน npmคุณสามารถลงชื่อเข้าใช้ได้ที่:

https://www.npmjs.com


การเผยแพร่แพ็คเกจ

คุณสามารถเผยแพร่ไดเร็กทอรีใดก็ได้จากคอมพิวเตอร์ของคุณ ตราบใดที่ไดเร็กทอรีนั้นมีไฟล์package.json

ตรวจสอบว่ามีการติดตั้ง npm หรือไม่:

C:\>npm

ตรวจสอบว่าคุณเข้าสู่ระบบ:

C:\>npm whoami

ถ้าไม่เข้าสู่ระบบ:

C:\>npm login
Username: <your username>
Password: <your password>

นำทางไปยังโครงการของคุณและเผยแพร่โครงการของคุณ:

C:\Users\myuser>cd myproject
C:\Users\myuser\myproject>npm publish