تم إنشاء هذا المشروع من قبل 4 طلاب يدرسون في معهد بليكينج للتكنولوجيا في برمجة الويب. لقد تم تكليفنا بمهمة إنشاء نظام لشركة سكوتر حيث يمكننا، من بين أمور أخرى، إنشاء تطبيق ويب متوافق مع الهاتف المحمول للعميل، وواجهة ويب إدارية، وبرنامج محاكاة للدراجات البخارية الكهربائية، وبرنامج استخباراتي في الدراجة وRest API الذي يقوم بتوزيع المعلومات واستردادها من النظام بأكمله وتخزين المعلومات في قاعدة بيانات.
تم إنشاء المشروع بواسطة:
تحتاج شركة "Svenska Elsparkcyklar AB" إلى نظام لإدارة تأجير الدراجات البخارية الكهربائية في المدن السويدية. تعمل الشركة في 3 مدن مختلفة وتخطط للتوسع في المزيد من المدن بدعم من نظام بيانات جديد.
يتكون نظام البيانات من الأجزاء التالية:
بالإضافة إلى ذلك، تم تضمين خيار لمحاكاة تشغيل النظام بأكمله حتى تتمكن من اختبار وظيفة النظام والتحقق منها.
.env:
#---------------------------------- General ----------------------------------
# -> Configs
API_TOKEN=["API TOKENS"]
JWT_SECRET="JWT Sercret Code"
# Database Location (MongoDB)
DBURI="mongodb://mongodb_container:27017"
#---------------------------------- Dummy Generator ----------------------------------
# -> Configs
CREATE_USER=100
CREATE_PREPAID=100
#---------------------------------- Scooter ----------------------------------
# -> Configs
GEOAPIFY_KEY="Geoapify API Key"
NUMBER_OF_SCOOTERS=50
UPDATE_FREQUENCY_MILLISECONDS=1000
BATTERY_DEPLETION_RATE=0.0005
SIMULATION_CITY=Karlskrona
SIMULATION_ROUTE_PADDING=10
#"DROP ZONE" of scooters
#KARLSKRONA
SIMULATION_MAX_LAT="56.166217"
SIMULATION_MIN_LAT="56.158594"
SIMULATION_MAX_LON="15.593868"
SIMULATION_MIN_LON="15.583096"
#SIMULATION
SIMULATION_EMAIL="The Simulator Account Email"
SIMULATION_PASSWORD="Password to the Simulator Account"
#-------------- REST API URLS ------------------------------
API_URL=http://URL:8393/v1
#---------------------------------- REST API ----------------------------------
# Localhost URL
GOOGLE_CALLBACK_URL="http://"URL-TO-REST-API":8393/v1/auth/google/callback"
GOOGLE_SUCCESS_URL="http://"URL-TO-WEBB-CLIENT":3000/login/google/success"
GOOGLE_FAILURE_URL="http://"URL-TO-WEBB-CLIENT":3000/login/google/failure"
# -> Configs
REST_API_PORT=8393
GOOGLE_CLIENT_ID="Google Client ID"
GOOGLE_CLIENT_SECRET="Google Client Secret Code"
COOKIE_KEY="Cookie Secret Code"
CREATE_SINGLE_PREPAID=2
API_CLUSTER=false
#---------------------------------- REACT ----------------------------------
#SparkRentals
REACT_APP_API_URL="http://"URL-TO-REST-API":8393/v1"
# -> Configs
REACT_APP_REST_API_KEY="React Admin API KEY"
REACT_APP_MAP_UPDATE_INTERVAL_BOOLEAN=1
REACT_APP_MAP_UPDATE_INTERVAL=1000
PORT=3000
#---------------------------------- REACT NATIVE ----------------------------------
API_KEY="Mobile API KEY"
فورك / تنزيل خريطة SparkRentals
قم بإنشاء ملف .env وأدخل متغيرات البيئة وقم بتغيير المدخلات.
عامل ميناء يؤلف
تطبيق الهاتف المحمول لاستخدام تطبيق الهاتف المحمول، يتعين عليك مسح رمز الاستجابة السريعة ضوئيًا أو إدخال الرابط في الهاتف المحمول (يلزم أن يكون لديك تطبيق المعرض). يمكن العثور على الرابط في المحطة عند تشغيل تطبيق الهاتف المحمول.
لوحة تحكم المسؤول لاستخدام لوحة تحكم المسؤول: http://localhost:3000 وإلا تحقق من المنفذ في ملف إنشاء عامل الإرساء.
محاكي السكوتر لاستخدام محاكي السكوتر، يتعين عليك اتباع الخطوات الموجودة على: Scooter Simulator.
REST API لاستخدام REST API: http://localhost:8393/v1/
يتم التحميل التلقائي لمنشئ البيانات عند تشغيل عامل الإرساء. يمكن تشغيله مرة أخرى اتبع الخطوات الموجودة على: Data Generator.
عميل الويب لاستخدام عميل الويب: http://localhost:3000 وإلا تحقق من المنفذ في ملف إنشاء عامل الإرساء.
تطبيق الجوال
لوحة تحكم المشرف
محاكي السكوتر
واجهة برمجة تطبيقات REST
عميل الويب