19 حزمة Node.js يجب معرفتها كمطور JavaScript لحياة إنتاجية وسهلة

نشرت: 2022-09-14

هل تقضي الكثير من الوقت في محاولة إنشاء كود JavaScript؟ تابع القراءة لمعرفة حزم Node.js المختلفة التي يمكن أن تجعل حياة مطور JavaScript مثمرة وسهلة.

جافا سكريبت هي لغة متزامنة ذات ترابط واحد. إنها لغة البرمجة الأكثر استخدامًا لتطوير البرامج والتطبيقات. تم تطوير العديد من أطر العمل مثل Reactjs و Angularjs و Vuejs و Expressjs و Node.js بلغتها الأساسية ، JavaScript.

يواجه العديد من المطورين مشكلات أثناء الترميز في JavaScript بسبب المفاهيم المعقدة المختلفة مثل الوعود ، و Eventloop ، وعمليات الاسترجاعات ، والرفع ، والإغلاق ، وما إلى ذلك.

لتسهيل التطوير في JavaScript ، تتوفر العديد من حزم Node.js التي تساعد في معالجة الأخطاء ، وتنسيق التعليمات البرمجية ، وحذف الملفات ، وتصحيح الأخطاء ، وضمان الأمان ، وما إلى ذلك ، كما يوفر بعضها واجهات مستخدم سطر أوامر تفاعلية للتمثيل المرئي الأفضل لقدرة وحدة المعالجة المركزية ، سعة المعالجة ، وشدة الأخطاء ، وما إلى ذلك.

Retire.js

Retire.js هي مكتبة Javascript توفر قائمة بالثغرات الأمنية المرتبطة بإصدارات مكتبة Javascript الأخرى.

يمكن استخدامه كملحق Chrome ، امتداد Firefox ، ماسح ضوئي لسطر الأوامر ، Grunt Plugin ، إلخ. يمكن تثبيته باستخدام الأمر التالي:

 $ npm install -g retire

يحتوي Retire.js على أوامر مختلفة لمسح ملفات JavaScript وملفات العقدة. يقوم بمسح مواقع ويب JavaScript ويسجل التحذيرات في وحدة تحكم المطور. ينشئ Retire.js كود الخروج 13 عندما يجد ثغرات أمنية. تقوم مهمة Gulp تلقائيًا بمسح الملفات والإبلاغ عن نقاط الضعف.

Np

Np عبارة عن حزمة JavaScript توفر ميزات متنوعة مثل تنظيف التعليمات البرمجية وتثبيت التبعيات ونشر الحزم والعلامات وما إلى ذلك. وهي تضمن دفع الكود إلى الفرع الرئيسي ويوفر واجهة مستخدم تفاعلية.

تستخدم المصادقة الثنائية لضمان الأمان للمستودعات الجديدة. يضمن أن يتم العمل على أحدث إصدار عن طريق إعادة تثبيت التبعيات. يتم دفع أحدث إصدار إلى npm. يمكن تثبيته باستخدام الأمر التالي:

 $ npm install --global np

تتضمن ميزاته المتنوعة نشر الكود من أي فرع ، وإنشاء أدلة فرعية للنشر ، وتخطي كود التنظيف والاختبار ، وما إلى ذلك. -config.json.

ESLint

ESLint هي أداة حزمة JavaScript تحلل JavaScript وتحدد الأنماط في كود ECMA / JavaScript. يقوم بتقييم الأنماط في التعليمات البرمجية باستخدام AST. يتم تحديد جميع قواعد الأداة في شكل مكونات إضافية ، ويمكن إضافتها ديناميكيًا في وقت التشغيل. يمكن تثبيت ESLint باستخدام الأمر التالي:

 $ npm init @eslint/config

بعد تثبيته باستخدام الأمر أعلاه ، يتم إنشاء ملف .eslintrc مع مجموعة من القواعد مع تعريفات الأخطاء والشروط الخاصة بكل منها. يسمح ESLint بتعريف جميع التبعيات في ملف lock. للمستخدم ولا يستخدم ملف lock. خاص به. كما أنه آمن للغاية.

شيلجس

Shelljs هي بيئة يمكن فيها تنفيذ أوامر UNIX على أي نظام تشغيل عبر واجهة برمجة تطبيقات Node.js. Shelljs محمولة ، وهي تدعم المكونات الإضافية لجهات خارجية أيضًا. الأوامر المختلفة التي يمكن استخدامها هي echo ، exec ، chmod ، pushd ، popd ، cd ، cat ، إلخ. يمكن استخدام الأمر التالي لتثبيت Shelljs.

 $ npm install [-g] shelljs

تم اختباره في مشاريع مختلفة مثل Firefox و JSHint و ESLint و Zepto وما إلى ذلك. يُفضل الاستيراد المحلي لحزم Shelljs على الواردات العالمية. يمكن أيضًا تهيئتها على أنها صامتة ، قاتلة ، مطولة ، إلخ.

عجة البيض

يوفر Omelette نموذجًا للإكمال التلقائي للرمز لمشاريع Node و Deno. يستخدم واجهة برمجة تطبيقات سهلة للغاية ويدعم 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()

بعد استيراد العجة ، يجب إنشاء كائن عجة. بعد ذلك ، يمكن استدعاء وظائف مختلفة للإكمال التلقائي للكود مثل ، setupShellInitFile () للإعداد ، cleanupShellInitFile () للتنظيف على كائن omelette للإكمال التلقائي للكود. كما أنه يدعم استخدام وظائف Lambda لإنشاء واجهات برمجة تطبيقات حرفية للقالب المعقدة.

أجمل

أجمل يستخدم لتنسيق التعليمات البرمجية. يساعد في إعطاء مسافات علامة تبويب ، ويتتبع الحد الأقصى للمحتوى في سطر واحد ، ويضمن المسافة البادئة المناسبة داخل العبارات الشرطية والحلقة. يقوم بتحويل التعليمات البرمجية إلى تنسيق أنيق وقابل للقراءة. فمثلا:

يتم توفير مقتطف الشفرة أدناه ،

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

يتم تحويله إلى الملحق أدناه عند استخدام الامتداد الأجمل:

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

يمكن أن تعمل في بيئات CI ، وبيئات التطوير المتكاملة (IDEs) ، إلخ.

jscpd

jscpd هي خدمة فنية لإدارة الديون. إنها حزمة JavaScript تساعد في العثور على مقتطفات التعليمات البرمجية المكررة عبر العديد من الرموز والمستندات الرقمية. يستخدم خوارزمية مطابقة سلسلة تسمى Rabin-Karp للعثور على تكرار الكود.

jscpd / core لديه القدرة على اكتشاف تكرار الكود في بيئات مختلفة ، ويستخدم jspd / tokenizer في ترميز كود مصدر البرنامج. بصرف النظر عن هذه ، هناك العديد من الحزم الأخرى مثل html-reporter و banner-reporter و leveldb-store وما إلى ذلك. أمر تثبيت jscpd هو:

 $ npm install -g jscpd

يتم استخدام jscpd بواسطة GitHub Super Linter و Code-Inspector و Mega-Linter و Codacy وما إلى ذلك. كل منهم يستخدم jscpd لغرض مختلف. يستخدمونها لمعالجة اللغة الطبيعية ، ومجمعات الأسطر ، وتحليل الكود ، وما إلى ذلك.

فتوب

Vtop هو جهاز عرض يعطي تمثيل رسومي لنشاط سطر الأوامر. إنه يعطي معلومات حول استخدام وحدة المعالجة المركزية من خلال تحليل مختلف الخيوط والعمليات الجارية وتمثيلها بيانياً من خلال الرسوم البيانية والمسامير وما إلى ذلك. وقد تم تطويره باستخدام JavaScript و Makefile و Shell. أمر تثبيت Vtop هو:

 $ npm install -g vtop

يمكن استخدام سمات وأكواد ألوان مختلفة لجعل واجهة المستخدم الرسومية أكثر جاذبية وفقًا للمتطلبات. اختصارات لوحة المفاتيح المختلفة مثل "u" للتحديث ، و "g" للانتقال إلى العملية العليا في القائمة ، و "G" للانتقال إلى نهاية القائمة ، و "dd" لقتل العمليات التي تنتمي إلى grp معين ، وما إلى ذلك. من الممكن استخدامه.

Standardjs

Standardjs هي مكتبة JavaScript تعمل على أتمتة تكوين الملف وتنسيق التعليمات البرمجية والعثور بسرعة على المشكلات المتعلقة بمعالجة استثناءات المبرمجين. فيما يلي أمر تثبيت Standardjs:

 $ npm install standard --global
فيديو يوتيوب

بعد تثبيته ، يمكنك تشغيله عبر مقتطف ملف / رمز باستخدام الأمر "القياسي" في واجهة سطر الأوامر. يمكن إضافة جميع تبعيات Standardjs عن طريق تحديد "قياسي:" * في كائن التبعية لملف package.json.

يمكن أيضًا تثبيته كمكوِّن إضافي للعديد من برامج تحرير النصوص مثل Visual Studio Code و Sublime Text و Atom و Vim و Brackets وما إلى ذلك. تستخدم Node.js و Expressjs و npm و Brave و GoDaddy Standardjs لتلبية متطلبات أعمالهم.

NodeJsScan

NodeJsScan هو ماسح ضوئي لرمز الأمان الثابت لتطبيقات Node.js. يُعلم عن حالة أمان التطبيق عبر واجهة مستخدم تفاعلية. يمكن دمجه مع العديد من التطبيقات مثل Slack للتنبيهات / الإخطارات وتنبيهات البريد الإلكتروني عن طريق تكوين إعدادات SMTP في ملف settings.py الخاص بـ NodeJsScan و CI / CD pipeline ، إلخ. كما أنه يساعد في إنشاء صور عامل الإرساء.

فيديو يوتيوب

يقوم بتسجيل الأخطاء والمعلومات ورسائل التحذير. وصف تفصيلي للخطأ ، مثل سبب حدوثه ، وخطورته ، وأرقام الأسطر التي حدثت فيها الأخطاء ، وعدد الملفات التي تم فحصها والمشكلات التي تم العثور عليها ، وما إلى ذلك. كما تم رسم الرسوم البيانية والمخططات لتحسين إمكانية القراءة والتحليل.

نفاية

المهملات هي مكتبة جافا سكريبت تنقل الملفات المحذوفة إلى سلة المهملات بدلاً من حذفها نهائيًا. وهو يدعم أنظمة تشغيل Mac و Linux و Windows. الأمر المستخدم لتثبيت سلة المهملات هو:

 $ npm install trash

Trash هي واجهة برمجة تطبيقات تأخذ المدخلات والخيارات كمعلمات للوظيفة عند استدعاء وظيفة trash (). يمكن أن يكون الإدخال سلسلة أو مصفوفة سلسلة. يمكن أن تكون الخيارات كائنًا. وظيفة سلة المهملات ترجع وعدًا. يتم استخدام أوامر مختلفة في أنظمة تشغيل مختلفة. يتم استخدام macOS-trash في MacOs و XDG Spec في Linux وسلة المحذوفات في Windows.

Xo

Xo عبارة عن غلاف JavaScript و TypeScript يستخدم ESLint تحته. يساعد في إنشاء رمز قابل للقراءة عن طريق إعطاء مسافة بادئة للكود ، وإضافة فواصل منقوطة ، وعلامات اقتباس مفردة ، وفواصل ، وما إلى ذلك ، حيثما كان ذلك مطلوبًا. يمكن استخدام العديد من مكونات ESLint الإضافية مثل unicorn و import و 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 تعني "مُحلل مختلف ومولد HTML جميل". يسلط الضوء على التغييرات في رمز الإصدار الحالي مقارنة بالإصدار السابق. يساعد المطورين على تحديد التغييرات التي تم إجراؤها وفهمها بسهولة. يقوم بذلك باستخدام رموز الألوان.

يقوم بذلك عن طريق تسليط الضوء على التغييرات سطرا سطرا وجنبا إلى جنب. يسلط الضوء على التغييرات في بناء جملة الكود ويجمع الأسطر المتشابهة معًا لتتبع تغييرات الكود بسهولة. أمر تثبيت diff2html كالتالي:

 $ npm install diff2html

يتكامل أيضًا مع سطر الأوامر. بعض المشاريع التي تستخدم diff2html هي Jenkins و Codacy و Ungit و git-explorer و code-anotation وما إلى ذلك.

الطباشير

Chalk هو وحدة Node.js تساعد في تنسيق التعليمات البرمجية وتصميمها. كما أنه يساعد في إنشاء وإضافة سمات الألوان إلى النص. إنها واجهة برمجة تطبيقات معبرة ، وأدائها ممتاز. إنها تعشش الأنماط وليس لها تبعيات. يمكن رؤية استخدام Chalk في مقتطف الشفرة أدناه:

 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. ومع ذلك ، يجب على المرء توخي الحذر أثناء حذف وحدات العقدة لأنه لا رجوع فيه. إذا تم حذف الوحدات النمطية لأي مشروع نشط في هذه العملية ، فإن الملفات تتلف ، ويجب تثبيت وحدات العقدة مرة أخرى.

فكيل- CLI

fkill-cli هي أداة سطر أوامر تفاعلية ومفتوحة المصدر تقتل عمليات ومنافذ Linux. تم تطويره باستخدام Node.js. إنه بسيط ومجاني وآمن ومتوافق عبر الأنظمة الأساسية. يعمل على أنظمة التشغيل Windows و Linux و macOS. الأمر المستخدم لتثبيت fkill-cli هو:

 $ npm install --global fkill-cli

مطلوب اسم العملية والمعرف لقتل العملية. يجبر "-f" العملية على التنفيذ بينما يعرض الأمر "-v" وسيطات العملية. تأخذ fkill API المدخلات والخيارات كوسائط لها وتعيد كائن الوعد. بعض الخيارات هي force و silent و ignoreCase و tree و forceAfterTimeout.

لوكالتونيل

Localtunnel عبارة عن نظام أساسي يتيح مشاركة خدمات الويب من بيئة خارجية مع البيئة المحلية للكمبيوتر دون تغيير إعدادات نظام DNS وجدار الحماية.

فيديو يوتيوب

الطلبات هي وكلاء بواسطة Localtunnel ويتم تمريرها إلى الخادم المنشور محليًا بعد تعيينها بعنوان URL يمكن الوصول إليه بشكل عام. الأمر المستخدم لتثبيت Localtunnel هو كما يلي:

 $ npm install -g localtunnel

إنه آمن ويستخدم طلبات HTTPS. يمكن استخدام واجهات برمجة التطبيقات لاختبار الويب هوك. يمكن اختبار واجهة المستخدم في المتصفحات السحابية باستخدام Localtunnel.

Inquirer.js

Inquirer.js هي واجهة مستخدم تفاعلية لسطر الأوامر لتطبيقات Node.js. يسهل عملية البحث عن الأخطاء ، وتحليل المدخلات ، والتحقق من صحة الإجابات ، وإدارة المطالبات الهرمية. تستخدم وحدات ESM أصلية لتنفيذ وظائفها. الأمر المستخدم لتثبيت Inquirer.js هو:

 $ npm install --save inquirer

تتضمن الطرق المختلفة المستخدمة: المطالبة ، والتسجيل ، وإنشاء ، والوظيفة ، وما إلى ذلك. إن الموجه () هي وظيفة تأخذ السؤال والإجابة كمدخلات ، وتعيد الوعد عند استدعائها.

السؤال هو كائن عبارة عن نسخة مجزأة من القيم المتعلقة بالسؤال مثل النوع والرسالة والإعداد الافتراضي والاختيارات والتصفية وما إلى ذلك. يحتوي زوج عنصر الإجابة والقيمة على النسخة المجزأة من إجابات العميل. المفتاح هو خاصية السؤال ، بينما يمكن أن تحتوي القيمة على تأكيد ، إدخال ، رقم ، قائمة أولية ، إلخ.

خادم HTTP

خادم http هو خادم http ثابت لسطر الأوامر. إنه بسيط ولا يتطلب أي تكوينات. يتكون من ملفين: هما index.html و 404.html. index.html هو الملف الافتراضي الذي سيتم تقديمه عند الطلبات. 404.html يتم تقديمه في حالة عدم العثور على الملف. الأمر المستخدم لتثبيت خادم http كما هو موضح أدناه:

 $ 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.