هذا المستودع يحتوي على الكود المصدري لتطبيق AirChat، وهو تطبيق ويب للدردشة الصوتية والنصية في الوقت الفعلي.
تم بناء المشروع باستخدام التقنيات التالية:
- الواجهة الأمامية (Frontend): HTML, CSS, Vanilla JavaScript
- الخادم (Backend): Node.js مع Express
- الاتصال في الوقت الفعلي (Real-time Communication): Socket.io
- قاعدة البيانات والمصادقة (Database & Auth): Google Firebase (Firestore & Authentication)
هناك طريقتان لتشغيل هذا المشروع:
هذه هي الطريقة الموصى بها لتجربة جميع ميزات التطبيق، بما في ذلك الدردشة الصوتية والنصية.
المتطلبات:
- Node.js (إصدار 14 أو أحدث)
- مدير الحزم
npm(يأتي مع Node.js)
خطوات التشغيل:
-
تثبيت الاعتماديات: افتح الطرفية (Terminal) في مجلد المشروع وقم بتشغيل الأمر التالي:
npm install
-
تشغيل الخادم: بعد انتهاء التثبيت، قم بتشغيل الخادم بالأمر التالي:
node server.js
-
فتح التطبيق: افتح متصفح الويب وانتقل إلى العنوان
http://localhost:3000. الآن يجب أن يعمل التطبيق بكامل وظائفه.
هذا المستودع مهيأ للعرض المباشر ك موقع ثابت (Static Site) عبر خدمة GitHub Pages.
- الرابط المباشر: يمكنك الوصول إلى النسخة المعروضة من خلال رابط GitHub Pages الخاص بهذا المستودع.
- محدودية: في هذه النسخة، تم تعطيل جميع وظائف الدردشة والتفاعل في الوقت الفعلي لأنها تتطلب خادمًا لتعمل. سترى رسالة توضيحية داخل التطبيق تفيد بذلك.
هذه النسخة مفيدة لمعاينة التصميم والواجهات الأمامية فقط.
/
├── index.html # صفحة اللوبي الرئيسية
├── room.html # صفحة غرفة الدردشة
├── auth.html # صفحة المصادقة (تسجيل الدخول/التسجيل)
├── style.css # ملف الأنماط الرئيسي
├── server.js # ملف الخادم (Node.js)
├── package.json # تعريف المشروع والاعتماديات
├── js/
│ ├── main.js # المنطق الرئيسي (Firebase, Socket)
│ ├── room_logic.js # منطق غرفة الدردشة
│ └── ... # ملفات JS أخرى
└── assets/
├── images/ # الصور
└── sounds/ # الملفات الصوتية
شكراً لاستخدامك AirChat!