CineShare logo

CineShare

مقدمة

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

تتيح المنصة للمستخدمين مشاركة واكتشاف توصيات الأفلام والمسلسلات ضمن مجتمع اجتماعي.

التقنيات

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

Angular icon
Spring Boot icon
MySQL icon
AWS icon
OpenAI icon

الواجهة الأمامية

Angular CLI, HTML, CSS, TypeScript

يستخدم مشروع Angular هذا وحدات Angular الأساسية، وNgRx لإدارة الحالة، والعرض من جانب الخادم عبر Express. كما يعتمد على Bootstrap وTailwind CSS للتنسيق، إلى جانب DaisyUI لمكوّنات واجهة المستخدم.

CineShare main page

الصفحة الرئيسية

الواجهة الخلفية

Spring Boot, Java

تعمل الواجهة الخلفية بواسطة Spring Boot، مستفيدةً من عدة وحدات بداية مثل Data JPA للوصول إلى قاعدة البيانات، وSpring Security للمصادقة، وSpring MVC مع خادم Tomcat مدمج. وتتكامل مع MySQL للاتصال بقاعدة البيانات، وLombok لتقليل الأكواد المتكررة، وJJWT للتعامل مع JWT، وSpringdoc OpenAPI لتوثيق واجهات البرمجة، وActuator للمراقبة.

الأمن السيبراني

ميزات الأمان قيد التطوير حالياً. تستخدم الواجهة الأمامية CryptoJS لتشفير الحمولات عبر تشفير AES، بينما تطبّق الواجهة الخلفية Spring Security للمصادقة المعتمدة على JWT. يقوم JWT بتصفية الطلبات غير المصرّح بها، وتُشفَّر جميع كلمات المرور أثناء النقل وأثناء التخزين في قاعدة البيانات. إضافةً إلى ذلك، تتوفّر شهادة SSL لدعم HTTPS.

Register page showing security implementation

تسجيل المستخدم مع إجراءات الأمان

البنية التحتية السحابية

كان العمل مع AWS تجربة جديدة بالنسبة لي، تجاوزت استضافة المواقع الثابتة البسيطة عبر GitHub Pages. أستخدم الآن Amplify لاستضافة الواجهة الأمامية، وElastic Beanstalk لنشر الواجهة الخلفية، وRDS لإدارة قاعدة البيانات، وRoute 53 لإدارة النطاقات. عرّفني هذا المشروع على الإمكانات الواسعة للحوسبة السحابية، ولا سيما فكرة بناء تطبيقات دون خوادم.

AWS technologies diagram

بنية خدمات AWS

أدوات الذكاء الاصطناعي

كان GitHub Copilot وChatGPT رفيقين لا غنى عنهما طوال هذا المشروع. ساعد Copilot في الاستفسارات المتعلقة بالأكواد والاقتراحات المبنية على السياق، بينما كان ChatGPT مفيداً للأسئلة الأوسع، مثل اختيار الحلول السحابية المناسبة.

GitHub Copilot interface

الخاتمة

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

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

لم يعد CineShare متاحاً.

شكراً لقراءتك،

خوليو ماسياس غونزاليس

تواصل معي