"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > إنشاء تطبيق مراسلة PM في الوقت الفعلي باستخدام MERN Stack وFirebase

إنشاء تطبيق مراسلة PM في الوقت الفعلي باستخدام MERN Stack وFirebase

تم النشر بتاريخ 2024-08-20
تصفح:578

Building a Real-Time PMessaging App with MERN Stack and Firebase

مرحبًا بالجميع! ?

أنا متحمس لمشاركة المشروع الذي كنت أعمل عليه، والذي أعتقد أن الكثير منكم سيجده مفيدًا. إذا كنت ترغب في إنشاء تطبيق مراسلة نظير إلى نظير (P2P) في الوقت الفعلي باستخدام مكدس MERN (MongoDB وExpress وReact وNode.js) وFirebase، فهذا الدليل الشامل مناسب لك!

؟ ماذا يوجد داخل الدليل؟

في هذا الدليل، سأرشدك خلال العملية الكاملة لإنشاء تطبيق مراسلة كامل الوظائف. سواء كنت مبتدئًا يتطلع إلى تعميق معرفتك الكاملة بالمكدس أو مطورًا ذا خبرة ومهتمًا بدمج Firebase مع مكدس MERN، فإن هذا الدليل يغطي جميع الأساسيات:

الميزات الرئيسية:

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

التقنيات المستخدمة:

  • MongoDB: لتخزين بيانات المستخدم بشكل آمن.
  • Express.js: كإطار عمل خلفي لدينا لإنشاء واجهات برمجة التطبيقات وإدارة الخادم.
  • React.js: لبناء واجهة مستخدم أمامية سريعة الاستجابة وديناميكية.
  • Node.js: بيئة التشغيل لخادمنا.
  • Firebase: الاستفادة من مصادقة Firebase لإدارة المستخدم وFirestore للبيانات في الوقت الفعلي.

مكتبات إضافية:

  • date-fns: لسهولة معالجة التاريخ.
  • react-firebase-hooks: لتبسيط تكامل Firebase في React.
  • react-router-dom: للتعامل مع التوجيه من جانب العميل.
  • jwt-decode: للعمل مع JSON Web Tokens.
  • axios: لتقديم طلبات HTTP.

؟ العرض المباشر

هل تريد رؤية التطبيق أثناء العمل؟ شاهد العرض التجريبي المباشر هنا: العرض التجريبي لتطبيق الرسائل

️ أقسام الدليل التفصيلية:

1. إعداد الخلفية:

  • تكوين الخادم: إعداد Node.js و Express.
  • اتصال MongoDB : كيفية الاتصال والتفاعل مع MongoDB Atlas.
  • مصادقة المستخدم: إنشاء نماذج المستخدم ودمج Firebase Admin SDK.
  • واجهات برمجة التطبيقات لإدارة المستخدم: إنشاء طرق آمنة لتسجيل المستخدم وتسجيل الدخول.

2. تطوير الواجهة الأمامية:

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

3. التصميم:

  • التصميم سريع الاستجابة: إنشاء واجهة مستخدم سهلة الاستخدام وجذابة بصريًا باستخدام CSS.

4. النشر:

  • تكوين البيئة: إعداد متغيرات البيئة للنشر الآمن والسلس.
  • تشغيل الخوادم: تعليمات لبدء كل من خوادم الواجهة الخلفية والواجهة الأمامية محليًا.

؟ ابدء

هل تريد أن تتسخ يديك؟ إليك كيفية إعداد المشروع على جهازك:

  1. استنساخ المستودع.
  2. إعداد MongoDB وFirebase: اتبع الإرشادات المتوفرة في دليل المستندات.
  3. تثبيت التبعيات: تشغيل تثبيت npm لكل من الواجهة الخلفية والواجهة الأمامية.
  4. تكوين متغيرات البيئة: قم بإعداد ملفات .env لأسرارك.
  5. تشغيل خوادم الواجهة الخلفية والأمامية: تعليمات بدء تشغيل الخوادم وعرض التطبيق محليًا.

يمكن العثور على التعليمات التفصيلية في الملف التمهيدي الخاص بالمشروع.

؟ انضم إلى المحادثة

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

؟ المساهمة

هذا المشروع مفتوح المصدر ومتاح بموجب ترخيص MIT. لا تتردد في تفرعها وتعديلها واستخدامها كنقطة انطلاق لمشاريعك الخاصة. نرحب بالمساهمات والقضايا وطلبات الميزات!

تفقد مستودع GitHub هنا: GitHub Repository

ترميز سعيد! ??‍??‍?

بيان الافراج تم إعادة إنتاج هذه المقالة على: https://dev.to/eugen_taranowski/building-a-real-time-p2p-messaging-app-with-mern-stack-and-firebase-17ea?1 إذا كان هناك أي انتهاك، من فضلك اتصل بـ [email protected]
أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3