el-dakhly/smart-face-auth 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

el-dakhly/smart-face-auth

最新稳定版本:v1.0.0

Composer 安装命令:

composer require el-dakhly/smart-face-auth

包简介

Smart Face Authentication Package for Laravel

README 文档

README

هذا المشروع عبارة عن Package لـ Laravel تتيح تسجيل الدخول والتحقق من الهوية باستخدام بصمة الوجه (Face Recognition) باستخدام مكتبة face-api.js.

📂 هيكل الحزمة (Package Structure)

face-login-package/
├─ composer.json                 # تعريف الحزمة والاعتمادات
├─ src/
│  ├─ FaceLoginServiceProvider.php # مزود الخدمة (تسجيل الرواتس، الفيو، والميجريشن)
│  ├─ Http/
│  │  └─ Controllers/
│  │     └─ FaceLoginController.php # المنطق الخلفي (المطابقة، الجلسات، الانتهاكات)
│  ├─ Models/
│  │  ├─ FaceDescriptor.php      # مودل تخزين بصمات الوجوه (Vectors)
│  │  └─ FaceViolation.php        # مودل لتسجيل محاولات الدخول الخاطئة أو الانتحال
│  ├─ database/
│  │  └─ migrations/              # جداول قاعدة البيانات
│  ├─ resources/
│  │  └─ views/                  # صفحات تسجيل الدخول والتسجيل (Blade)
│  └─ routes/
│     └─ web.php                 # روابط الحزمة
└─ README.md                     # ملف الشرح (هذا الملف)

🚀 التثبيت والاستخدام (Installation)

1. الإضافة إلى مشروعك

إذا كانت الحزمة مخزنة محلياً، أضف هذا الجزء لملف composer.json في مشروعك الأساسي:

"repositories": [
    {
        "type": "path",
        "url": "../pacakge"
    }
],

ثم قم بتشغيل:

composer require el-dakhly/smart-face-auth:dev-main

2. تشغيل الـ Migrations

قم بإنشاء الجداول المطلوبة في قاعدة البيانات:

php artisan migrate

3. نشر الملفات (اختياري)

إذا كنت ترغب في تعديل الصفحات (Views) لتناسب تصميمك:

php artisan vendor:publish --tag=face-login-views

🛠 المتطلبات الأساسية (Prerequisites)

الحزمة تعتمد على نماذج الذكاء الاصطناعي الخاصة بـ face-api.js. يجب عليك توفير الملفات في المسار التالي داخل مشروعك الرئيسي:

  1. قم بإنشاء مجلد: public/face-api-login/models/
  2. حمل ملفات الأوزان (Weights) من Weights Files:
    • tiny_face_detector_model-weights_manifest.json
    • face_landmark_68_model-weights_manifest.json
    • face_recognition_model-weights_manifest.json
    • بالإضافة إلى ملفات الـ .bin المصاحبة لها.

🛣 الروابط (Routes)

توفر الحزمة الروابط التالية تلقائياً:

الاسم (Route Name) الرابط (URL) الطريقة (Method) الوصف
face.login.form /face-auth/login GET عرض صفحة الدخول بالوجه
face.login.submit /face-auth/login POST معالجة بيانات الوجه للدخول
face.register.form /face-auth/register GET عرض صفحة تسجيل البصمة
face.register.store /face-auth/register POST حفظ بصمات الوجه الجديدة
face.verify.session /face-auth/verify-session POST التحقق المستمر من الجلسة
face.report.violation /face-auth/report-violation POST تسجيل مخالفة (انتحال/أكثر من وجه)

💡 ملاحظات تقنية

  • المطابقة: يتم استخدام مسافة التباعد (Euclidean Distance) بمقدار 0.6. إذا كنت تريد دقة أعلى، قلل الرقم (مثلاً 0.5).
  • التوافق: الحزمة تحاول تلقائياً استدعاء دالة authenticated من الـ LoginController الأساسي في مشروعك إذا كانت موجودة لضمان توافق التحويلات (Redirects) بعد الدخول.
  • الأمان: يتم تسجيل FaceViolation تلقائياً عند اكتشاف وجه مختلف أثناء التحقق من الجلسة، ويتم تسجيل خروج المستخدم فوراً.

تم التطوير بواسطة Eng Ahmed El Dakhly - 01030326810 💻

统计信息

  • 总下载量: 2
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: Blade

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-12-25