19 Node.js Packages ที่ควรรู้จักในฐานะนักพัฒนา JavaScript เพื่อชีวิตที่มีประสิทธิผลและใช้งานง่าย

เผยแพร่แล้ว: 2022-09-14

คุณใช้เวลามากเกินไปในการพยายามสร้างโค้ด JavaScript หรือไม่? อ่านต่อไปเพื่อเรียนรู้แพ็คเกจ Node.js ต่างๆ ที่สามารถทำให้ชีวิตของนักพัฒนา JavaScript มีประสิทธิผลและง่ายดาย

JavaScript เป็นภาษาซิงโครนัสแบบเธรดเดียว เป็นภาษาโปรแกรมที่ใช้กันอย่างแพร่หลายมากที่สุดสำหรับการพัฒนาซอฟต์แวร์และแอปพลิเคชัน เฟรมเวิร์กมากมาย เช่น Reactjs, Angularjs, Vuejs, Expressjs และ Node.js ได้รับการพัฒนาด้วย JavaScript ภาษาพื้นฐาน

นักพัฒนาหลายคนประสบปัญหาขณะเขียนโค้ดใน JavaScript เนื่องจากแนวคิดที่ซับซ้อนหลายอย่าง เช่น คำสัญญา, เหตุการณ์วนรอบ, การเรียกกลับ, การยก, การปิด ฯลฯ

เพื่อให้การพัฒนาใน JavaScript ง่ายขึ้น มีแพ็คเกจ Node.js มากมายที่ช่วยในการจัดการข้อผิดพลาด การจัดรูปแบบโค้ด การลบไฟล์ รหัสการดีบัก การรักษาความปลอดภัย ฯลฯ บางส่วนยังมีอินเทอร์เฟซผู้ใช้บรรทัดคำสั่งแบบโต้ตอบสำหรับการแสดงภาพพลังงาน CPU ที่ดีขึ้น ความสามารถในการประมวลผล ความรุนแรงของข้อผิดพลาด ฯลฯ

Retire.js

Retire.js เป็นไลบรารี Javascript ที่มีรายการช่องโหว่ที่เกี่ยวข้องกับเวอร์ชันไลบรารี Javascript อื่นๆ

สามารถใช้เป็นส่วนขยายของ Chrome, ส่วนขยาย Firefox, เครื่องสแกนบรรทัดคำสั่ง, ปลั๊กอิน Grunt เป็นต้น สามารถติดตั้งได้โดยใช้คำสั่งต่อไปนี้:

 $ npm install -g retire

Retire.js มีคำสั่งต่างๆ ในการสแกน JavaScript และไฟล์โหนด มันสแกนเว็บไซต์ JavaScript และบันทึกคำเตือนในคอนโซลของนักพัฒนา Retire.js สร้างรหัสทางออก 13 เมื่อพบช่องโหว่ งานอึกจะสแกนไฟล์และรายงานช่องโหว่โดยอัตโนมัติ

Np

Np คือแพ็คเกจ JavaScript ที่มีฟีเจอร์ต่างๆ เช่น การล้างโค้ด การติดตั้งการขึ้นต่อกัน การเผยแพร่แพ็คเกจและแท็ก เป็นต้น ช่วยให้มั่นใจว่าโค้ดถูกพุชไปยังมาสเตอร์แบรนช์และให้ UI แบบโต้ตอบ

การตรวจสอบสิทธิ์แบบสองปัจจัยใช้เพื่อรับรองความปลอดภัยสำหรับที่เก็บใหม่ ช่วยให้มั่นใจได้ว่างานจะเสร็จสิ้นในเวอร์ชันล่าสุดโดยการติดตั้งการพึ่งพาใหม่ เวอร์ชันล่าสุดถูกผลักไปที่ npm สามารถติดตั้งได้โดยใช้คำสั่งต่อไปนี้:

 $ npm install --global np

คุณสมบัติต่างๆ ของมันรวมถึงการเผยแพร่โค้ดจากสาขาต่างๆ การสร้างไดเรกทอรีย่อยสำหรับการเผยแพร่ การข้ามการล้างโค้ดและการทดสอบ ฯลฯ การกำหนดค่า np สามารถทำได้ทั่วโลกและในเครื่องโดยใช้แฟล็ก CLI ในไฟล์ปรับแต่งของ np เช่น np-config.js และ no -config.json

ESLint

ESLint เป็นเครื่องมือแพ็คเกจ JavaScript ที่แยกวิเคราะห์ JavaScript และระบุรูปแบบในโค้ด ECMA/ JavaScript มันประเมินรูปแบบในโค้ดโดยใช้ AST กฎทั้งหมดของเครื่องมือถูกกำหนดไว้ในรูปแบบของปลั๊กอิน และสามารถเพิ่มไดนามิกในขณะใช้งาน สามารถติดตั้ง ESLint ได้โดยใช้คำสั่งด้านล่าง:

 $ npm init @eslint/config

หลังจากติดตั้งโดยใช้คำสั่งข้างต้น ไฟล์ .eslintrc จะถูกสร้างขึ้นด้วยชุดของกฎที่มีคำจำกัดความข้อผิดพลาดและเงื่อนไขที่เกี่ยวข้อง ESLint อนุญาตให้กำหนดการอ้างอิงทั้งหมดในไฟล์ .lock ของผู้ใช้ และไม่ใช้ไฟล์ .lock ของตัวเอง อีกทั้งยังมีความปลอดภัยสูง

Shelljs

Shelljs เป็นสภาพแวดล้อมที่สามารถดำเนินการคำสั่ง UNIX บนระบบปฏิบัติการใดๆ ผ่าน Node.js API Shelljs เป็นแบบพกพาและสนับสนุนปลั๊กอินของบุคคลที่สามด้วย คำสั่งต่างๆ ที่สามารถใช้ได้ ได้แก่ echo, exec, chmod, pushd, popd, cd, cat เป็นต้น คำสั่งต่อไปนี้สามารถใช้เพื่อติดตั้ง Shelljs

 $ npm install [-g] shelljs

ได้รับการทดสอบในโครงการต่างๆ เช่น Firefox, JSHint, ESLint, Zepto เป็นต้น การนำเข้าแพ็คเกจ Shelljs ในเครื่องเป็นที่ต้องการมากกว่าการนำเข้าทั่วโลก นอกจากนี้ยังสามารถกำหนดค่าเป็นแบบเงียบ ร้ายแรง ละเอียด ฯลฯ

ไข่เจียว

ไข่เจียวมีเทมเพลตสำหรับการเติมโค้ดอัตโนมัติสำหรับโปรเจ็กต์ Node และ Deno มันใช้ API ที่ง่ายมากและรองรับ Async API และ Tree API ด้วย ข้อมูลโค้ดตัวอย่างสำหรับการติดตั้ง Omelette แสดงอยู่ด้านล่าง:

 import * as omelette from 'omelette'; const firstArgument = ({ reply }) => { reply([ 'beautiful', 'cruel', 'far' ]) } const planet = ({ reply }) => { reply([ 'world', 'mars', 'pluto' ]) } omelette`hello|hi ${firstArgument} ${planet}`.init()

หลังจากนำเข้า Omelette แล้ว จะต้องสร้าง Omelette object จากนั้น ฟังก์ชันต่างๆ สำหรับการเติมโค้ดอัตโนมัติ เช่น setupShellInitFile() สำหรับการติดตั้ง cleanupShellInitFile() สำหรับการล้างข้อมูล สามารถเรียกใช้บนออบเจ็กต์ไข่เจียวสำหรับการเติมโค้ดอัตโนมัติ นอกจากนี้ยังรองรับการใช้ฟังก์ชันแลมบ์ดาสำหรับการสร้าง API ตามตัวอักษรของเทมเพลตที่ซับซ้อน

สวยขึ้น

Prettier ใช้สำหรับจัดรูปแบบโค้ด ช่วยในการกำหนดพื้นที่แท็บ ติดตามเนื้อหาสูงสุดในบรรทัดเดียว และรับรองการเยื้องที่เหมาะสมภายในคำสั่งแบบมีเงื่อนไขและแบบวนซ้ำ มันแปลงรหัสให้อยู่ในรูปแบบที่เรียบร้อยและอ่านง่าย ตัวอย่างเช่น:

ข้อมูลโค้ดได้รับด้านล่าง

 foo(reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne());

จะถูกแปลงเป็นส่วนขยายด้านล่างเมื่อใช้ส่วนขยาย Prettier:

 foo( reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne() );

สามารถทำงานในสภาพแวดล้อม CI, Integrated Development Environments (IDE) เป็นต้น

jscpd

jscpd เป็นบริการจัดการหนี้ทางเทคนิค เป็นแพ็คเกจ JavaScript ที่ช่วยค้นหาข้อมูลโค้ดที่ซ้ำกันในรหัสต่างๆ และเอกสารดิจิทัล ใช้อัลกอริธึมการจับคู่สตริงที่เรียกว่า Rabin-Karp เพื่อค้นหาการทำซ้ำโค้ด

jscpd/core มีความสามารถในการตรวจจับการซ้ำซ้อนของโค้ดในสภาพแวดล้อมต่างๆ และ jspd/tokenizer ใช้สำหรับ tokenizing ซอร์สโค้ดของโปรแกรม นอกเหนือจากนี้ แพ็คเกจอื่นๆ เช่น html-reporter, badge-reporter, leveldb-store เป็นต้น คำสั่งสำหรับการติดตั้ง jscpd คือ:

 $ npm install -g jscpd

jscpd ถูกใช้โดย GitHub Super Linter, Code-Inspector, Mega-Linter, Codacy เป็นต้น แต่ละคนใช้ jscpd เพื่อจุดประสงค์ที่แตกต่างกัน พวกเขาใช้สำหรับการประมวลผลภาษาธรรมชาติ ตัวรวบรวมบรรทัด การวิเคราะห์โค้ด ฯลฯ

Vtop

Vtop เป็นจอภาพที่ให้การแสดงกราฟิกของกิจกรรมบรรทัดคำสั่ง โดยให้ข้อมูลเกี่ยวกับการใช้งาน CPU โดยการวิเคราะห์เธรดและกระบวนการต่างๆ ที่ทำงานอยู่ และแสดงเป็นกราฟิกผ่านแผนภูมิ สไปค์ ฯลฯ ได้รับการพัฒนาโดยใช้ JavaScript, Makefile และ Shell คำสั่งสำหรับติดตั้ง Vtop คือ:

 $ npm install -g vtop

สามารถใช้ธีมและรหัสสีต่างๆ เพื่อทำให้ GUI น่าสนใจยิ่งขึ้นตามความต้องการ แป้นพิมพ์ลัดต่างๆ เช่น "u" สำหรับการอัปเดต "g" เพื่อไปที่กระบวนการด้านบนของรายการ "G" เพื่อย้ายไปที่ส่วนท้ายของรายการ "dd" เพื่อฆ่ากระบวนการที่เป็นของ grp เฉพาะ ฯลฯ สามารถใช้ได้.

Standardjs

Standardjs คือไลบรารี JavaScript ที่กำหนดค่าไฟล์โดยอัตโนมัติ จัดรูปแบบโค้ด และพบปัญหาเกี่ยวกับการจัดการข้อยกเว้นของโปรแกรมเมอร์ได้อย่างรวดเร็ว คำสั่งในการติดตั้ง Standardjs มีดังต่อไปนี้:

 $ npm install standard --global
วิดีโอ YouTube

หลังจากติดตั้งแล้ว คุณสามารถเรียกใช้ผ่านไฟล์/ข้อมูลโค้ดโดยใช้คำสั่ง "มาตรฐาน" ในอินเทอร์เฟซบรรทัดคำสั่ง คุณสามารถเพิ่มการขึ้นต่อกันของ Standardjs ทั้งหมดได้โดยการกำหนด “มาตรฐาน: “*” ในออบเจกต์การพึ่งพาของไฟล์ package.json

นอกจากนี้ยังสามารถติดตั้งเป็นปลั๊กอินสำหรับโปรแกรมแก้ไขข้อความต่างๆ เช่น Visual Studio Code, Sublime Text, Atom, Vim, Brackets เป็นต้น Node.js, Expressjs, npm, Brave และ GoDaddy ใช้ Standardjs เพื่อตอบสนองความต้องการทางธุรกิจของพวกเขา

NodeJsScan

NodeJsScan เป็นเครื่องสแกนรหัสความปลอดภัยแบบคงที่สำหรับแอปพลิเคชัน Node.js มันแจ้งเกี่ยวกับสถานะความปลอดภัยของแอปพลิเคชันผ่าน UI แบบโต้ตอบ สามารถรวมเข้ากับแอพพลิเคชั่นต่างๆ เช่น Slack สำหรับการแจ้งเตือน/การแจ้งเตือน การแจ้งเตือนทางอีเมลโดยกำหนดการตั้งค่า SMTP ในไฟล์ settings.py ของ NodeJsScan, CI/CD ไปป์ไลน์ ฯลฯ นอกจากนี้ยังช่วยในการสร้างอิมเมจนักเทียบท่า

วิดีโอ YouTube

บันทึกข้อผิดพลาด ข้อมูล และข้อความเตือน คำอธิบายโดยละเอียดของข้อผิดพลาด เช่น สาเหตุของการเกิด ความรุนแรง หมายเลขบรรทัดที่เกิดข้อผิดพลาด จำนวนไฟล์ที่สแกนและปัญหาที่พบ ฯลฯ นอกจากนี้ กราฟและแผนภูมิยังถูกพล็อตเพื่อให้สามารถอ่านและวิเคราะห์ได้ดียิ่งขึ้น

ขยะ

ถังขยะคือไลบรารี JavaScript ที่ย้ายไฟล์ที่ถูกลบไปยังถังขยะแทนที่จะลบทิ้งอย่างถาวร รองรับ Mac, Linux และ Windows คำสั่งที่ใช้ในการติดตั้งถังขยะคือ:

 $ npm install trash

ถังขยะเป็น API ที่รับอินพุตและตัวเลือกเป็นพารามิเตอร์ของฟังก์ชันเมื่อมีการเรียกใช้ฟังก์ชัน Trash() อินพุตอาจเป็นสตริงหรืออาร์เรย์สตริง ตัวเลือกอาจเป็นวัตถุ ฟังก์ชันถังขยะส่งคืนสัญญา คำสั่งต่างๆ ถูกใช้ในระบบปฏิบัติการที่แตกต่างกัน macOS-trash ใช้ใน MacOs, XDG Spec ใน Linux และถังรีไซเคิลใน Windows

Xo

Xo เป็น wrapper JavaScript และ TypeScript ที่ใช้ ESLint ด้านล่าง ช่วยสร้างโค้ดที่อ่านได้โดยการเยื้องโค้ด เพิ่มเครื่องหมายอัฒภาค เครื่องหมายคำพูดเดี่ยว เครื่องหมายจุลภาค ฯลฯ ทุกที่ที่ต้องการ ปลั๊กอิน ESLint จำนวนมาก เช่น ยูนิคอร์น นำเข้า ava n ฯลฯ สามารถใช้กับ Xo คำสั่งที่ใช้ในการติดตั้ง xo คือ:

 $ npm install xo --save-dev

ปัญหาสามารถแก้ไขได้โดยอัตโนมัติโดยใช้คำสั่ง $xo –fix Xo สามารถกำหนดค่าได้โดยใช้คุณสมบัติ xo ในไฟล์ package.json สามารถติดตั้งเป็นปลั๊กอินสำหรับโปรแกรมแก้ไขต่างๆ เช่น Vim, Visual Studio Code, Atom, Sublime Text, Emacs เป็นต้น

diff2html

diff2html ย่อมาจาก "diff parser และเครื่องมือสร้าง HTML ที่สวยงาม" โดยเน้นการเปลี่ยนแปลงโค้ดของเวอร์ชันปัจจุบันเมื่อเทียบกับเวอร์ชันก่อนหน้า ช่วยให้นักพัฒนาระบุและเข้าใจการเปลี่ยนแปลงที่เกิดขึ้นได้อย่างง่ายดาย ทำได้โดยใช้รหัสสี

ทำได้โดยเน้นการเปลี่ยนแปลงทีละบรรทัดและแบบเคียงข้างกัน โดยเน้นที่การเปลี่ยนแปลงไวยากรณ์ของโค้ดและจัดกลุ่มบรรทัดที่คล้ายคลึงกันเพื่อติดตามการเปลี่ยนแปลงโค้ดได้อย่างง่ายดาย คำสั่งติดตั้ง diff2html มีดังนี้:

 $ npm install diff2html

มันถูกรวมเข้ากับบรรทัดคำสั่งด้วย บางโครงการที่ใช้ diff2html ได้แก่ Jenkins, Codacy, Ungit, git-explorer, code-annotation เป็นต้น

ชอล์ก

ชอล์กเป็นโมดูล Node.js ที่ช่วยในการจัดรูปแบบและจัดรูปแบบโค้ด นอกจากนี้ยังช่วยในการสร้างและเพิ่มธีมสีให้กับข้อความ เป็น API ที่แสดงออกและประสิทธิภาพก็ยอดเยี่ยม มันซ้อนสไตล์และไม่มีการพึ่งพา การใช้ชอล์กสามารถดูได้ในข้อมูลโค้ดด้านล่าง:

 import chalk from 'chalk'; console.log(chalk.blue('Hello world!'));

chalk.level กำหนดสีที่ได้รับการสนับสนุนในแต่ละระดับ '0' แสดงว่าสีทั้งหมดถูกปิดใช้งาน '1' หมายถึงการรองรับสีพื้นฐาน '2' หมายถึงการรองรับสี 256 สี และ '3' หมายถึงการรองรับ Truecolor ตัวปรับแต่งรูปแบบต่างๆ เพื่อจัดรูปแบบข้อความที่สนับสนุนโดยชอล์ก ได้แก่ ผกผัน, ซ่อน, มองเห็นได้, ขีดทับ, ตัวหนา, รีเซ็ต, ตัวเอียง, ขีดเส้นใต้, ขีดเส้นใต้, สลัว ฯลฯ

NpKill

Npkill เป็นเครื่องมือที่ลบโฟลเดอร์โหนดโมดูลเก่าและหนัก ช่วยในการลบโมดูลโหนดอย่างรวดเร็วและล้างพื้นที่ในระบบของคุณ ได้รับการพัฒนาโดยใช้ TypeScript, JavaScript และ Go ไม่มีการพึ่งพาและใช้งานง่าย คำสั่งที่ใช้ในการติดตั้ง Npkill คือ:

 $ npm i -g npkill

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

fkill-cli

fkill-cli เป็นเครื่องมือบรรทัดคำสั่งแบบโอเพนซอร์สและโต้ตอบที่ฆ่ากระบวนการและพอร์ตของ Linux ได้รับการพัฒนาโดยใช้ Node.js ใช้งานได้ง่าย ฟรี ปลอดภัย และใช้งานข้ามแพลตฟอร์มได้ มันทำงานบน Windows, Linux และ macOS คำสั่งที่ใช้ในการติดตั้ง fkill-cli คือ:

 $ npm install --global fkill-cli

ต้องใช้ชื่อกระบวนการและ ID เพื่อฆ่ากระบวนการ "-f" บังคับให้การดำเนินการดำเนินการในขณะที่คำสั่ง "-v" แสดงอาร์กิวเมนต์ของกระบวนการ fkill API รับอินพุตและตัวเลือกเป็นอาร์กิวเมนต์และส่งคืนอ็อบเจ็กต์สัญญา บางตัวเลือก ได้แก่ บังคับ เงียบ ละเว้นกรณี ทรี และ forceAfterTimeout

Localtunel

Localtunnel เป็นแพลตฟอร์มที่ช่วยให้สามารถแบ่งปันบริการเว็บจากสภาพแวดล้อมภายนอกกับสภาพแวดล้อมภายในของคอมพิวเตอร์โดยไม่ต้องเปลี่ยนการตั้งค่า DNS และไฟร์วอลล์ของระบบ

วิดีโอ YouTube

การร้องขอจะถูกพร็อกซี่โดย Localtunnel และถูกส่งไปยังเซิร์ฟเวอร์ที่ปรับใช้ในเครื่องหลังจากกำหนดด้วย URL ที่เข้าถึงได้แบบสาธารณะ คำสั่งที่ใช้ในการติดตั้ง Localtunnel มีดังนี้:

 $ npm install -g localtunnel

มีความปลอดภัยและใช้คำขอ HTTPS สามารถใช้ API เหล่านี้เพื่อทดสอบเว็บฮุคได้ สามารถทดสอบ UI ในเบราว์เซอร์คลาวด์โดยใช้ Localtunnel

Inquirer.js

Inquirer.js เป็นอินเทอร์เฟซผู้ใช้บรรทัดคำสั่งแบบโต้ตอบสำหรับแอปพลิเคชัน Node.js ช่วยลดขั้นตอนในการค้นหาข้อผิดพลาด แยกวิเคราะห์อินพุต ตรวจสอบคำตอบ และจัดการข้อความแจ้งตามลำดับชั้น ใช้โมดูล ESM ดั้งเดิมสำหรับการใช้งานฟังก์ชันต่างๆ คำสั่งที่ใช้ในการติดตั้ง Inquirer.js คือ:

 $ npm install --save inquirer

วิธีการต่างๆ ที่ใช้ ได้แก่ prompt, registerPrompt, createPromptModule เป็นต้น prompt() เป็นฟังก์ชันที่รับคำถามและคำตอบเป็นอินพุตและส่งคืนสัญญาเมื่อเรียกใช้

คำถามคืออ็อบเจ็กต์ที่เป็นเวอร์ชันที่แฮชของค่าที่เกี่ยวข้องกับคำถาม เช่น ประเภท, ข้อความ, ค่าเริ่มต้น, ตัวเลือก, ตัวกรอง ฯลฯ คู่ออบเจ็กต์คีย์-ค่าของคำตอบประกอบด้วยเวอร์ชันที่แฮชของการตอบกลับของไคลเอ็นต์ กุญแจสำคัญคือคุณสมบัติของคำถาม ในขณะที่ค่าสามารถมีการยืนยัน อินพุต ตัวเลข รายการดิบ ฯลฯ

http-เซิร์ฟเวอร์

http-server เป็นบรรทัดคำสั่งคงที่ http-server เป็นเรื่องง่ายและไม่ต้องการการกำหนดค่าใดๆ ประกอบด้วย 2 ไฟล์ คือ index.html และ 404.html index.html เป็นไฟล์เริ่มต้นที่จะแสดงผลตามคำขอ 404.html แสดงผลเมื่อไม่พบไฟล์ คำสั่งที่ใช้ในการติดตั้ง http-server มีดังต่อไปนี้:

 $ npm install --global http-server

ได้รับการพัฒนาโดยใช้ HTML และ JavaScript รับรองความปลอดภัยผ่านใบรับรอง TLS/SSL ใช้อัลกอริทึม RSA สำหรับการเข้ารหัสและถอดรหัสคีย์ นอกจากนี้ยังอนุญาตให้กำหนดข้อความรหัสผ่านพร้อมกับคีย์ส่วนตัวเพื่อความปลอดภัย

คำพูดสุดท้าย

JavaScript เป็นภาษาโปรแกรมที่ใช้กันอย่างแพร่หลายมากที่สุดสำหรับการพัฒนาซอฟต์แวร์ เพื่อทำให้ชีวิตของนักพัฒนาง่ายขึ้น แพ็คเกจ Node.js ต่างๆ จึงได้รับการพัฒนาขึ้น

แพ็คเกจ Node.js เช่น Retire.js, Localtunnel, Xo, Inquirer.js, Shelljs, fpkill, NodeJsScan, Prettier เป็นต้น สามารถใช้สำหรับการจัดรูปแบบโค้ด รับรองความปลอดภัย เน้นการเปลี่ยนแปลงโค้ด ลบโมดูลโหนดที่หนักและไม่ต้องการ เป็นต้น ซึ่งช่วยให้นักพัฒนาดีบัก เขียน และจัดการโค้ดได้อย่างมีประสิทธิภาพ

คุณสามารถอ่านเกี่ยวกับวิธีการติดตั้ง Node.js และ NPM บน Windows และ macOS