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. يجب عليك توفير الملفات في المسار التالي داخل مشروعك الرئيسي:
- قم بإنشاء مجلد:
public/face-api-login/models/ - حمل ملفات الأوزان (Weights) من Weights Files:
tiny_face_detector_model-weights_manifest.jsonface_landmark_68_model-weights_manifest.jsonface_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
其他信息
- 授权协议: MIT
- 更新时间: 2025-12-25