منصوبے کے بارے میں
میٹرکس رسٹ SDK لائبریریوں کا ایک مجموعہ ہے جو رسٹ میں میٹرکس کلائنٹس بنانے کو آسان بناتا ہے۔ اس کی ترقی Element کی سرپرستی اور دیکھ بھال میں ہے، جو اس SDK کو اپنی نئی نسل کی موبائل ایپس Element X برائے iOS اور Android میں استعمال کرتا ہے، اور اسے ویب اور ڈیسک ٹاپ کلائنٹس تک بھی لے جانے کا ارادہ رکھتا ہے۔
مقصد: یہ SDK انکرپشن، سنکنگ اور روم اسٹیٹ جیسی نچلی سطح کی تفصیلات کو سنبھالتا ہے، تاکہ ڈویلپرز ایپ لاجک اور UI پر توجہ دے سکیں۔ یہ چھوٹے بوٹس، ڈیسک ٹاپ کلائنٹس اور ان کے درمیان ہر چیز کے لیے موزوں ہے، اور اسے لچکدار اور async-friendly بتایا گیا ہے۔
پروجیکٹ کی ساخت: یہ SDK کئی crates پر مشتمل ہے جو ایک دوسرے پر بنتے ہیں۔ وہ crates جو براہ راست dependencies کے طور پر قابل استعمال متوقع ہیں ان میں شامل ہیں:
- matrix-sdk-ui: ایک اعلیٰ سطحی کلائنٹ لائبریری جو کم سے کم سیٹ اپ کے ساتھ مکمل خصوصیات والے UI کلائنٹس بنانے کے لیے ہے۔ ایک حوالہ کلائنٹ، multiverse، بطور مثال فراہم کیا گیا ہے۔
- matrix-sdk: ایک درمیانی سطح کی کلائنٹ لائبریری جو بوٹس، حسب ضرورت کلائنٹس یا اعلیٰ سطحی abstractions کے لیے موزوں ہے، جس کا مثال استعمال examples ڈائریکٹری میں موجود ہے۔
- matrix-sdk-crypto: ایک خودمختار انکرپشن اسٹیٹ مشین جس میں کوئی نیٹ ورک I/O نہیں، جو end-to-end انکرپشن سپورٹ فراہم کرتی ہے، اور اس کے ساتھ مرحلہ وار crypto ٹیوٹوریل بھی ہے۔
دیگر crates کو عملاً صرف اندرونی استعمال کے لیے بتایا گیا ہے، جو تنظیم اور کمپائلیشن اوقات کے لیے crates کے طور پر ترتیب دیے گئے ہیں، اور ان کا براہ راست استعمال حوصلہ شکن ہے۔
حالت: یہ لائبریری پروڈکشن کے لیے تیار سمجھی جاتی ہے اور متعدد کلائنٹ implementations کو سہارا دیتی ہے، جن میں Element X برائے iOS اور Android، Fractal اور iamb شامل ہیں۔ کلائنٹ ڈویلپرز کو دعوت دی جاتی ہے کہ وہ اس پر تعمیر کریں۔
بائنڈنگز: اعلیٰ سطحی crates کو دیگر ماحول جیسے Swift، Kotlin، JavaScript اور Node.js میں شامل کیا جا سکتا ہے، اور ایک bindings ڈائریکٹری دیگر زبانوں میں انضمام کی دستاویز کرتی ہے۔
لائسنس: Apache-2.0۔
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.