انتقل إلى المحتوى

مخزن بيانات تفاعلي صغير بلا تبعيات ومحرك مزامنة لتطبيقات JavaScript. يوفر اشتراكات دقيقة، بحيث لا يعاد عرض واجهات المستخدم إلا عند تغيّر البيانات ذات الصلة، ما يحافظ على سرعة التطبيقات وسهولة التنبؤ بسلوكها.

يمكن نمذجة البيانات كأزواج بسيطة من المفاتيح والقيم أو كبنى جدولية تضم صفوفًا وخلايا. وتشمل الإمكانات المدمجة مخططات بقيم افتراضية واستدلال للأنواع، وفهارس للبحث السريع، ومقاييس للتجميع، وعلاقات بين الجداول، ونظام نقاط تحقق للتراجع والإعادة، ومحرك استعلامات قريب من SQL (TinyQL) للاختيار والربط والتصفية والتجميع بشكل تفاعلي.

صُمم لسير العمل الذي يعطي الأولوية للعمل المحلي والعمل دون اتصال، ويوفر دعمًا أصليًا لـ CRDT عبر MergeableStore لمزامنة البيانات ودمجها بشكل حتمي بين العملاء والخوادم. يتوفر حفظ البيانات في مساحة تخزين المتصفح وIndexedDB، وكذلك في قواعد بيانات مثل SQLite وPostgreSQL، إضافة إلى التكامل مع Yjs وAutomerge.

تشمل روابط React الاختيارية خطافات ومكونات واجهة مستخدم خفيفة لبناء واجهات تفاعلية بالكامل، إلى جانب أداة Inspector داخل التطبيق لعرض بيانات المخزن وتحريرها مباشرة أثناء التطوير. وعلى الرغم من اتساع إمكاناته، تظل النواة صغيرة (نحو 5.3kB–11.7kB مضغوطة باستخدام gzip)، وموثقة بالكامل، ومختبرة بدقة.

الميزات

  • مخزن بيانات تفاعلي في الذاكرة
  • نماذج بيانات للمفاتيح والقيم والبيانات الجدولية
  • مستمعون واشتراكات دقيقة
  • محرك استعلامات TinyQL (اختيار/ربط/تصفية/تجميع)
  • فهارس للبحث السريع
  • مقاييس وتجميعات
  • علاقات الجداول
  • مخططات بقيم افتراضية واستدلال للأنواع
  • نقاط تحقق مع التراجع والإعادة
  • MergeableStore أصلي لـ CRDT
  • المزامنة عبر WebSockets وBroadcastChannel ووسائل نقل مخصصة
  • حفظ البيانات في مساحة تخزين المتصفح وIndexedDB
  • حفظ البيانات في قواعد SQLite وPostgreSQL (ومتغيرات مثل Bun/Expo SQLite)
  • تكامل مع Yjs وAutomerge وCR-SQLite وPGlite وElectricSQL وTurso وPartyKit وCloudflare Durable Objects
  • خطافات React ومكونات جاهزة اختيارية (ui-react, ui-react-dom)
  • أداة Inspector لبيانات التطبيق أثناء التطوير
  • تصميم يعطي الأولوية للعمل المحلي ويدعم العمل دون اتصال
  • حزمة صغيرة بلا أي تبعيات
  • تغطية اختبارات بنسبة 100% ووثائق شاملة

عناصر ذات صلة

Legend State

تسهّل هذه المكتبة القوية إدارة الحالة في تطبيقاتك، وتجعل التعامل مع البيانات المعقدة أمرًا يسيرًا.

MobX

يتيح حل إدارة الحالة هذا دمج البيانات الديناميكية في تطبيقاتك بسلاسة، والتكيف مع التغييرات بسهولة.

Redux Toolkit

مجموعة أدوات متكاملة صُممت لتبسيط عملية تطوير Redux وتحسينها، بما يضمن سهولة توقع سلوك التطبيقات وصيانتها.

valtio

تُبسّط هذه المكتبة إدارة الحالة القائمة على الوكلاء للتطبيقات الحديثة، وتحسن تجربة التطوير من خلال عرض فعّال ومعالجة سهلة للحالة.

TanStack DB

مخزن تفاعلي على جهة العميل، مع استعلامات مباشرة وتعديلات تفاؤلية لتوفير واجهات متسقة خلال أجزاء من المللي ثانية ومزامنة فورية.

Jotai

حل قوي وخفيف الوزن لإدارة الحالة، يعتمد نهجًا ذريًا لإدارة الحالة في تطبيقات React.

MobX-State-Tree

مكتبة متكاملة الميزات تُبسّط إدارة الحالة من خلال توفير نهج منظم للتعامل مع الحالة القابلة للتغيير.

TanStack Router

مكتبة توجيه حديثة وقابلة للتوسع، مصممة خصيصًا لـ React، مع التركيز على سلامة الأنواع وإدارة البيانات بكفاءة.