عقد من التأثير: كيف وصلت حزم npm الخاصة بنا إلى مليار عملية تنزيل وشكلت JavaScript

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

الرواد الذين يثقون بنا: إسحاق ز. شلوتر وفوروارد إيميل

نحن فخورون بأن لدينا إسحاق ز. شلويتر (جيثب: isaacs) كمستخدم. أنشأ إسحاق فوق مستوى سطح البحر وساعد في البناء Node.jsثقته بـ Forward Email تُظهر تركيزنا على الجودة والأمان. يستخدم إسحاق Forward Email في العديد من النطاقات، بما في ذلك izs.me.

كان تأثير إسحاق على جافا سكريبت هائلاً. في عام ٢٠٠٩، كان من أوائل من أدركوا إمكانات Node.js، حيث عمل مع ريان دال، الذي أنشأ المنصة. كما قال إسحاق في مقابلة مع مجلة إنكرمنتفي خضم هذا المجتمع الصغير جدًا من الأشخاص الذين يحاولون إيجاد طريقة لتطبيق جافا سكريبت على جانب الخادم، ابتكر رايان دال Node، والذي كان النهج الصحيح بكل وضوح. شاركتُ بكل قوتي في هذا المشروع وانخرطتُ فيه بقوة في منتصف عام ٢٠٠٩ تقريبًا.

[ملاحظة!]

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

من إنشاء npm إلى قيادة Node.js

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

عندما انسحب رايان دال من Node.js في يناير 2012، تولى إسحاق قيادة المشروع. كما هو مذكور في ملخصه"قاد تطوير العديد من واجهات برمجة التطبيقات الأساسية لـ Node.js، بما في ذلك نظام وحدات CommonJS، وواجهات برمجة تطبيقات نظام الملفات، والجداول" و"عمل كـ BDFL (الدكتاتور الخيري مدى الحياة) للمشروع لمدة عامين، مما يضمن جودة متزايدة باستمرار وعملية بناء موثوقة لإصدارات Node.js من v0.6 إلى v0.10."

قاد إسحاق Node.js خلال فترة نموّ حاسمة، واضعًا معايير لا تزال تُشكّل المنصة حتى اليوم. ثمّ أسس لاحقًا شركة npm, Inc. عام ٢٠١٤ لدعم سجلّ npm، الذي كان يديره بنفسه سابقًا.

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

المهندس وراء الكود: رحلة نيك باوغ

يكمن سر نجاحنا في مجال المصادر المفتوحة في نيك باو، مؤسس ومالك شركة فوروارد إيميل. يمتد عمله في جافا سكريبت لما يقرب من 20 عامًا، وقد ساهم في صياغة أسلوب عدد لا يُحصى من المطورين في بناء التطبيقات. تُظهر مسيرته في مجال المصادر المفتوحة مهارة تقنية وريادة مجتمعية.

اللجنة الفنية السريعة والمساهمات الأساسية

لقد أكسبته خبرة نيك في إطار عمل الويب مكانًا في اللجنة الفنية السريعةحيث ساعد في تطوير أحد أكثر أطر عمل Node.js استخدامًا. نيك الآن عضو غير نشط في صفحة مجتمع اكسبريس.

[هام!] أُنشئ Express في الأصل بواسطة تي جيه هولوايشوك، وهو مساهم غزير الإنتاج في مجال المصادر المفتوحة، ساهم بشكل كبير في تطوير بيئة Node.js. نحن ممتنون لعمل تي جيه التأسيسي ونحترمه. قرار أخذ استراحة من مساهماته الواسعة في مجال المصادر المفتوحة.

كعضو في اللجنة الفنية السريعةأظهر نيك اهتمامًا كبيرًا بالتفاصيل في قضايا مثل التوضيح req.originalUrl توثيق وإصلاح مشاكل التعامل مع النماذج متعددة الأجزاء.

مساهمات إطار عمل كوا

عمل نيك مع إطار كوا—بديل حديث وأخف وزنًا لبرنامج Express، من ابتكار تي جيه هولوايشوك أيضًا— يُظهر التزامه بتطوير أدوات تطوير ويب أفضل. تشمل مساهماته في Koa كلاً من المشكلات البرمجية من خلال طلبات السحب، ومعالجة الأخطاء، وإدارة أنواع المحتوى، وتحسين التوثيق.

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

من مساهم فردي إلى قائد منظمة

ما بدأ بمساعدة مشاريع قائمة تطور إلى إنشاء وصيانة أنظمة بيئية متكاملة. أسس نيك العديد من منظمات GitHub، بما في ذلك الطائرة, ماسح البريد المزعج, إعادة توجيه البريد الإلكتروني, دع، و بري—كل منها يحل احتياجات محددة في مجتمع JavaScript.

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

منظمات GitHub الخاصة بنا: أنظمة بيئية للابتكار

نُنظّم عملنا في مجال البرمجيات مفتوحة المصدر حول مؤسسات GitHub المُركّزة، حيث تُلبّي كلٌّ منها احتياجات مُحدّدة في JavaScript. يُنشئ هذا الهيكل مجموعات حزم مُتماسكة تعمل بكفاءة مع الحفاظ على الطابع المعياري.

الكابينة: تسجيل منظم للتطبيقات الحديثة

ال تنظيم الكابينة هو أسلوبنا في تسجيل التطبيقات البسيطة والفعّالة. cabin حصلت الحزمة على ما يقرب من 900 نجمة على GitHub وأكثر من 100,000 عملية تنزيل أسبوعية[^1]. يوفر Cabin تسجيلًا منظمًا يعمل مع خدمات شائعة مثل Sentry وLogDNA وPapertrail.

ما يميز Cabin هو نظام واجهة برمجة التطبيقات (API) والمكونات الإضافية المدروس. يدعم حزمًا مثل axe لبرامج الوسيطة Express و parse-request لتحليل طلبات HTTP، نظهر التزامنا بالحلول الكاملة بدلاً من الأدوات المعزولة.

ال bson-objectid تستحق الحزمة ذكرًا خاصًا، حيث تجاوز عدد عمليات التنزيل 1.7 مليون عملية في شهرين فقط[^2]. أصبح هذا التطبيق البسيط لمعرف كائن MongoDB الخيار الأمثل للمطورين الذين يحتاجون إلى معرفات دون الاعتماد الكامل على MongoDB.

ماسح البريد العشوائي: مكافحة إساءة استخدام البريد الإلكتروني

ال منظمة ماسح البريد العشوائي يُظهر التزامنا بحل المشكلات الحقيقية. spamscanner توفر الحزمة اكتشافًا متقدمًا للرسائل الإلكترونية غير المرغوب فيها، ولكنها url-regex-safe الحزمة التي شهدت اعتماداً مذهلاً.

مع أكثر من 1.2 مليون عملية تنزيل في شهرين[^3]، url-regex-safe يُصلح مشاكل أمنية حرجة في تعبيرات عادية أخرى لاكتشاف عناوين URL. تُظهر هذه الحزمة نهجنا في مجال المصادر المفتوحة: إيجاد مشكلة شائعة (في هذه الحالة، إعادة الحذف (الثغرات في التحقق من صحة عنوان URL)، وإنشاء حل قوي، وصيانته بعناية.

بري: جدولة الوظائف الحديثة باستخدام خيوط العمال

ال منظمة بري هو جوابنا لتحدي Node.js الشائع: جدولة مهام موثوقة. bree توفر الحزمة، التي تحتوي على أكثر من 3100 نجمة على GitHub، جدولة عمل حديثة باستخدام خيوط عاملة في Node.js لتحسين الأداء والموثوقية.

[ملاحظة!] تم إنشاء بري بعد أن ساعدنا في صيانتها جدول الأعمالتطبيق الدروس المستفادة لبناء نظام أفضل لجدولة المهام. ساعدتنا مساهماتنا في "أجندة" على إيجاد طرق لتحسين جدولة المهام.

ما الذي يجعل Bree مختلفًا عن المجدولين الآخرين مثل Agenda:

  • لا يوجد اعتماد خارجي:على عكس Agenda الذي يحتاج إلى MongoDB، لا يحتاج Bree إلى Redis أو MongoDB لإدارة حالة الوظيفة.
  • خيوط العامل:يستخدم Bree خيوط عاملة Node.js للعمليات المعزولة، مما يوفر عزلًا وأداءً أفضل.
  • واجهة برمجة التطبيقات البسيطة:يوفر Bree تحكمًا تفصيليًا بكل بساطة، مما يجعل من السهل تنفيذ احتياجات الجدولة المعقدة.
  • الدعم المدمج:يتم تضمين أشياء مثل إعادة التحميل السلس، ومهام cron، والتاريخ، والأوقات المناسبة للإنسان بشكل افتراضي.

بري هو جزء رئيسي من forwardemail.net، للتعامل مع مهام خلفية مهمة مثل معالجة البريد الإلكتروني، والتنظيف، والصيانة المجدولة. يُظهر استخدام Bree في Forward Email التزامنا باستخدام أدواتنا الخاصة في الإنتاج، مما يضمن استيفائها لمعايير الموثوقية العالية.

نحن أيضًا نستخدم ونقدر حزم خيوط العمال الرائعة الأخرى مثل حمام سباحة وعملاء HTTP مثل أحد عشر. Piscina، مثل Bree، يستخدم خيوط Node.js لمعالجة المهام بكفاءة. نشكر ماثيو هيل، الذي يُدير كلاً من undici و piscina، لمساهماته الكبيرة في Node.js. ماتيو عضو في اللجنة التوجيهية الفنية لـ Node.js، وقد حسّن بشكل كبير قدرات عميل HTTP في Node.js.

إعادة توجيه البريد الإلكتروني: البنية التحتية للبريد الإلكتروني مفتوحة المصدر

مشروعنا الأكثر طموحا هو إعادة توجيه البريد الإلكتروني، خدمة بريد إلكتروني مفتوحة المصدر توفر إعادة توجيه البريد الإلكتروني، والتخزين، وخدمات واجهة برمجة التطبيقات. يحتوي المستودع الرئيسي على أكثر من 1100 نجمة على GitHub[^4]، مما يُظهر تقدير المجتمع لهذا البديل لخدمات البريد الإلكتروني الاحتكارية.

ال preview-email أصبحت حزمة هذه المؤسسة، التي تجاوز عدد تنزيلاتها 2.5 مليون مرة خلال شهرين[^5]، أداةً أساسيةً للمطورين الذين يعملون على قوالب البريد الإلكتروني. فمن خلال توفير طريقة بسيطة لمعاينة رسائل البريد الإلكتروني أثناء التطوير، تُحلّ هذه الحزمة مشكلةً شائعةً في بناء التطبيقات التي تدعم البريد الإلكتروني.

لاد: أدوات وأدوات كوا الأساسية

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

koa-better-error-handler: تحسين معالجة الأخطاء لـ Koa

koa-better-error-handler يقدم هذا البرنامج حلاً أفضل لمعالجة الأخطاء في تطبيقات Koa. مع أكثر من 50 تقييمًا على GitHub، يجعل هذا البرنامج ctx.throw إنشاء رسائل خطأ سهلة الاستخدام مع معالجة العديد من القيود الموجودة في معالج الأخطاء المدمج في Koa:

  • يكتشف أخطاء DNS في Node.js وأخطاء Mongoose وأخطاء Redis ويقوم بمعالجتها بشكل صحيح
  • الاستخدامات طفرة لإنشاء استجابات أخطاء متسقة ومنسقة جيدًا
  • يحافظ على الرؤوس (على عكس المعالج المدمج في Koa)
  • يحافظ على رموز الحالة المناسبة بدلاً من التعيين الافتراضي إلى 500
  • يدعم رسائل الفلاش والحفاظ على الجلسة
  • يوفر قوائم أخطاء HTML لأخطاء التحقق
  • يدعم أنواع متعددة من الاستجابات (HTML وJSON والنص العادي)

هذه الحزمة ذات قيمة خاصة عند استخدامها جنبًا إلى جنب koa-404-handler لإدارة الأخطاء الشاملة في تطبيقات Koa.

جواز السفر: المصادقة على Lad

@ladjs/passport يُوسِّع نطاق برنامج المصادقة الوسيط Passport.js الشهير مع تحسينات خاصة لتطبيقات الويب الحديثة. تدعم هذه الحزمة استراتيجيات مصادقة متعددة جاهزة للاستخدام:

  • المصادقة المحلية باستخدام البريد الإلكتروني
  • تسجيل الدخول مع أبل
  • مصادقة GitHub
  • مصادقة جوجل
  • مصادقة كلمة المرور لمرة واحدة (OTP)

الحزمة قابلة للتخصيص بدرجة عالية، مما يسمح للمطورين بتعديل أسماء الحقول والعبارات لتتناسب مع متطلبات تطبيقاتهم. صُممت لتتكامل بسلاسة مع Mongoose لإدارة المستخدمين، مما يجعلها حلاً مثاليًا للتطبيقات القائمة على Koa والتي تتطلب مصادقة قوية.

رشيقة: إيقاف تشغيل التطبيق الأنيق

@ladjs/graceful تُحلّ هذه الحزمة التحدي الحاسم المتمثل في إيقاف تشغيل تطبيقات Node.js بسلاسة. مع أكثر من 70 تقييمًا على GitHub، تضمن هذه الحزمة إمكانية إغلاق تطبيقك بسلاسة دون فقدان البيانات أو تعليق الاتصالات. من بين الميزات الرئيسية:

  • دعم لإغلاق خوادم HTTP بسلاسة (Express/Koa/Fastify)
  • إيقاف تشغيل اتصالات قاعدة البيانات بشكل نظيف (MongoDB/Mongoose)
  • الإغلاق السليم لعملاء Redis
  • التعامل مع جداول عمل Bree
  • دعم معالجات إيقاف التشغيل المخصصة
  • إعدادات مهلة قابلة للتكوين
  • التكامل مع أنظمة التسجيل

هذه الحزمة ضرورية لتطبيقات الإنتاج حيث قد يؤدي إيقاف التشغيل المفاجئ إلى فقدان البيانات أو تلفها. بتطبيق إجراءات إيقاف تشغيل سليمة، @ladjs/graceful يساعد على ضمان موثوقية واستقرار تطبيقك.

Upptime: برنامج مفتوح المصدر لمراقبة وقت التشغيل

ال منظمة Upptime يمثل التزامنا بالمراقبة الشفافة والمفتوحة المصدر. upptime يحتوي مستودعنا على أكثر من 13,000 نجمة على GitHub، مما يجعله أحد أشهر المشاريع التي نساهم فيها. يوفر Upptime أداةً لمراقبة وقت التشغيل وصفحةً للحالة، تعمل بالكامل دون الحاجة إلى خادم.

نحن نستخدم Upptime لصفحة الحالة الخاصة بنا في https://status.forwardemail.net مع الكود المصدر المتوفر في https://github.com/forwardemail/status.forwardemail.net.

ما يجعل Upptime مميزًا هو هندسته المعمارية:

  • مفتوح المصدر بنسبة 100%:كل مكون مفتوح المصدر بالكامل وقابل للتخصيص.
  • مدعوم من GitHub:يستفيد من إجراءات GitHub والمشكلات والصفحات للحصول على حل مراقبة بدون خادم.
  • لا يتطلب خادمًا:على عكس أدوات المراقبة التقليدية، لا يتطلب Upptime منك تشغيل أو صيانة خادم.
  • صفحة الحالة التلقائية:يولد صفحة حالة جميلة يمكن استضافتها على صفحات GitHub.
  • إشعارات قوية:يتكامل مع قنوات الإشعارات المختلفة بما في ذلك البريد الإلكتروني والرسائل القصيرة وSlack.

لتعزيز تجربة المستخدمين لدينا، قمنا بدمج @octokit/core في قاعدة بيانات forwardemail.net لعرض تحديثات الحالة والحوادث في الوقت الفعلي مباشرةً على موقعنا الإلكتروني. يوفر هذا التكامل شفافية تامة لمستخدمينا في حال وجود أي مشاكل في جميع جوانب نظامنا (الموقع الإلكتروني، واجهة برمجة التطبيقات، MongoDB، Redis، SQLite، SMTP، POP3، IMAP، Bree، إلخ) مع إشعارات فورية، وتغييرات في أيقونات الشارات، وألوان تحذيرية، وغيرها.

تتيح لنا مكتبة @octokit/core جلب البيانات آنيًا من مستودع Upptime GitHub الخاص بنا، ومعالجتها، وعرضها بطريقة سهلة الاستخدام. عند انقطاع أي خدمة أو انخفاض في أدائها، يتم إشعار المستخدمين فورًا من خلال مؤشرات مرئية دون الحاجة لمغادرة التطبيق الرئيسي. يضمن هذا التكامل السلس حصول مستخدمينا دائمًا على معلومات محدثة حول حالة نظامنا، مما يعزز الشفافية والثقة.

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

مساهماتنا في نظام البريد الإلكتروني المباشر

بينما يستخدم المطورون حول العالم حزمنا مفتوحة المصدر، فإنها تُشكل أيضًا أساس خدمة إعادة توجيه البريد الإلكتروني الخاصة بنا. هذا الدور المزدوج - بصفتنا مُنشئين ومستخدمين لهذه الأدوات - يمنحنا منظورًا فريدًا لتطبيقاتها العملية، ويدفعنا نحو التحسين المستمر.

من الحزم إلى الإنتاج

تتضمن عملية الانتقال من الحزم الفردية إلى نظام إنتاج متماسك تكاملاً وتوسعاً دقيقين. بالنسبة لـ "إعادة توجيه البريد الإلكتروني"، تتضمن هذه العملية ما يلي:

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

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

حلقة التغذية الراجعة

لعلّ الجانب الأهم لاستخدام حزمنا الخاصة في الإنتاج هو حلقة التغذية الراجعة التي تُنشئها. فعندما نواجه قيودًا أو حالات استثنائية في إعادة توجيه البريد الإلكتروني، لا نكتفي بإصلاحها محليًا، بل نُحسّن الحزم الأساسية، مما يُفيد خدمتنا والمجتمع ككل.

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

  • إغلاق بري الرشيق:أدت حاجة Forward Email إلى عمليات نشر خالية من التوقف إلى تعزيز قدرات الإغلاق السلس في Bree.
  • التعرف على الأنماط في ماسح البريد العشوائي:أفادت أنماط البريد العشوائي في العالم الحقيقي التي تم مواجهتها في Forward Email خوارزميات الكشف الخاصة بـ Spam Scanner.
  • تحسينات أداء المقصورة:أظهر تسجيل حجم كبير في الإنتاج فرص تحسين في Cabin تفيد جميع المستخدمين.

من خلال الحفاظ على هذه الدورة الفاضلة بين عملنا مفتوح المصدر وخدمة الإنتاج، فإننا نضمن أن تظل حزمنا حلولاً عملية تم اختبارها في المعارك بدلاً من التنفيذات النظرية.

المبادئ الأساسية لـ Forward Email: أساس التميز

صُمم البريد الإلكتروني المُوجَّه وفقًا لمجموعة من المبادئ الأساسية التي تُوجِّه جميع قرارات التطوير لدينا. هذه المبادئ، المُفصَّلة في موقع إلكتروني، نضمن أن تظل خدمتنا صديقة للمطورين وآمنة وتركز على خصوصية المستخدم.

دائمًا ما يكون صديقًا للمطورين، ويركز على الأمان، وشفافًا

مبدأنا الأول والأهم هو تطوير برامج سهلة الاستخدام للمطورين مع الحفاظ على أعلى معايير الأمان والخصوصية. نؤمن بأن التميز التقني لا ينبغي أن يكون على حساب سهولة الاستخدام، وأن الشفافية تبني الثقة مع مجتمعنا.

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

الالتزام بمبادئ تطوير البرمجيات التي تم اختبارها بمرور الوقت

نحن نتبع العديد من مبادئ تطوير البرمجيات الراسخة التي أثبتت قيمتها على مدى عقود من الزمن:

  • MVC:فصل الاهتمامات من خلال نمط Model-View-Controller
  • فلسفة يونكس:إنشاء مكونات معيارية تؤدي شيئًا واحدًا بشكل جيد
  • KISS:الحفاظ على البساطة والوضوح
  • DRY:لا تكرر نفسك، وتشجيع إعادة استخدام الكود
  • YAGNI:لن تحتاج إليه، تجنب التحسين المبكر
  • اثنا عشر عامل:اتباع أفضل الممارسات لبناء تطبيقات حديثة وقابلة للتطوير
  • الحلاقة أوكام:اختيار الحل الأبسط الذي يلبي المتطلبات
  • تجربة طعام الكلاب:استخدام منتجاتنا على نطاق واسع

هذه المبادئ ليست مجرد مفاهيم نظرية، بل هي جزء لا يتجزأ من ممارساتنا اليومية في التطوير. على سبيل المثال، يتجلى التزامنا بفلسفة يونكس في هيكلة حزم npm الخاصة بنا: وحدات صغيرة ومركّزة يمكن تجميعها معًا لحل المشكلات المعقدة.

استهداف المطورين المجتهدين الذين يعتمدون على أنفسهم

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

هذا المبدأ مهمٌّ بشكل خاص في نهجنا للمصادر المفتوحة. فنحن نُنشئ ونُحافظ على حزمٍ تُحلّ مشاكل حقيقية للمطورين دون الحاجة إلى ميزانياتٍ ضخمة، مما يجعل الأدوات الفعّالة في متناول الجميع بغض النظر عن مواردهم.

المبادئ العملية: قاعدة بيانات رسائل البريد الإلكتروني المباشرة

تظهر هذه المبادئ بوضوح في قاعدة بيانات إعادة توجيه البريد الإلكتروني. يكشف ملف package.json لدينا عن مجموعة مدروسة من التبعيات، كل منها مُختار ليتوافق مع قيمنا الأساسية:

  • الحزم التي تركز على الأمان مثل mailauth للتحقق من صحة البريد الإلكتروني
  • أدوات صديقة للمطورين مثل preview-email لتسهيل عملية التصحيح
  • المكونات المعيارية مثل مختلف p-* المرافق من Sindre Sorhus

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

الخصوصية من خلال التصميم

الخصوصية ليست مجرد فكرة ثانوية أو ميزة تسويقية لخدمة Forward Email، بل هي مبدأ تصميمي أساسي يؤثر على كل جانب من جوانب خدمتنا ورمزنا:

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

يمتد هذا الالتزام إلى حزمنا مفتوحة المصدر، والتي تم تصميمها باستخدام أفضل ممارسات الأمان والخصوصية المضمنة منذ البداية.

مصادر مفتوحة مستدامة

نؤمن بأن البرمجيات مفتوحة المصدر تحتاج إلى نماذج مستدامة لتزدهر على المدى الطويل. يشمل نهجنا ما يلي:

  • الدعم التجاري:تقديم الدعم والخدمات المتميزة حول أدواتنا مفتوحة المصدر.
  • الترخيص المتوازن:استخدام التراخيص التي تحمي حريات المستخدم واستدامة المشروع.
  • المشاركة المجتمعية:التفاعل بشكل فعال مع المساهمين لبناء مجتمع داعم.
  • خرائط طرق شفافة:مشاركة خطط التطوير الخاصة بنا للسماح للمستخدمين بالتخطيط وفقًا لذلك.

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

الأرقام لا تكذب: إحصائيات التنزيل المذهلة لبرنامج npm

عندما نتحدث عن تأثير برمجيات المصدر المفتوح، تُقدم إحصائيات التنزيل مقياسًا ملموسًا لمدى اعتمادها والثقة بها. وقد وصلت العديد من الحزم التي نساعد في صيانتها إلى مستوى لم تحققه إلا قلة من مشاريع المصدر المفتوح، حيث بلغ إجمالي عدد التنزيلات مليارات.

Top npm Packages by Downloads

[هام!] مع فخرنا بالمساهمة في صيانة العديد من الحزم عالية التنزيل في بيئة جافا سكريبت، نود أن ننوه بأن العديد من هذه الحزم أُنشئت في الأصل من قِبل مطورين موهوبين آخرين. تم إنشاء حزم مثل superagent و supertest في الأصل من قِبل TJ Holowaychuk، الذي كانت مساهماته الوفيرة في مجال المصادر المفتوحة فعّالة في تشكيل بيئة Node.js.

نظرة عامة على تأثيرنا

خلال فترة الشهرين فقط من فبراير إلى مارس 2025، كانت أفضل الباقات التي نساهم فيها ونساعد في الحفاظ على أرقام التنزيل المذهلة المسجلة:

[!ملاحظة] تتمتع العديد من الحزم الأخرى التي نساهم في صيانتها ولكننا لم ننشئها بعدد تنزيلات أعلى، بما في ذلك form-data (أكثر من 738 مليون عملية تنزيل)، toidentifier (309 مليون عملية تنزيل) stackframe (أكثر من 116 مليون عملية تنزيل)، و error-stack-parser (أكثر من ١١٣ مليون عملية تنزيل). يشرفنا المساهمة في هذه الحزم مع احترام عمل مؤلفيها الأصليين.

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

Package Categories Distribution

التأثير اليومي على نطاق واسع

تُظهر أنماط التنزيل اليومية استخدامًا ثابتًا وعالي الحجم، حيث تصل ذروة التنزيلات إلى ملايين التنزيلات يوميًا[^13]. يعكس هذا الثبات استقرار هذه الحزم وموثوقيتها، إذ لا يكتفي المطورون بتجربتها فحسب، بل يدمجونها في سير عملهم الأساسي ويعتمدون عليها يومًا بعد يوم.

تُظهر أنماط التنزيل الأسبوعية أرقامًا أكثر إثارة للإعجاب، حيث تتراوح باستمرار حول عشرات الملايين من التنزيلات أسبوعيًا[^14]. وهذا يُمثل بصمةً هائلةً في نظام JavaScript البيئي، حيث تعمل هذه الحزم في بيئات إنتاجية حول العالم.

ما وراء الأرقام الخام

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

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

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

دعم النظام البيئي: رعاياتنا مفتوحة المصدر

[!TIP] لا تقتصر استدامة البرمجيات مفتوحة المصدر على المساهمة في تطوير الأكواد البرمجية فحسب، بل تشمل أيضًا دعم المطورين الذين يصونون البنية التحتية الأساسية.

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

أندريس راينمان: رائد البنية التحتية للبريد الإلكتروني

أندريس راينمان هو خالق نوداميلر، أشهر مكتبة لإرسال البريد الإلكتروني لـ Node.js، بأكثر من 14 مليون عملية تنزيل أسبوعيًا[^15]. يمتد عمله ليشمل مكونات أساسية أخرى للبنية التحتية للبريد الإلكتروني مثل خادم SMTP, محلل البريد، و البطة البرية.

تساعد رعايتنا في ضمان الصيانة المستمرة وتطوير هذه الأدوات الأساسية التي تدعم اتصالات البريد الإلكتروني لعدد لا يحصى من تطبيقات Node.js، بما في ذلك خدمة Forward Email الخاصة بنا.

سيندر سورهوس: العقل المدبر لحزمة المرافق

سيندر سورهوس يُعدّ من أبرز المساهمين في تطوير البرمجيات مفتوحة المصدر في بيئة جافا سكريبت، حيث يمتلك أكثر من 1000 حزمة npm. أدواته مثل خريطة p, إعادة المحاولة، و هو-دفق هي اللبنات الأساسية المستخدمة في نظام Node.js البيئي.

من خلال رعاية عمل Sindre، فإننا نساعد في دعم تطوير هذه الأدوات المهمة التي تجعل تطوير JavaScript أكثر كفاءة وموثوقية.

تعكس هذه الرعايات التزامنا بمنظومة البرمجيات مفتوحة المصدر الأوسع. ندرك أن نجاحنا مبني على الأسس التي أرساها هؤلاء المساهمون وغيرهم، ونلتزم بضمان استدامة هذه المنظومة بأكملها.

كشف الثغرات الأمنية في نظام JavaScript البيئي

يتجاوز التزامنا بالمصادر المفتوحة تطوير الميزات، ليشمل تحديد ومعالجة الثغرات الأمنية التي قد تؤثر على ملايين المطورين. وقد قدّمنا العديد من أهم مساهماتنا في بيئة جافا سكريبت في مجال الأمن.

إنقاذ جهاز Koa-Router

في فبراير 2019، اكتشف نيك مشكلة حرجة في صيانة حزمة جهاز التوجيه koa الشهيرة. وبينما كان تم الإبلاغ عنه على موقع Hacker Newsتم التخلي عن الحزمة من قبل صيانتها الأصلية، مما ترك الثغرات الأمنية دون معالجة والمجتمع دون تحديثات.

[!تحذير] تُشكل الحزم المهملة التي تحتوي على ثغرات أمنية مخاطر كبيرة على النظام البيئي بأكمله، خاصةً عندما يتم تنزيلها ملايين المرات أسبوعيًا.

ردا على ذلك، أنشأ نيك @koa/router وساهم في تنبيه المجتمع بشأن الوضع. ويحافظ على هذه الحزمة المهمة منذ ذلك الحين، ضامنًا حصول مستخدمي Koa على حل توجيه آمن وفعال.

معالجة ثغرات ReDoS

في عام 2020، حدد نيك وعالج مشكلة حرجة رفض الخدمة باستخدام التعبيرات العادية (ReDoS) الضعف في الاستخدام الواسع النطاق url-regex الحزمة. هذه الثغرة الأمنية (SNYK-JS-URLREGEX-569472) يمكن أن يسمح للمهاجمين بالتسبب في رفض الخدمة من خلال توفير مدخلات مصممة خصيصًا والتي تسببت في التراجع الكارثي في التعبير العادي.

بدلاً من مجرد تصحيح الحزمة الموجودة، قام نيك بإنشاء url-regex-safe، وهو تطبيق مُعاد كتابته بالكامل لمعالجة الثغرة مع الحفاظ على التوافق مع واجهة برمجة التطبيقات الأصلية. كما نشر تدوينة شاملة شرح نقاط الضعف وكيفية التخفيف منها.

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

الدفاع عن أمن Node.js وChromium

كان نيك أيضًا ناشطًا في الدعوة إلى تحسينات أمنية في النظام البيئي الأوسع. في أغسطس 2020، حدد مشكلة أمنية كبيرة في Node.js تتعلق بمعالجتها لرؤوس HTTP، والتي تم الإبلاغ عنها في السجل.

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

تأمين البنية التحتية لـ npm

في وقت لاحق من الشهر نفسه، حدد نيك مشكلة أمنية حرجة أخرى، وهذه المرة في البنية التحتية للبريد الإلكتروني لـ npm. كما ورد في السجللم يكن npm ينفذ بروتوكولات مصادقة البريد الإلكتروني DMARC وSPF وDKIM بشكل صحيح، مما يسمح للمهاجمين بإرسال رسائل بريد إلكتروني احتيالية تبدو وكأنها قادمة من npm.

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

مساهماتنا في نظام البريد الإلكتروني المباشر

تم بناء Forward Email بناءً على العديد من مشاريع المصدر المفتوح المهمة، بما في ذلك Nodemailer وWildDuck وmailauth. وقد ساهم فريقنا بشكل كبير في هذه المشاريع، حيث ساعد في تحديد وإصلاح المشكلات العميقة التي تؤثر على تسليم البريد الإلكتروني وأمانه.

تحسين وظائف Nodemailer الأساسية

نوداميلر يعد هذا هو العمود الفقري لإرسال البريد الإلكتروني في Node.js، وقد ساعدت مساهماتنا في جعله أكثر قوة:

  • تحسينات خادم SMTP:لقد قمنا بإصلاح أخطاء التحليل، ومشكلات التعامل مع التدفق، ومشكلات تكوين TLS في مكون خادم SMTP[^16][^17].
  • تحسينات محلل البريد:لقد قمنا بمعالجة أخطاء فك تشفير تسلسل الأحرف ومعالجة مشكلات المحلل التي قد تتسبب في فشل معالجة البريد الإلكتروني[^18][^19].

تضمن هذه المساهمات أن يظل Nodemailer بمثابة أساس موثوق لمعالجة البريد الإلكتروني في تطبيقات Node.js، بما في ذلك إعادة توجيه البريد الإلكتروني.

تعزيز مصادقة البريد الإلكتروني باستخدام Mailauth

مايلاوث يوفر وظيفة مصادقة البريد الإلكتروني المهمة، وقد ساهمت مساهماتنا في تحسين قدراته بشكل كبير:

  • تحسينات التحقق من DKIM:لقد اكتشفنا وأبلغنا أن X/Twitter كان لديه مشكلات في ذاكرة التخزين المؤقت DNS مما تسبب في فشل DKIM في رسائلهم الصادرة، وتم الإبلاغ عن ذلك على Hacker One[^20].
  • تحسينات DMARC وARC:لقد قمنا بإصلاح المشكلات المتعلقة بالتحقق من DMARC وARC والتي قد تؤدي إلى نتائج مصادقة غير صحيحة[^21][^22].
  • تحسينات الأداء:لقد ساهمنا في إجراء تحسينات تعمل على تحسين أداء عمليات مصادقة البريد الإلكتروني[^23][^24][^25][^26].

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

تحسينات وقت التشغيل الرئيسية

تشمل مساهماتنا في Upptime ما يلي:

  • مراقبة شهادة SSL:لقد أضفنا وظيفة لمراقبة انتهاء صلاحية شهادة SSL، مما يمنع التوقف غير المتوقع بسبب انتهاء صلاحية الشهادات[^27].
  • دعم أرقام الرسائل النصية القصيرة المتعددة:لقد قمنا بتنفيذ الدعم لتنبيه العديد من أعضاء الفريق عبر الرسائل النصية القصيرة عند وقوع الحوادث، مما أدى إلى تحسين أوقات الاستجابة[^28].
  • إصلاحات فحص IPv6:لقد قمنا بإصلاح المشكلات المتعلقة بفحوصات اتصال IPv6، مما يضمن مراقبة أكثر دقة في بيئات الشبكات الحديثة[^29].
  • دعم الوضع الداكن/الفاتح:لقد أضفنا دعمًا للموضوع لتحسين تجربة المستخدم لصفحات الحالة[^31].
  • دعم أفضل لـ TCP-Ping:لقد قمنا بتعزيز وظيفة TCP ping لتوفير اختبار اتصال أكثر موثوقية[^32].

لا تفيد هذه التحسينات مراقبة حالة Forward Email فحسب، بل إنها متاحة أيضًا لمجتمع مستخدمي Upptime بأكمله، مما يوضح التزامنا بتحسين الأدوات التي نعتمد عليها.

الغراء الذي يربط كل شيء معًا: الكود المخصص على نطاق واسع

على الرغم من أهمية حزم npm ومساهماتنا في المشاريع الحالية، إلا أن الكود المخصص الذي يدمج هذه المكونات هو ما يُبرز خبرتنا التقنية بحق. تُمثل قاعدة بيانات كود Forward Email عقدًا من جهود التطوير، يعود تاريخها إلى عام ٢٠١٧ عندما بدأ المشروع كـ إعادة توجيه البريد الإلكتروني مجانًا قبل دمجها في مستودع واحد.

جهود تنموية ضخمة

إن حجم رمز التكامل المخصص هذا مثير للإعجاب:

  • إجمالي المساهمات:أكثر من 3217 التزامًا
  • حجم قاعدة التعليمات البرمجية:أكثر من 421,545 سطرًا من التعليمات البرمجية عبر ملفات JavaScript وPug وCSS وJSON[^33]

هذا يُمثل آلاف الساعات من أعمال التطوير، وجلسات تصحيح الأخطاء، وتحسين الأداء. إنه "السر" الذي يُحوّل الحزم الفردية إلى خدمة متكاملة وموثوقة يستخدمها آلاف العملاء يوميًا.

تكامل التبعيات الأساسية

تدمج قاعدة بيانات البريد الإلكتروني الأمامي العديد من التبعيات في كل متكامل:

  • معالجة البريد الإلكتروني:يدمج Nodemailer للإرسال، وSMTP Server للاستلام، وMailparser للتحليل
  • المصادقة:يستخدم Mailauth للتحقق من DKIM وSPF وDMARC وARC
  • حل DNS:يستخدم Tangerine لخدمة DNS-over-HTTPS مع التخزين المؤقت العالمي
  • اتصال MX:يستخدم mx-connect مع تكامل Tangerine للحصول على اتصالات خادم بريد موثوقة
  • جدولة الوظائف:تستخدم Bree لمعالجة المهام الخلفية بشكل موثوق باستخدام خيوط العمال
  • القوالب:يستخدم قوالب البريد الإلكتروني لإعادة استخدام أوراق الأنماط من موقع الويب في اتصالات العملاء
  • تخزين البريد الإلكتروني:تنفيذ صناديق بريد SQLite مشفرة بشكل فردي باستخدام better-sqlite3-multiple-ciphers مع تشفير ChaCha20-Poly1305 لتحقيق الخصوصية الآمنة الكمومية، مما يضمن عزلًا كاملاً بين المستخدمين وأن المستخدم فقط لديه حق الوصول إلى صندوق البريد الخاص به

يتطلب كلٌّ من هذه التكاملات دراسةً متأنيةً للحالات الطارئة، وتأثيرات الأداء، والمخاوف الأمنية. والنتيجة نظامٌ متينٌ يتعامل مع ملايين معاملات البريد الإلكتروني بكفاءة. كما يستفيد تطبيق SQLite الخاص بنا من msgpackr لتسلسل ثنائي فعّال، وWebSockets (عبر WS) لتحديثات الحالة في الوقت الفعلي عبر بنيتنا التحتية.

البنية التحتية لنظام أسماء النطاقات (DNS) مع Tangerine وmx-connect

أحد المكونات الأساسية للبنية التحتية لشركة Forward Email هو نظام حل DNS الخاص بنا، والذي تم بناؤه حول حزمتين رئيسيتين:

  • يوسفي:يوفر تنفيذ Node.js DNS-over-HTTPS الخاص بنا بديلاً مباشرًا لمحلل DNS القياسي، مع عمليات إعادة المحاولة المضمنة، ومواعيد انتهاء الصلاحية، وتدوير الخادم الذكي، ودعم التخزين المؤقت.

  • الاتصال عبر mx:تعمل هذه الحزمة على إنشاء اتصالات TCP بخوادم MX، مع أخذ نطاق مستهدف أو عنوان بريد إلكتروني، وحل خوادم MX المناسبة، والاتصال بها حسب ترتيب الأولوية.

لقد قمنا بدمج Tangerine مع mx-connect من خلال طلب سحب رقم 4يضمن هذا خدمة DNS على مستوى التطبيقات عبر طلبات HTTP في جميع أنحاء خدمة إعادة توجيه البريد الإلكتروني. يوفر هذا تخزينًا مؤقتًا عالميًا لخدمة DNS على نطاق واسع مع اتساق 1:1 عبر أي منطقة أو تطبيق أو عملية، وهو أمر بالغ الأهمية لضمان موثوقية تسليم البريد الإلكتروني في نظام موزع.

تأثير المؤسسة: من المصدر المفتوح إلى الحلول المهمة

إن تتويج رحلتنا التي استمرت لعقد من الزمان في تطوير المصادر المفتوحة مكّن Forward Email من خدمة ليس فقط المطورين الأفراد ولكن أيضًا الشركات الكبرى والمؤسسات التعليمية التي تشكل العمود الفقري لحركة المصادر المفتوحة نفسها.

دراسات حالة في البنية التحتية للبريد الإلكتروني المهمة

إن التزامنا بالموثوقية والخصوصية ومبادئ المصدر المفتوح جعل Forward Email الخيار الموثوق به للمؤسسات التي لديها متطلبات بريد إلكتروني صارمة:

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

عقد من المصادر المفتوحة: التطلع إلى المستقبل

عندما ننظر إلى الوراء على مدى عقد من المساهمات في مجال المصدر المفتوح ونتطلع إلى السنوات العشر القادمة، نشعر بالامتنان للمجتمع الذي دعم عملنا والحماس لما هو آت.

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

وفي السنوات القادمة، نحن ملتزمون بما يلي:

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

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

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

[^1]: إحصائيات تنزيل npm لـ cabin، أبريل 2025 [^2]: إحصائيات تنزيل npm لـ bson-objectid، فبراير-مارس 2025 [^3]: إحصائيات تنزيل npm لـ url-regex-safe، أبريل 2025 [^4]: عدد نجوم GitHub لـ forwardemail/forwardemail.net اعتبارًا من أبريل 2025 [^5]: إحصائيات تنزيل npm لـ preview-email، أبريل 2025 [^7]: إحصائيات تنزيل npm لـ superagent، فبراير-مارس 2025 [^8]: إحصائيات تنزيل npm لـ supertest، فبراير-مارس 2025 [^9]: إحصائيات تنزيل npm لـ preview-email، فبراير-مارس 2025 [^10]: إحصائيات تنزيل npm لـ cabin، فبراير-مارس 2025 [^11]: إحصائيات تنزيل npm لـ url-regex-safe فبراير-مارس ٢٠٢٥ [^١٢]: إحصائيات تنزيلات npm لـ spamscanner، فبراير-مارس ٢٠٢٥ [^١٣]: أنماط التنزيل اليومية من إحصائيات npm، أبريل ٢٠٢٥ [^١٤]: أنماط التنزيل الأسبوعية من إحصائيات npm، أبريل ٢٠٢٥ [^١٥]: إحصائيات تنزيلات npm لـ nodemailer، أبريل ٢٠٢٥ [^١٦]: https://github.com/nodemailer/smtp-server/issues/155 [^17]: https://github.com/nodemailer/smtp-server/issues/node-v12-requires-tls-min [^18]: https://github.com/nodemailer/mailparser/issues/261 [^19]: https://github.com/nodemailer/nodemailer/issues/1102 [^20]: https://github.com/postalsys/mailauth/issues/30 [^21]: https://github.com/postalsys/mailauth/issues/58 [^22]: https://github.com/postalsys/mailauth/issues/48 [^23]: https://github.com/postalsys/mailauth/issues/74 [^24]: https://github.com/postalsys/mailauth/issues/75 [^25]: https://github.com/postalsys/mailauth/issues/60 [^26]: https://github.com/postalsys/mailauth/issues/73 [^27]: بناءً على مشاكل GitHub في مستودع Upptime [^28]: بناءً على مشاكل GitHub في مستودع Upptime [^29]: بناءً على مشاكل GitHub في مستودع Upptime [^30]: إحصائيات تنزيل npm لـ bree، فبراير-مارس 2025 [^31]: بناءً على طلبات سحب GitHub إلى Upptime [^32]: بناءً على طلبات سحب GitHub إلى Upptime [^34]: إحصائيات تنزيل npm لـ koa، فبراير-مارس 2025 [^35]: إحصائيات تنزيل npm لـ @koa/router، فبراير-مارس 2025 [^36]: إحصائيات تنزيل npm لـ koa-router، فبراير-مارس 2025 [^37]: إحصائيات تنزيل npm لـ url-regex، فبراير-مارس ٢٠٢٥ [^٣٨]: إحصائيات تنزيلات npm لـ @breejs/later، فبراير-مارس ٢٠٢٥ [^٣٩]: إحصائيات تنزيلات npm لقوالب البريد الإلكتروني، فبراير-مارس ٢٠٢٥ [^٤٠]: إحصائيات تنزيلات npm لـ get-paths، فبراير-مارس ٢٠٢٥ [^٤١]: إحصائيات تنزيلات npm لـ dotenv-parse-variables، فبراير-مارس ٢٠٢٥ [^٤٢]: إحصائيات تنزيلات npm لـ @koa/multer، فبراير-مارس ٢٠٢٥