تخطي إلى المحتوى
العودة إلى الأعمال

مشروع واجهة هاتف للطبيب والمريض

نموذج واجهة هاتف للرعاية الصحية مع قائمة أطباء وتفاصيل وملف شخصي وشاشات مصادقة وتجربة Expo/React Native web.

عارض صور المشروع

واجهة هاتف للطبيب والمريض

صورة 1 من 5

فكرة المشروع

تطبيق موبايل (Expo) للتعرف على الأطباء والبحث عنهم — تسجيل حساب كمريض أو طبيب، عرض دليل أطباء بالتخصص والعنوان وساعات العمل، وملف شخصي قابل للتعديل. التطبيق لا يشمل حجز مواعيد في نسخته الحالية.

ما الذي تعرضه الواجهة

شاشة ترحيب فوق صورة طبيب، تسجيل دخول، الشاشة الرئيسية بعد المصادقة، دليل الأطباء، وتفاصيل طبيب واحد مع لوحة خريطة أوفلاين توضيحية بدل الخريطة الحقيقية.

دوري وقراراتي

لما اكتشفت أسرار بيئة حقيقية متتبَّعة في تاريخ الريبو، حاولت إعادة كتابة التاريخ بنفس أسلوب المشروع السابق، لكن اتفاجأت بفشل مختلف: نظام ملفات macOS الافتراضي بيتجاهل حالة الأحرف، وفيه إعادة تسمية قديمة في التاريخ بين home.js وHome.js بنفس الاسم بحروف مختلفة — الأمر ده كان بيسبب تصادم. الحل كان إنشاء قرص APFS مؤقت بحساسية حالة أحرف كاملة، وأعدت العملية عليه بنجاح. أكبر قرار تصميمي هنا كان قرار “التعطيل بدل الحذف” لميزة الخرائط: بدل ما أشيل تكامل Google Maps تمامًا عشان يشتغل أوفلاين، عملت وضع تجريبي بيستبدل الخريطة بلوحة توضيحية لما يكون مفيش مفتاح API، مع الحفاظ الكامل على سلوك الخرائط الحقيقي لو التطبيق اتنشر بمفتاح حقيقي.

الجوانب التقنية

Express + Sequelize + PostgreSQL، Expo 54 (React Native + React Native Web)، علاقة واحد-لواحد بين المستخدم والطبيب، مصادقة JWT بـbcrypt أصلية. صورة Docker واحدة بتحزم عميل الويب المُصدَّر من Expo، الخادم، وPostgreSQL محلي معًا.

قيمة المشروع داخل المعرض

بيوضح التعامل مع مشكلة نظام ملفات نادرة ومحيّرة (تصادم حالة الأحرف) بحل عملي بدل التوقف، وتصميم “تدهور رشيق” (graceful degradation) لميزة خارجية بدل حذفها بالكامل.

عرض أعمال أكثر
عرض خدمات أكثر