Triplit هي قاعدة بيانات مفتوحة المصدر تزامن البيانات بين الخادم والمتصفح في الوقت الفعلي.
يوفر TripLit مكان بيانات مزامنة في الوقت الفعلي يمكنك إسقاطه في تطبيقك كحزمة TypeScript. يتولى Triplit تخزين بياناتك على الخادم ويتم مزامنة استفساراتك بذكاء لعملائك. نحن نسمي هذا النوع من النظام "قاعدة بيانات مكدس كاملة" - يمكنك مشاهدة عرضنا التقديمي للمجتمع الأول المحلي في هذا النموذج الجديد هنا.
يجمع Triplit معًا:
المزامنة في الوقت الحقيقي مع التحديثات الإضافية وحل النزاع على مستوى العقار
؟ التخزين المؤقت المحلي مدعوم من قاعدة بيانات كاملة من جانب العميل
؟ تخزين متين من جانب الخادم مع لوحة معلومات المسؤول
؟ مزودي التخزين القابل للتوصيل مثل SQLite و INSTREDDB و LevelDB والذاكرة وما إلى ذلك
؟ التحديثات المتفائلة لجعل كل تفاعل يشعر بسرعة
؟ الاستعلام العلائقي لنماذج البيانات المعقدة
؟ وضع غير متصل بالإنترنت مع ضمانات إعادة الاتصال التلقائية والاتساق
؟ التراجع وإعادة إعادة المحاولة على التحديثات الفاشلة
مخططات لسلامة البيانات والإكمال التلقائي للبيانات
؟ التفويض الذي يتم فرضه على الخادم لكلا القراءة والكتابة
؟ التعاون/متعدد اللاعبين مدعوم من CRDTs
️ الكمون المنخفض مع الحد الأدنى من حركة الشبكة باستخدام بقع دلتا
واجهة برمجة تطبيقات بسيطة للاستعلام عن البيانات والتحول في كل من الفانيليا جافا سكريبت ورد
✅ مفتوح المصدر بالكامل!
في triplit/packages يمكنك العثور على المشاريع المختلفة التي تبرز Triplit:
ابدأ مشروعًا جديدًا.
npm create triplit-app@latest my-appأو إضافة التبعيات إلى مشروع موجود.
npm install --save-dev @triplit/cli
npm run triplit init حدد مخططًا في my-app/triplit/schema.ts .
import { Schema as S , ClientSchema } from '@triplit/client' ;
export const schema = {
todos : {
schema : S . Schema ( {
id : S . Id ( ) ,
text : S . String ( ) ,
completed : S . Boolean ( { default : false } ) ,
} ) ,
} ,
} satisfies ClientSchema ;ابدأ خادم Sync Development Development.
npm run triplit dev سيؤدي ذلك إلى إخراج بعض المتغيرات البيئية المهمة التي سيحتاجها تطبيقك إلى المزامنة مع الخادم. أضفها إلى ملف .env الخاص بك (مثال vite أدناه).
VITE_TRIPLIT_SERVER_URL=http://localhost:6543
VITE_TRIPLIT_TOKEN=copied-in-from-triplit-devحدد استعلامًا في تطبيقك (مثال رد فعل أدناه).
import { TriplitClient } from '@triplit/client' ;
import { useQuery } from '@triplit/react' ;
import { schema } from '../triplit/schema' ;
const client = new TriplitClient ( {
schema ,
serverUrl : import . meta . env . VITE_TRIPLIT_SERVER_URL ,
token : import . meta . env . VITE_TRIPLIT_TOKEN ,
} ) ;
function App ( ) {
const { results : todos } = useQuery ( client . query ( 'todos' ) ) ;
return (
< div >
{ Array . from ( todos . values ( ) ) . map ( ( todo ) => (
< div key = { todo . id } >
< input
type = "checkbox"
checked = { todo . completed }
onChange = { ( ) =>
client . update ( 'todos' , todo . id , ( todo ) => ( {
todo . completed = ! todo . completed ,
} )
}
/ >
{ todo . text }
</ div >
) ) }
</ div >
);
}ابدأ تطبيقك ، وافتح علامة تبويب متصفح أخرى ، وشاهد مزامنة البيانات في الوقت الفعلي.
اقرأ دليل البدء الكامل هنا. للحصول على برنامج تعليمي أكثر تفصيلًا وتوضيحيًا ، تحقق من هذا الدليل خطوة بخطوة لبناء تطبيق TODO في الوقت الفعلي مع Triplit و Vite و React.
إذا كنت مهتمًا بالوصول المبكر إلى Triplit Cloud (حاليًا في معاينة المطور) ، فقم بالتسجيل هنا للانضمام إلى قائمة الانتظار.
أفضل طريقة للاتصال هي الانضمام إلى خلافنا! نحن هنا للإجابة على الأسئلة ، ومساعدة مطوريهم في البدء في Triplit ومعاينة ميزات جديدة.
يمكنك متابعتنا على Twitter/X لمشاهدة أحدث إعلاناتنا.