منصوبے کے بارے میں

Meshtastic-Android، Android اور Compose Desktop کے لیے سرکاری Meshtastic کلائنٹ ہے، جو اوپن سورس میش ریڈیوز پر بات چیت کے لیے استعمال ہوتا ہے۔ ڈیوائس کی طرف کا فرم ویئر ایک الگ ریپوزٹری میں ہے، اور پروجیکٹ کی ویب سائٹ meshtastic.org ہے۔ 2.8 لائن کے لیے نمایاں کلیدی صلاحیتوں میں قریبی نوڈز اور چینلز تلاش کرنے کے لیے میش نیٹ ورک ڈسکوری، قریبی میشز میں شامل ہونے کے لیے Mesh Beacon دعوتیں، وے پوائنٹ جیوفینسز جو نوڈز کے نقشے پر بنائے گئے زونز عبور کرنے پر الرٹ دیتے ہیں، ڈیوائس سیکیورٹی کیز کا انکرپٹڈ بیک اپ/ری اسٹور/ڈیلیٹ، ٹیگز پر رابطوں اور چینلز کی NFC شیئرنگ، نوڈ اور میسجنگ UI میں XEdDSA پیکٹ سائننگ انڈیکیٹرز، معاون سینسرز سے ایئر کوالٹی ٹیلی میٹری (PM1.0، PM2.5، PM10، CO2)، اور App Functions / سسٹم-AI انٹیگریشن شامل ہیں تاکہ آن ڈیوائس اسسٹنٹس عام ورک فلوز کو ٹرگر کر سکیں۔ تقسیم بنیادی طور پر GitHub ریلیزز کے ذریعے ہوتی ہے، خودکار اپ ڈیٹس کے لیے Obtainium لنکس کے ساتھ۔ دو فلیورز موجود ہیں: ایک `google` فلیور جو Google Crashlytics اور Google Maps شامل کرتا ہے، اور ایک `fdroid` فلیور جس میں Google ڈیپنڈنسیز نہیں ہیں۔ ایپ F-Droid، IzzyOnDroid، اور Google Play پر بھی شائع ہوتی ہے، Play Store اپ ڈیٹس سب سے آخر میں آتی ہیں۔ ڈیسک ٹاپ انسٹالرز (macOS DMG، Windows MSI/EXE، Linux DEB/RPM/AppImage) GitHub Releases سے بھیجے جاتے ہیں، اور Flathub پر ایک Flatpak دستیاب ہے۔ آرکیٹیکچر ایک مشترکہ Kotlin Multiplatform کور پر بنایا گیا ہے جو Android اور Compose Desktop کو ہدف بناتا ہے۔ بزنس لاجک، ڈیٹا سورسز، اور کمیونیکیشنز ماڈیولز پلیٹ فارم سے آزاد ہیں۔ UI JetBrains Compose Multiplatform کو Material 3 کے ساتھ استعمال کرتا ہے، اسٹیٹ مینجمنٹ ViewModels، Coroutines اور Flow کے ساتھ یک طرفہ ڈیٹا فلو کی پیروی کرتا ہے، ڈیپنڈنسی انجیکشن Koin کو Koin Annotations کے ساتھ استعمال کرتا ہے، اور نیویگیشن JetBrains Navigation 3 کو RESTful ڈیپ لنکنگ کے ساتھ استعمال کرتا ہے۔ ڈیٹا لیئر Room KMP، DataStore، اور Protobuf کو یکجا کرتا ہے، جس میں protobuf ماڈلز ایک اپ اسٹریم Maven آرٹیفیکٹ سے استعمال ہوتے ہیں۔ BLE سپورٹ پلیٹ فارم سے آزاد انٹرفیسز کے پیچھے Kable ملٹی پلیٹ فارم لائبریری استعمال کرتا ہے۔ ریپوزٹری بہت سے دستاویزی ماڈیولز میں منظم ہے، جن میں androidApp اور desktopApp ہوسٹس، ڈومین، ریپوزٹری، TAK سرور، BLE، نیٹ ورک، ڈیٹا، ڈیٹا بیس، ڈیٹا اسٹور، سروس، نیویگیشن، ریسورسز، ماڈل، UI، کامن، DI، ٹیسٹنگ، Konsist آرکیٹیکچر ٹیسٹس، NFC، پریفرنسز، اور بارکوڈ کے کور ماڈیولز، نیز میسجنگ، نقشہ، MapLibre نقشہ سطحیں، نوڈ، سیٹنگز، فرم ویئر، انٹرو، Wi-Fi پروویژننگ، کنکشنز، ڈسکوری، دستاویزات، اور ہوم اسکرین Glance ویجٹ کے فیچر ماڈیولز، اور بیس لائن پروفائل جنریشن شامل ہیں۔ ایک انٹیگریشن فیچر بلٹ ان Local TAK Server ہے، جو سیٹنگز میں فعال کیا جاتا ہے، جو پورٹ 8089 پر صرف لوپ بیک TLS (mTLS) سرور چلاتا ہے تاکہ اسی ڈیوائس پر ATAK جڑ سکے اور ٹریفک کو میش پر روٹ کر سکے۔ دستاویزات میں ایک Jekyll صارف/ڈویلپر سائٹ اور ایک Dokka سے تیار کردہ API ریفرنس شامل ہیں، دونوں main پر پشز پر GitHub Pages پر ڈیپلائے ہوتے ہیں۔ ترجمے Crowdin کے ذریعے منظم کیے جاتے ہیں۔ پروجیکٹ GPL-3.0 لائسنس یافتہ ہے، شراکت اور ریلیز کے عمل کی دستاویزات کے ساتھ، اور نوٹ کرتا ہے کہ ڈیبگ اور ریلیز بلڈز ساتھ ساتھ انسٹال ہوتے ہیں لیکن بیک وقت نہیں چلنے چاہئیں۔ google فلیور کو مقامی طور پر بنانے کے لیے secrets.properties میں Google Maps Android SDK API key درکار ہے؛ اس کے بغیر بلڈ پلیس ہولڈر key کے ساتھ کامیاب ہو جاتی ہے لیکن نقشے کی ٹائلیں لوڈ نہیں ہوں گی۔