يتميز الموقع الالكتروني CV Builder بهيكلية منظمة تعتمد على Laravel في الجانب الخلفي وVue.js في الجانب الأمامي، مما يوفر تكاملاً سلسًا بين المنطق الخادمي والتفاعل السلس مع المستخدم، مما يجعل إنشاء السير الذاتية عملية سهلة وسريعة.
الجانب الخلفي (Backend) – Laravel
تم بناء الجانب الخلفي باستخدام Laravel وفقًا لمبدأ MVC، مما يسهل تنظيم الكود وصيانته. يتولى هذا الجزء إدارة العمليات الأساسية مثل مصادقة المستخدمين، إدارة البيانات، وإنشاء السير الذاتية. يتم استخدام واجهة برمجية RESTful API لربط الخادم بالواجهة الأمامية بسلاسة. كما يعتمد على Eloquent ORM للتعامل مع قاعدة البيانات بطريقة ديناميكية وسهلة، بينما تضمن عمليات الترحيل (Migrations) إمكانية تحديث بنية قاعدة البيانات دون فقدان البيانات.
يشتمل التطبيق أيضًا على Middleware لإدارة الطلبات ومعالجتها، بالإضافة إلى Service Providers لضبط الاعتمادية وحقن الخدمات بشكل منظم. كما تم دمج نظام الطوابير (Queues) لمعالجة المهام غير المتزامنة مثل إرسال البريد الإلكتروني أو توليد ملفات PDF دون التأثير على الأداء العام.
الجانب الأمامي (Frontend) – Vue.js
تم تصميم الواجهة الأمامية باستخدام Vue.js لضمان تجربة مستخدم ديناميكية وسلسة. يعتمد التطبيق على مكونات قابلة لإعادة الاستخدام (Reusable Components) للحفاظ على تنظيم الكود، مما يسهل الصيانة وإضافة الميزات الجديدة. كما يتم استخدام Vue Router لتسهيل التنقل بين الصفحات دون إعادة تحميلها، وVuex لإدارة الحالة، مما يضمن التحديثات الفورية دون تأخير.
يتمتع التطبيق بميزات تفاعلية مثل السحب والإفلات (Drag & Drop)، ومعاينة السيرة الذاتية في الوقت الفعلي، وتعديل الأقسام بسهولة، مما يمنح المستخدم تحكمًا كاملاً في تصميم سيرته الذاتية. كما يستخدم Vue’s reactivity system لجعل البيانات ديناميكية ومتجاوبة مع إدخالات المستخدم، مما يعزز تجربة الاستخدام.
الأمان والأداء
تمت مراعاة أفضل ممارسات الأمان داخل الكود، مثل حماية البيانات من هجمات SQL Injection و CSRF، إضافة إلى التحقق من صحة المدخلات لحماية النظام من الإدخالات غير الصالحة. كما يعتمد التطبيق على التخزين المؤقت (Caching) لتسريع تحميل البيانات وتقليل الضغط على الخادم.
إنشاء ملفات PDF وتنزيلها
يدعم التطبيق إنشاء السير الذاتية بصيغة PDF باستخدام منطق الخادم لإنشاء مستندات احترافية قابلة للتنزيل، حيث يتم دمج هذه الميزة مع نماذج قابلة للتخصيص، مما يتيح للمستخدمين تصميم سير ذاتية تلائم احتياجاتهم بسهولة.