这是indexloc提供的服务,不要输入任何密码
Skip to content

alaghbry0/Exadoo_Fronted

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Exaado - Trading Signals & Academy Platform

منصة متكاملة لإشارات التداول والأكاديمية التعليمية

التقنيات: Next.js 15 • React • TypeScript • TailwindCSS • Zustand • React Query


📊 نظرة عامة

Exaado هو تطبيق ويب متقدم يوفر:

  • 📈 إشارات تداول احترافية
  • 🎓 أكاديمية تعليمية شاملة
  • 💰 نظام اشتراكات متكامل
  • 🔔 إشعارات فورية
  • 👤 ملفات مستخدمين مخصصة

🏗️ البنية المعمارية

المشروع يتبع Feature-Based Architecture للحصول على تنظيم أفضل وقابلية توسع:

src/
├── features/          # Features محددة
│   ├── auth/
│   ├── subscriptions/
│   ├── academy/
│   ├── payments/
│   ├── notifications/
│   └── profile/
│
├── shared/            # مكونات مشتركة
│   └── components/
│       ├── layout/
│       ├── common/
│       └── ErrorBoundary.tsx
│
├── core/              # Utilities أساسية
│   ├── api/           # API client
│   └── utils/         # Logger & helpers
│
├── stores/            # State management (Zustand)
├── pages/             # Next.js pages
└── styles/            # Global styles

المزيد: انظر دليل البنية المعمارية


✨ التحسينات المنفذة

✅ مكتمل 100%

التحسين الوصف الدليل
Logger System نظام logging احترافي الدليل
Error Boundary معالجة أخطاء شاملة التوثيق
API Client Client موحد مع retry التوثيق
State Management Store موحد (Zustand) التوثيق
Architecture Feature-based structure الدليل

المزيد: التحسينات المنفذة بالكامل

⚠️ جاهز - لم يُطبق بعد

المكون الحالة الدليل
UI Components جاهز للتطبيق الدليل
PageLayout جاهز للتطبيق التوثيق
Loading States جاهز للتطبيق التوثيق

المزيد: التحسينات الجزئية

📋 مخطط لها

  • Performance Optimization
  • Testing Infrastructure
  • Accessibility (A11y)
  • PWA Support

المزيد: التحسينات المتبقية


🚀 البدء السريع

المتطلبات

  • Node.js 18+
  • npm/yarn/pnpm

التثبيت

# Clone the repository
git clone [repo-url]

# Install dependencies
npm install

# Setup environment variables
cp .env.example .env.local
# قم بتعديل .env.local بالقيم المناسبة

# Run development server
npm run dev

افتح http://localhost:3000 في المتصفح.

البناء للإنتاج

npm run build
npm start

🔔 تهيئة بث الإشعارات (SSE)

يمكن التحكم في تشغيل أو إيقاف خدمة الإشعارات اللحظية عبر متغيرات بيئية عامة:

المتغير القيم الافتراضي الوصف
NEXT_PUBLIC_ENABLE_NOTIFICATIONS true / false true (أو دائمًا في الإنتاج) يسمح بإيقاف تدفق الإشعارات في بيئات التطوير أو الاختبارات دون التأثير على الإنتاج.
NEXT_PUBLIC_NOTIFICATIONS_STREAM_MODE auto / force / disabled auto auto يحترم العلم العام ويحتاج مستخدمًا مرتبطًا، force يجبر التفعيل (مفيد للاختبارات مع خدمة mock)، و disabled يوقف الاتصال تمامًا.

يمكن للهوكات أو الاختبارات حقن خدمة بديلة عبر useNotificationStream({ service, mode: 'force' }) لضمان التحكم الكامل دون لمس منطق التطبيق الأساسي.


📚 التوثيق الكامل

📖 الأدلة التفصيلية

📋 التقارير

🗂️ الأرشيف


💻 أمثلة الاستخدام

استخدام Logger

import logger from '@/core/utils/logger'

logger.info('User logged in', { userId: 123 })
logger.error('Payment failed', error)

استخدام API Client

import api from '@/core/api/client'

const data = await api.get('/endpoint')
const result = await api.post('/endpoint', { data })

استخدام PageLayout

import { PageLayout } from '@/shared/components/layout'

export default function MyPage() {
  return (
    <PageLayout maxWidth="xl">
      <h1>محتوى الصفحة</h1>
    </PageLayout>
  )
}

المزيد: انظر الأدلة التفصيلية في docs/guides/


🛠️ التطوير

هيكل المشروع

  • src/features/ - Features محددة (auth, payments, etc.)
  • src/shared/ - مكونات مشتركة
  • src/core/ - Utilities أساسية
  • src/pages/ - Next.js pages
  • src/stores/ - State management

قواعد الكود

  • ✅ استخدم logger بدلاً من console.log
  • ✅ استخدم imports مطلقة (@/...)
  • ✅ اتبع Feature-based structure
  • ✅ استخدم TypeScript بشكل صحيح
  • ✅ اختبر قبل الـ commit

الأوامر المتاحة

npm run dev          # Development server
npm run build        # Production build
npm run start        # Start production server
npm run lint         # Run ESLint
npm run type-check   # TypeScript check

📈 الإحصائيات

  • Pages: 26 صفحة
  • Components: 50+ مكون
  • Bundle Size: ~315 kB
  • Build Time: ~55s
  • Test Coverage: قيد التطوير

🤝 المساهمة

نرحب بالمساهمات! اتبع الخطوات:

  1. Fork المشروع
  2. إنشاء branch للـ feature (git checkout -b feature/AmazingFeature)
  3. Commit التغييرات (git commit -m 'Add some AmazingFeature')
  4. Push للـ branch (git push origin feature/AmazingFeature)
  5. فتح Pull Request

المزيد: انظر دليل البنية لفهم كيفية إضافة features


📞 التواصل


📄 الترخيص

[حدد الترخيص هنا]


🎯 الخطوات التالية

  1. راجع التحسينات الجزئية للبدء بالتطبيق
  2. اقرأ الأدلة التفصيلية لفهم النظام
  3. راجع التحسينات المتبقية للمساهمة

🎉 المشروع في أفضل حالاته!

تم تطبيق تحسينات شاملة على الكود، البنية، والتوثيق.
جاهز للتطوير المستمر والتوسع.

ملخلص اهم اوامر رفع التحديثات الى المستودع الرئيسي

git status
git add .
git commit -m "your commit message"
git push origin main
`

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •