نظام متقدم لتحليل القزحية باستخدام Node.js وتقنيات معالجة الصور لتقديم رؤى صحية بناءً على خرائط التشخيص الطبي (Iridology).
هذا التطبيق مخصص للأغراض التعليمية والمعلوماتية فقط. النتائج ليست تشخيصاً طبياً ولا تحل محل استشارة الطبيب المتخصص. علم القزحية (Iridology) غير معترف به علمياً كأداة تشخيصية موثوقة. يُرجى استشارة مقدم الرعاية الصحية المؤهل لأي مخاوف صحية.
- 📸 رفع صور القزحية - دعم السحب والإفلات مع معاينة فورية
- 🗺️ تحليل 20+ منطقة - بناءً على خريطة برنارد جينسن العالمية
- 🎨 تحليل الألوان - كشف الألوان السائدة وتفسيرها
- 🔍 كشف الأنماط - تحديد الخطوط والبقع والحلقات
- 📊 لوحة تحكم تفاعلية - عرض مرئي للنتائج مع مخططات المناطق
- 🔐 مصادقة آمنة - JWT token مع تشفير كلمات المرور
- 📜 سجل التحليلات - حفظ ومراجعة جميع التحليلات السابقة
- 🌙 تصميم داكن متميز - واجهة عصرية مع تأثيرات glassmorphism
- Node.js + Express.js - إطار عمل الخادم
- MongoDB + Mongoose - قاعدة البيانات
- Sharp.js - معالجة وتحليل الصور
- Multer - رفع الملفات
- JWT - المصادقة الآمنة
- bcrypt - تشفير كلمات المرور
- HTML5 + CSS3 + Vanilla JavaScript
- Google Fonts (Inter) - خطوط عصرية
- تصميم متجاوب (Responsive Design)
- تأثيرات Glassmorphism
- دعم اللغة العربية (RTL)
- Node.js (v14 أو أحدث)
- MongoDB (v4.4 أو أحدث)
- npm أو yarn
-
استنساخ المستودع ```bash git clone https://github.com/yourusername/viscan-1uzz8.git cd viscan-1uzz8 ```
-
تثبيت التبعيات ```bash npm install ```
-
إعداد متغيرات البيئة ```bash cp .env.example .env ```
ثم قم بتحرير .env وتعديل القيم:
```env
PORT=3000
MONGODB_URI=mongodb://localhost:27017/viscan
JWT_SECRET=your-super-secret-jwt-key-change-this
JWT_EXPIRE=7d
MAX_FILE_SIZE=5242880
UPLOAD_PATH=./uploads
```
- تشغيل MongoDB ```bash
brew services start mongodb-community
mongod --dbpath /path/to/data/db ```
- تشغيل الخادم ```bash
npm run dev
npm start ```
- فتح المتصفح
افتح المتصفح وانتقل إلى:
http://localhost:3000
```http POST /api/auth/register Content-Type: application/json
{ "username": "ahmad", "email": "[email protected]", "password": "password123" } ```
```http POST /api/auth/login Content-Type: application/json
{ "email": "[email protected]", "password": "password123" } ```
```http GET /api/auth/verify Authorization: Bearer ```
```http POST /api/analysis/upload Authorization: Bearer Content-Type: multipart/form-data
irisImage: ```
```http GET /api/analysis/history?page=1&limit=10 Authorization: Bearer ```
```http GET /api/analysis/:id Authorization: Bearer ```
```http DELETE /api/analysis/:id Authorization: Bearer ```
```http GET /api/analysis/zones/all Authorization: Bearer ```
``` viscan-1uzz8/ ├── config/ # ملفات الإعداد │ ├── database.js # اتصال MongoDB │ └── multer.js # إعداد رفع الملفات ├── public/ # الملفات الثابتة │ ├── css/ │ │ ├── style.css # الأنماط الرئيسية │ │ └── dashboard.css # أنماط لوحة التحكم │ ├── js/ │ │ ├── auth.js # منطق المصادقة │ │ ├── dashboard.js # منطق لوحة التحكم │ │ └── utils.js # وظائف مساعدة │ ├── index.html # الصفحة الرئيسية │ ├── auth.html # صفحة تسجيل الدخول │ └── dashboard.html # لوحة التحكم ├── src/ │ ├── controllers/ # منطق التحكم │ │ ├── authController.js │ │ └── analysisController.js │ ├── models/ # نماذج قاعدة البيانات │ │ ├── User.js │ │ └── Analysis.js │ ├── routes/ # مسارات API │ │ ├── authRoutes.js │ │ └── analysisRoutes.js │ ├── services/ # خدمات المعالجة │ │ ├── irisProcessor.js │ │ └── iridologyMapper.js │ └── data/ │ └── iridologyZones.json ├── uploads/ # الصور المرفوعة ├── .env # متغيرات البيئة ├── .env.example # نموذج متغيرات البيئة ├── .gitignore ├── package.json ├── server.js # نقطة الدخول الرئيسية └── README.md ```
```bash npm test ```
- تشفير كلمات المرور باستخدام bcrypt
- JWT tokens للمصادقة
- التحقق من صحة الملفات المرفوعة
- حماية CORS
- التحقق من حجم ونوع الملفات
المساهمات مرحب بها! يرجى:
- Fork المشروع
- إنشاء فرع للميزة الجديدة
- Commit التغييرات
- Push إلى الفرع
- فتح Pull Request
هذا المشروع مرخص تحت Apache License 2.0 - راجع ملف LICENSE للتفاصيل.
- Bernard Jensen - خرائط علم القزحية
- Sharp.js - مكتبة معالجة الصور الرائعة
- MongoDB - قاعدة البيانات المرنة
لأي استفسارات أو مشاكل، يرجى فتح issue في المستودع.
تم التطوير بـ ❤️ لأغراض تعليمية