عن المشروع

Altara هي مكتبة مكونات React مصممة لبناء لوحات معلومات القياس عن بُعد في الوقت الفعلي في تطبيقات الروبوتات والفضاء والمركبات ذاتية القيادة وإنترنت الأشياء الصناعي. وهي توفر مجموعة من الأدوات المرسومة على canvas، ومخططات السلاسل الزمنية، والخرائط الحية، وشاشات الطيران التي يمكن تضمينها مباشرة في أي تطبيق React. تنقسم المكتبة إلى عدة حزم: - **@altara/core**: الحزمة الأساسية وتضم مكونات مثل TimeSeries وGauge وAttitude وSignalPanel وLiveMap وEventLog وConnectionBar وMultiAxisPlot وDashboardLayout. كما تتضمن محولات مصادر البيانات (mock وMQTT) وخط أنابيب قائم على worker لتقليل البيانات خارج الخيط الرئيسي. - **@altara/aerospace**: أدوات الطيران وتشمل PrimaryFlightDisplay وHorizontalSituationIndicator وAltimeter وVerticalSpeedIndicator وAirspeedIndicator وEngineInstrumentCluster وRadioAltimeter وTerrainAwareness وTCASDisplay وAutopilotModeAnnunciator وFuelGauge. - **@altara/av**: مكونات واجهة المركبات ذاتية القيادة مثل LiDARPointCloud (Three.js) وOccupancyGrid وObjectDetectionOverlay وPathPlannerOverlay وVelocityVectorDisplay وPerceptionStateMachine وSensorHealthMatrix وCameraFeed وControlTrace وRadarSweep وSLAMMap. - **@altara/industrial**: مكونات SCADA/HMI وتشمل WaterfallSpectrogram (FFT) وOEEDashboard وAlarmAnnunciatorPanel وTrendRecorder وPIDTuningPanel وPIDNode وProcessFlowDiagram وMotorDashboard وPredictiveMaintenanceGauge. - **@altara/ros**: محول rosbridge مع مصانع مُعرَّفة الأنواع لأنواع رسائل sensor_msgs الشائعة. - **@altara/mqtt**: محول MQTT-over-WebSocket. تشمل الميزات الرئيسية: - **أداء عالٍ**: عرض على canvas باستخدام requestAnimationFrame وRingBuffer لتحديثات سلسة بمعدل 60+ إطارًا في الثانية. ينقل خط أنابيب worker استيعاب البيانات وتقليلها خارج الخيط الرئيسي لتدفقات البيانات عالية الإنتاجية. - **وضع المحاكاة**: يدعم كل مكون خاصية `mockMode` التي تولّد بيانات اصطناعية واقعية، مما يسهّل النماذج الأولية قبل توصيل مصادر البيانات الحقيقية. - **متوافق مع SSR**: تُشحن جميع الحزم مع توجيه `"use client"`، مما يتيح الاستيراد المباشر في مكونات خادم Next.js App Router دون أغلفة عميل يدوية. تُستورد التبعيات النظيرة الاختيارية (Leaflet وThree.js وMQTT) ديناميكيًا في وقت التشغيل. - **محولات البيانات**: الاتصال بـ ROS2 عبر rosbridge، أو وسطاء MQTT، أو استخدام مصادر البيانات المدمجة القائمة على mock وworker. - **التنسيق البصري**: يدعم `AltaraProvider` التنسيق البصري (مثل السمة الداكنة). يتضمن README مقارنة مع Grafana وFoxglove وRecharts، ويضع Altara كمكتبة تُضمَّن أصليًا في تطبيقات React، مع التركيز على أدوات الفضاء والصناعة. كما يوفر نتائج قياس أداء العرض وكفاءة خط أنابيب worker. Altara في مرحلة ما قبل 1.0، ولم تُعتبر واجهة API العامة مستقرة بعد. تتضمن الوثائق Storybook مع عروض حية، ولوحة معلومات تجريبية متعددة التبويبات، وأدلة، وكتب وصفات، ومقارنات. المستودع منظم كـ monorepo يضم الحزم والتطبيقات (Storybook والعرض التجريبي) وإعداد Docker لـ ROS2 ونصوصًا لقياس الأداء وتسجيل GIF.