عن المشروع
RxDB (قاعدة البيانات التفاعلية) هي قاعدة بيانات NoSQL محلية أولاً لتطبيقات JavaScript. هي تفاعلية: بالإضافة إلى استعلام الحالة الحالية، يمكن للتطبيقات الاشتراك في تغييرات نتيجة استعلام أو حتى حقل واحد من مستند، وهو ما يقدمه المشروع كميزة مفيدة للتطبيقات الفورية المدفوعة بواجهة المستخدم.
تم بناء قاعدة البيانات حول واجهة تخزين، بحيث يمكن تبديل محرك التخزين الأساسي. تشمل خيارات التخزين الموثقة LocalStorage، IndexedDB، OPFS، LokiJS، Dexie.js، الذاكرة العشوائية، SQLite، التشغيل داخل WebWorker، FoundationDB و DenoKV. وبالتالي يمكن إعادة استخدام نفس كود قاعدة البيانات عبر بيئات مختلفة. تشمل بيئات تشغيل JavaScript المدعومة المذكورة في ملف README المتصفحات، Node.js، React Native، Capacitor، NativeScript، Flutter و Electron.
للتكرار، توفر RxDB محرك مزامنة (Sync Engine) يهدف إلى العمل مع البنية التحتية الحالية بدلاً من قاعدة بيانات سحابية أو خلفية محددة. يُوصف البروتوكول بأنه قابل للتنفيذ عبر ثلاث نقاط نهاية HTTP، وتُدرج إضافات جاهزة للإنتاج لـ GraphQL، CouchDB، WebSocket، WebRTC (P2P)، Supabase، Firestore، NATS و Google Drive.
تشمل مجموعة الميزات السجلات، المرفقات، طبقة ORM، معالجة النزاعات، Middleware، الإشارات، التكامل مع TanStack DB، الحالة التفاعلية، النسخ الاحتياطي، التكرار، مكوّن الخادم، التخزينات، المستندات المحلية، التحقق من صحة المخطط، ضغط المفاتيح، ترحيل المخطط، التشفير، دعم CRDT وتعبئة المستندات المرجعية. يتم التثبيت عبر npm (rxdb و rxjs). يُظهر ملف README مثالًا سريعًا ينشئ قاعدة بيانات مع تخزين، يضيف مجموعة بمخطط JSON، يُدرج مستندًا، يُنفّذ استعلامًا باستخدام exec()، ويراقب استعلامًا عبر Observable.
توثيق المشروع، الدروس ومشاريع الأمثلة مستضافة على rxdb.info وفي دليل الأمثلة بالمستودع. يذكر المشروع أيضًا إضافات متميزة متاحة للشراء ودعم المجتمع عبر Discord و Twitter و LinkedIn. وفقًا لملف README، كان الإصدار الأول لـ RxDB في عام 2018.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.