العودة لقائمة المشاريع

تصميم تطبيق رياضي

85

نقاط الجدية مشروع جاد

من 100 — بناءً على نشاط صاحب المشروع، جودة الوصف، الميزانية، والعروض
الحالة
مُغلق
تاريخ النشر
منذ 8 أشهر
الميزانية
$500.00 - $1000.00
مدة التنفيذ
7 أيام
التصنيف
برمجة، تطوير المواقع والتطبيقات
صاحب المشروع
متعب ا.
عدد العروض
15
مشاريع قيد التنفيذ
0
التواصلات الجارية
2
المهارات المطلوبة
برمجة أندرويد برمجة التطبيقات برمجة iOS جافا كوتلن Ionic Swift تصميم تطبيقات تصميم تطبيقات الهواتف الذكية تصميم UI UX تصميم واجهة المستخدم تصميم تجربة المستخدم برمجة أندرويد برمجة التطبيقات برمجة iOS جافا كوتلن Ionic Swift تصميم تطبيقات تصميم تطبيقات الهواتف الذكية تصميم UI UX تصميم واجهة المستخدم تصميم تجربة المستخدم
الوصف
•تطبيق مثل 365 (تنبيهات ونتائج لحظية للدوري السعودي). •المستخدمين يتوقعون نتيجة كل مباراة. •كل ما كانت الدقة أعلى، يدخل سحبًا على جوائز أقوى (نتيجة صحيحة بالضبط، أو الفائز وفارق الأهداف، أو حتى تحديد الهدافين). المزايا الأساسية (MVP) 1.بث النتائج والتنبيهات: أهداف، بطاقات، تغييرات، نهاية الشوط، نهاية المباراة. 2.التوقعات: •تغلق قبل بداية المباراة بـ X دقائق. •اختيار: (النتيجة) + (قائمة مسجّلي الأهداف اختياريًا). 3.نظام نقاط وطبقات دقة: •T3: توقّع الفائز فقط → 2 نقطة. •T2: توقّع الفائز + فارق الأهداف صح → 5 نقاط. •T1: توقّع النتيجة بالضبط → 10 نقاط. •T1+ : نتيجة بالضبط ومسجّلي الأهداف مطابقين (الأسماء + العدد) → 15 نقطة. 4.سحوبات الجوائز: •لكل مباراة 3–4 سحوبات منفصلة (واحدة لكل طبقة دقة). •كل مستخدم يطابق الطبقة يحصل “تذكرة سحب” تلقائيًا لتلك الطبقة. •سحوبات يومية/أسبوعية/شهرية مجمّعة. 5.لوحات الصدارة: أسبوعي/شهري/موسم. 6.حساب شخصي: إنجازات، نسب دقة، تاريخ التوقعات. ملاحظة: الأرقام أعلاه أمثلة، تقدر تعدل الأوزان والطبقات بسهولة. كيف تحسب الدقة بسرعة •احسب النتيجة المتوقعة مقابل الفعلية: •إذا فائز صحيح فقط → T3. •وإذا كذلك فارق الأهداف صحيح → T2. •إذا النتيجة نفسها → T1. •لو أضاف كذلك مسجّلي الأهداف وجاؤوا مطابقين بالاسم وعدد الأهداف لكل لاعب → T1+. •لو توقع تعادل وهو تعادل لكن الأرقام مختلفة → لا نقاط (لأن الفائز/الفارق غير منطبق). •“مطابقة الهدافين” تعني: نفس المجموعة ونفس تكرار اللاعب (مثلاً لاعب سجل هدفين يُحسب مرتين). الجوائز والسحوبات (بلا مقامرة) •لا وجود لأي رهان/دفع مقابل المشاركة → مجازفة قانونيًا. •كل فئة (T3/T2/T1/T1+) لها سحب مستقل لكل مباراة: •مثال: T1+ جوائز أعلى لكن عدد الفائزين أقل. •السحوبات تُجرى بخوارزمية RNG موثّقة (seed + لوج). •كشف شفافية: صفحة تعرض عدد التذاكر لكل فئة واحتمالات الفوز وكيفية اختيار الفائز. مكافحة الغش والنزاهة •قفل التوقعات قبل انطلاق المباراة (مثلاً 10–15 دقيقة). •منع تعديل التوقع بعد القفل (تسمح بالحذف قبل القفل فقط). •رصد أجهزة/عناوين IP، تحديد حسابات متعددة. •حماية API من السبام، Rate limits، وReCAPTCHA للتسجيل. •في الجوائز المادية العالية: التحقق من الهوية (KYC خفيف) قبل التسليم. البيانات والسكيمة (مختصر) •users(id, phone/email, name, kyc_status, created_at) •teams(id, name, league_id) •players(id, team_id, name) •matches(id, home_id, away_id, kickoff_at, status) •events(id, match_id, minute, type, player_id, team_id, value) ← أهداف، بطاقات… •predictions(id, user_id, match_id, home_pred, away_pred, created_at, locked_at) •prediction_scorers(prediction_id, player_id, goals) •results(match_id, home_goals, away_goals) •result_scorers(match_id, player_id, goals) •grades(prediction_id, tier, points) •draws(id, scope, tier, period_start, period_end, prize) •tickets(draw_id, user_id, prediction_id) •winners(draw_id, user_id, ticket_id) المنطق (Pseudo) 1.بعد صفارة النهاية → خدمة “Grader”: •تحسم النتيجة وتكوّن result_scorers. •تمر على توقعات المباراة، وتحدد tier والـpoints. •تُولد تذاكر لكل فئة. 2.خدمة “Draw Runner” (يومي/أسبوعي/شهري): •تجمع التذاكر حسب الإطار والفئة. •تشغل RNG وتوثّق اللوج وتعلن الفائزين. جلب بيانات المباريات “لايف” •وقّع مع مزوّد بيانات رياضية (Opta، Sportradar، StatsPerform…) للحصول على: •جداول المباريات، النتائج، أحداث المباراة، أسماء الهدافين. •قناة إدخال: •Webhooks من المزوّد → Queue (Kafka/RabbitMQ) → خدمة Ingest تكتب للقاعدة وتحدّث Cache (Redis). •الكلاينت (موبايل/ويب) يسحب من API + يحصل Push عبر WebSocket/FCM/APNs. التقنية المقترحة •Backend: Node.js (NestJS) أو Python (FastAPI)؛ WebSocket للتحديث الحي. •DB: PostgreSQL + Redis (كاش/جلسات) + Queue (RabbitMQ). •Infra: Docker, Kubernetes (لاحقًا), CI/CD. •تطبيقات: Flutter أو React Native للموبايل؛ Next.js للويب. •تنبيهات: FCM (أندرويد) وAPNs (iOS). •تحليلات: ClickHouse أو BigQuery للأحداث والتقارير. تجربة المستخدم •تسجيل سريع (جوال + OTP). •صفحة مباراة: نسبة توقعات المجتمع، “احتمال الفوز” (بسيط)، شريط زمني للأحداث، أزرار التوقع. •تنبيهات ذكية: هدف، بداية/نهاية، تذكير بوضع توقع قبل القفل. •بروفايل: نسبة دقة، أفضل سلسلة توقعات، إنجازات (Badges). الربحية (بدون مقامرة) •رعايات وجوائز مقدمة من شركاء. •إعلانات خفيفة وغير مزعجة. •اشتراك “بريميوم” لا يؤثر على العدالة (مزايا شكلية/تحليلات إضافية/تنبيهات أسرع). أمور قانونية مهمة (في السعودية) •الجوائز بنظام السحب “المجاني” مقبول عادةً، تجنب أي مقابل مالي للدخول في السحب. •شروط وأحكام واضحة + سياسة خصوصية + آلية تسليم الجوائز ومدة استلامها. •استخدام أسماء الأندية والشعارات قد يتطلب تراخيص منفصلة. •بيانات المباريات من مزوّد مرخّص، لا تسحب Scraping من مواقع بدون إذن. خارطة الطريق المرحلة 1 (4–6 أسابيع): النتائج الحية، إنشاء التوقعات، قفل قبل المباراة، احتساب T3/T2/T1 فقط، سحب مبسّط لكل مباراة. المرحلة 2: T1+ (الهدافين)، لوحات الصدارة، إنجازات، تنبيهات Push، صفحات شفافية السحب. المرحلة 3: شركاء رعاة، تقارير وتحليلات، تحسينات مكافحة الغش، توسيع الدوريات
عرض على مستقل