freeCodeCamp/guide/arabic/miscellaneous/create-an-npm-module/index.md

49 lines
3.0 KiB
Markdown
Raw Normal View History

---
title: Create an Npm Module
localeTitle: إنشاء وحدة NPM
---
وحدة NPM عبارة عن مجموعة من وظائف Javascript المجمعة في حزمة قابلة للتوزيع. تحتفظ [NPM](http://www.npmjs.com) بسجل جميع الحزم المتوفرة ، وهي أيضًا الأداة المستخدمة لتثبيت الحزم من السجل الخاص بها.
يتمثل جمال NPM في إمكانية تجميع الحزم التي أنشأها أشخاص آخرون لإنشاء شيء جديد ، ويمكن لشخص آخر استخدام الحزمة التي أنشأتها لاحقًا. إذا كان لديك بعض التعليمات البرمجية التي تريد مشاركتها مع العالم ، فمن السهل نشر وحدة نمطية إلى NPM.
## الخطوة 1: إنشاء البرنامج النصي الخاص بك
لقد أنشأت هذه الأداة البسيطة مثل `index.js` :
`var time = new Date().toTimeString();
console.log(time);
`
## الخطوة 2: إنشاء معلومات الحزمة
الخطوة التالية هي إنشاء المعلومات لنشرها مع الحزمة الخاصة بك ، المخزنة في `package.json` . يوفر NPM معالجًا لتسهيل إنشاء هذا الملف.
ببساطة قم بتشغيل `npm init` والإجابة على الأسئلة.
يجب أن تبدو `package.json` كالتالي:
`{
"name": "whattimeisit",
"version": "1.0.0",
"description": "accurate time retrieval",
"main": "index.js",
"author": "HoursAndMinutes",
"license": "ISC"
}
`
لا تنس تضمين رابط مستودع GitHub إذا كان الرمز على GitHub!
## الخطوة 3: إنشاء حساب مستخدم على NPM
من أجل نشر حزمة إلى الآلية الوقائية الوطنية ، يجب أن يكون لديك حساب مسجل. للقيام بذلك ، قم بتشغيل `npm adduser` . يمكنك التحقق من الحساب المستخدم حاليًا مع `npm config ls` .
## الخطوة 4: النشر إلى الآلية الوقائية الوطنية
قبل نشر الحزمة الخاصة بك إلى الآلية الوقائية الوطنية ، تحقق مما إذا كان الدليل يحتوي على أي ملفات لا تريد جعلها عامة (مثل كلمات المرور ، المفاتيح الخاصة ، إلخ). يمكنك إضافتها إلى ملف يسمى `.npmignore` لاستبعادها من نشر الحزمة. NPM سوف يكرم أيضا `.gitignore` إذا كان لديك ذلك.
بمجرد الانتهاء من محتويات الحزمة الخاصة بك ، قم بتشغيل `npm publish` . يمكنك تأكيد تفاصيل الحزمة الخاصة بك على [https://npmjs.com/package/yourpackagename](https://npmjs.com/package/yourpackagename) .
### معلومات اكثر:
إنشاء وحدات Node.js [npm](https://docs.npmjs.com/getting-started/creating-node-modules)